search for: busy_slot

Displaying 14 results from an estimated 14 matches for "busy_slot".

2014 Dec 18
2
[RFC PATCH 2/3] dvfs: add support for GK20A
...; + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER > + * DEALINGS IN THE SOFTWARE. > + */ > + > +#include <subdev/clock.h> > +#include <subdev/dvfs.h> > +#include <subdev/volt.h> > + > +#include "priv.h" > + > +#define BUSY_SLOT 0 > +#define CLK_SLOT 7 > + > +struct gk20a_dvfs_priv { > + struct nouveau_dvfs base; > +}; > + > +static int > +gk20a_dvfs_target(struct nouveau_dvfs *dvfs, int *state) > +{ > + struct nouveau_clock *clk = nouveau_clock(dvfs); > + > +...
2014 Dec 18
3
[RFC PATCH 2/3] dvfs: add support for GK20A
...t;> + * DEALINGS IN THE SOFTWARE. >>> + */ >>> + >>> +#include <subdev/clock.h> >>> +#include <subdev/dvfs.h> >>> +#include <subdev/volt.h> >>> + >>> +#include "priv.h" >>> + >>> +#define BUSY_SLOT 0 >>> +#define CLK_SLOT 7 >>> + >>> +struct gk20a_dvfs_priv { >>> + struct nouveau_dvfs base; >>> +}; >>> + >>> +static int >>> +gk20a_dvfs_target(struct nouveau_dvfs *dvfs, int *state) >>> +{ >>...
2014 Dec 18
4
[RFC PATCH 0/3] introduce DVFS for GK20A
Hi, This is a try to have some simple DVFS (Dynamic Voltage and Frequency Scaling) support for GK20A. Instead of relying on other existing frequency scaling framework, we create a simple subdev in Nouveau for the same purpose. That's because we don't want to make the DVFS implementation for GK20A far more than enough in the beginning and hinder the implementation for dGPU in the future.
2014 Dec 18
0
[RFC PATCH 2/3] dvfs: add support for GK20A
...N AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +#include <subdev/clock.h> +#include <subdev/dvfs.h> +#include <subdev/volt.h> + +#include "priv.h" + +#define BUSY_SLOT 0 +#define CLK_SLOT 7 + +struct gk20a_dvfs_priv { + struct nouveau_dvfs base; +}; + +static int +gk20a_dvfs_target(struct nouveau_dvfs *dvfs, int *state) +{ + struct nouveau_clock *clk = nouveau_clock(dvfs); + + return nouveau_clock_astate(clk, *state, 0, false); +} + +static int +gk20a_dvfs_get_cu...
2015 Apr 13
3
[PATCH v4] pmu/gk20a: PMU boot support
...UNIT_NULL (0x20) +#define PMU_UNIT_END (0x23) +#define PMU_UNIT_TEST_START (0xFE) +#define PMU_UNIT_END_SIM (0xFF) +#define PMU_UNIT_TEST_END (0xFF) + +#define PMU_UNIT_ID_IS_VALID(id) \ + (((id) < PMU_UNIT_END) || ((id) >= PMU_UNIT_TEST_START)) +#define PMU_DMEM_ALIGNMENT (4) + #define BUSY_SLOT 0 #define CLK_SLOT 7 +#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" + +/*Choices for DMA to use*/ +enum { + GK20A_PMU_DMAIDX_UCODE = 0, + GK20A_PMU_DMAIDX_VIRT = 1, + GK20A_PMU_DMAIDX_PHYS_VID = 2, + GK20A_PMU_DMAIDX_PHYS_SYS_COH = 3, + GK20A_PMU_DMAIDX_PHYS_SYS_NCOH = 4, + GK20A_PMU_...
2014 Dec 18
0
[RFC PATCH 2/3] dvfs: add support for GK20A
...THE SOFTWARE OR THE USE OR OTHER >> + * DEALINGS IN THE SOFTWARE. >> + */ >> + >> +#include <subdev/clock.h> >> +#include <subdev/dvfs.h> >> +#include <subdev/volt.h> >> + >> +#include "priv.h" >> + >> +#define BUSY_SLOT 0 >> +#define CLK_SLOT 7 >> + >> +struct gk20a_dvfs_priv { >> + struct nouveau_dvfs base; >> +}; >> + >> +static int >> +gk20a_dvfs_target(struct nouveau_dvfs *dvfs, int *state) >> +{ >> + struct nouveau_clock *clk =...
2014 Dec 18
0
[RFC PATCH 2/3] dvfs: add support for GK20A
...>>>> + */ >>>> + >>>> +#include <subdev/clock.h> >>>> +#include <subdev/dvfs.h> >>>> +#include <subdev/volt.h> >>>> + >>>> +#include "priv.h" >>>> + >>>> +#define BUSY_SLOT 0 >>>> +#define CLK_SLOT 7 >>>> + >>>> +struct gk20a_dvfs_priv { >>>> + struct nouveau_dvfs base; >>>> +}; >>>> + >>>> +static int >>>> +gk20a_dvfs_target(struct nouveau_dvfs *dvfs, int...
2014 Dec 22
7
[PATCH V2 1/4] clk: allow non-blocking for nouveau_clock_astate()
There might be some callers of nouveau_clock_astate(), and they are from inetrrupt context. So we must ensure that this function can be atomic in that condition. This patch adds one parameter which is subsequently passed to nouveau_pstate_calc(). Therefore we can choose whether we want to wait for the pstate work's completion or not. Signed-off-by: Vince Hsu <vinceh at nvidia.com> ---
2015 Apr 08
3
[PATCH V2] pmu/gk20a: PMU boot support.
...= 0, +}; + +struct pmu_rc_msg_unhandled_cmd { + u8 msg_type; + u8 unit_id; +}; + +struct pmu_rc_msg { + u8 msg_type; + struct pmu_rc_msg_unhandled_cmd unhandled_cmd; +}; + +struct pmu_msg { + struct pmu_hdr hdr; + union { + struct pmu_init_msg init; + struct pmu_rc_msg rc; + } msg; +}; + #define BUSY_SLOT 0 #define CLK_SLOT 7 +#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" struct gk20a_pmu_dvfs_data { int p_load_target; @@ -39,8 +206,22 @@ struct gk20a_pmu_priv { struct nvkm_pmu base; struct nvkm_alarm alarm; struct gk20a_pmu_dvfs_data *data; + struct pmu_ucode_desc *desc; + st...
2016 Dec 13
15
[PATCH v2 0/15] Falcon library
This was the first step of the secure boot refactoring - as Ben asked for some fixes, I now submit it as its own series to make it easier to review (and also because rebasing secure boot on top of this takes time and I don't want to do it until this is validated!). This series attempts to factorize the duplicate falcon-related code into a single library, using the existing nvkm_falcon
2015 Apr 30
2
[PATCH v4] pmu/gk20a: PMU boot support
...(0xFF) >> +#define PMU_UNIT_TEST_END (0xFF) >> + >> +#define PMU_UNIT_ID_IS_VALID(id) \ >> + (((id) < PMU_UNIT_END) || ((id) >= PMU_UNIT_TEST_START)) >> +#define PMU_DMEM_ALIGNMENT (4) >> + >> #define BUSY_SLOT 0 >> #define CLK_SLOT 7 >> +#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" >> + >> +/*Choices for DMA to use*/ >> +enum { >> + GK20A_PMU_DMAIDX_UCODE = 0, >> + GK20A_PMU_DMAIDX_VIRT = 1, >> +...
2015 Mar 11
0
[PATCH] pmu/gk20a: PMU boot support.
.../clk.h> > +#include <linux/module.h> > +#include <linux/debugfs.h> > +#include <linux/dma-mapping.h> > +#include <linux/uaccess.h> > #include <subdev/clk.h> > #include <subdev/timer.h> > #include <subdev/volt.h> > > #define BUSY_SLOT 0 > #define CLK_SLOT 7 > +#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" > + > +static int falc_trace_show(struct seq_file *s, void *data); > +static int falc_trace_open(struct inode *inode, struct file *file) > +{ > + return single_open(file, falc_...
2015 Mar 11
3
[PATCH] pmu/gk20a: PMU boot support.
...lt;linux/firmware.h> +#include <linux/clk.h> +#include <linux/module.h> +#include <linux/debugfs.h> +#include <linux/dma-mapping.h> +#include <linux/uaccess.h> #include <subdev/clk.h> #include <subdev/timer.h> #include <subdev/volt.h> #define BUSY_SLOT 0 #define CLK_SLOT 7 +#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" + +static int falc_trace_show(struct seq_file *s, void *data); +static int falc_trace_open(struct inode *inode, struct file *file) +{ + return single_open(file, falc_trace_show, inode->i_private); +} +static const st...
2015 Mar 12
2
[PATCH] pmu/gk20a: PMU boot support.
.../clk.h> > +#include <linux/module.h> > +#include <linux/debugfs.h> > +#include <linux/dma-mapping.h> > +#include <linux/uaccess.h> > #include <subdev/clk.h> > #include <subdev/timer.h> > #include <subdev/volt.h> > > #define BUSY_SLOT 0 > #define CLK_SLOT 7 > +#define GK20A_PMU_UCODE_IMAGE "gpmu_ucode.bin" > + > +static int falc_trace_show(struct seq_file *s, void *data); > +static int falc_trace_open(struct inode *inode, struct file *file) > +{ > + return single_open(file, falc_...