Home
last modified time | relevance | path

Searched refs:gsp (Results 1 – 25 of 50) sorted by relevance

12

/linux/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/
H A Dgsp.c51 struct nvkm_gsp *gsp = container_of(work, typeof(*gsp), msgq.work); in r535_gsp_msgq_work() local
53 mutex_lock(&gsp->cmdq.mutex); in r535_gsp_msgq_work()
54 if (*gsp->msgq.rptr != *gsp->msgq.wptr) in r535_gsp_msgq_work()
55 r535_gsp_msg_recv(gsp, 0, 0); in r535_gsp_msgq_work()
56 mutex_unlock(&gsp->cmdq.mutex); in r535_gsp_msgq_work()
62 struct nvkm_gsp *gsp = container_of(inth, typeof(*gsp), subdev.inth); in r535_gsp_intr() local
63 struct nvkm_subdev *subdev = &gsp->subdev; in r535_gsp_intr()
64 u32 intr = nvkm_falcon_rd32(&gsp->falcon, 0x0008); in r535_gsp_intr()
65 u32 inte = nvkm_falcon_rd32(&gsp->falcon, gsp->falcon.func->addr2 + in r535_gsp_intr()
66 gsp->falcon.func->riscv_irqmask); in r535_gsp_intr()
[all …]
H A Drpc.c142 r535_gsp_msgq_wait(struct nvkm_gsp *gsp, u32 gsp_rpc_len, int *ptime) in r535_gsp_msgq_wait() argument
144 u32 size, rptr = *gsp->msgq.rptr; in r535_gsp_msgq_wait()
149 if (WARN_ON(!size || size >= gsp->msgq.cnt)) in r535_gsp_msgq_wait()
153 u32 wptr = *gsp->msgq.wptr; in r535_gsp_msgq_wait()
155 used = wptr + gsp->msgq.cnt - rptr; in r535_gsp_msgq_wait()
156 if (used >= gsp->msgq.cnt) in r535_gsp_msgq_wait()
157 used -= gsp->msgq.cnt; in r535_gsp_msgq_wait()
171 r535_gsp_msgq_get_entry(struct nvkm_gsp *gsp) in r535_gsp_msgq_get_entry() argument
173 u32 rptr = *gsp->msgq.rptr; in r535_gsp_msgq_get_entry()
176 return (void *)((u8 *)gsp->shm.msgq.ptr + GSP_PAGE_SIZE + in r535_gsp_msgq_get_entry()
[all …]
H A Dfifo.c44 struct nvkm_gsp *gsp = chan->rm.object.client->gsp; in r535_chan_doorbell_handle() local
46 return gsp->rm->gpu->fifo.chan.doorbell_handle(chan); in r535_chan_doorbell_handle()
80 struct nvkm_gsp *gsp = device->object.client->gsp; in r535_chan_alloc() local
81 struct nvkm_fifo *fifo = gsp->subdev.device->fifo; in r535_chan_alloc()
159 const struct nvkm_rm_api *rmapi = device->gsp->rm->api; in r535_chan_ramfc_write()
245 ret = nvkm_gsp_intr_nonstall(subdev->device->gsp, subdev->type, subdev->inst); in r535_engn_nonstall()
364 struct nvkm_gsp *gsp = priv; in r535_fifo_rc_triggered() local
369 nvkm_error(&gsp->subdev, "rc: engn:%08x chid:%d type:%d scope:%d part:%d\n", in r535_fifo_rc_triggered()
373 r535_fifo_rc_chid(gsp->subdev.device->fifo, msg->chid); in r535_fifo_rc_triggered()
430 struct nvkm_gsp *gsp = fifo->engine.subdev.device->gsp; in r535_fifo_ectx_size() local
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/
H A Dtu102.c34 tu102_gsp_fwsec_sb_ctor(struct nvkm_gsp *gsp) in tu102_gsp_fwsec_sb_ctor() argument
36 return nvkm_gsp_fwsec_sb_init(gsp); in tu102_gsp_fwsec_sb_ctor()
40 tu102_gsp_fwsec_sb_dtor(struct nvkm_gsp *gsp) in tu102_gsp_fwsec_sb_dtor() argument
42 nvkm_falcon_fw_dtor(&gsp->fws.falcon.sb); in tu102_gsp_fwsec_sb_dtor()
46 tu102_gsp_booter_unload(struct nvkm_gsp *gsp, u32 mbox0, u32 mbox1) in tu102_gsp_booter_unload() argument
48 struct nvkm_subdev *subdev = &gsp->subdev; in tu102_gsp_booter_unload()
59 ret = nvkm_falcon_fw_boot(&gsp->booter.unload, &gsp->subdev, true, &mbox0, &mbox1, 0, 0); in tu102_gsp_booter_unload()
71 tu102_gsp_booter_load(struct nvkm_gsp *gsp, u32 mbox0, u32 mbox1) in tu102_gsp_booter_load() argument
73 return nvkm_falcon_fw_boot(&gsp->booter.load, &gsp->subdev, true, &mbox0, &mbox1, 0, 0); in tu102_gsp_booter_load()
77 tu102_gsp_booter_ctor(struct nvkm_gsp *gsp, const char *name, const struct firmware *blob, in tu102_gsp_booter_ctor() argument
[all …]
H A Dfwsec.c89 nvkm_gsp_fwsec_patch(struct nvkm_gsp *gsp, struct nvkm_falcon_fw *fw, u32 if_offset, u32 init_cmd) in nvkm_gsp_fwsec_patch() argument
120 frtscmd->frts_region.addr = gsp->fb.wpr2.frts.addr >> 12; in nvkm_gsp_fwsec_patch()
121 frtscmd->frts_region.size = gsp->fb.wpr2.frts.size >> 12; in nvkm_gsp_fwsec_patch()
172 nvkm_gsp_fwsec_v2(struct nvkm_gsp *gsp, const char *name, in nvkm_gsp_fwsec_v2() argument
176 struct nvkm_subdev *subdev = &gsp->subdev; in nvkm_gsp_fwsec_v2()
183 ret = nvkm_falcon_fw_ctor(gsp->func->fwsec, name, subdev->device, true, in nvkm_gsp_fwsec_v2()
185 &gsp->falcon, fw); in nvkm_gsp_fwsec_v2()
219 return nvkm_gsp_fwsec_patch(gsp, fw, desc->InterfaceOffset, init_cmd); in nvkm_gsp_fwsec_v2()
223 nvkm_gsp_fwsec_v3(struct nvkm_gsp *gsp, const char *name, in nvkm_gsp_fwsec_v3() argument
227 struct nvkm_device *device = gsp->subdev.device; in nvkm_gsp_fwsec_v3()
[all …]
H A Dpriv.h11 int nvkm_gsp_fwsec_sb_init(struct nvkm_gsp *gsp);
100 static inline int nvkm_gsp_fwsec_sb_ctor(struct nvkm_gsp *gsp) in nvkm_gsp_fwsec_sb_ctor() argument
102 if (gsp->func->fwsec_sb.ctor) in nvkm_gsp_fwsec_sb_ctor()
103 return gsp->func->fwsec_sb.ctor(gsp); in nvkm_gsp_fwsec_sb_ctor()
107 static inline void nvkm_gsp_fwsec_sb_dtor(struct nvkm_gsp *gsp) in nvkm_gsp_fwsec_sb_dtor() argument
109 if (gsp->func->fwsec_sb.dtor) in nvkm_gsp_fwsec_sb_dtor()
110 gsp->func->fwsec_sb.dtor(gsp); in nvkm_gsp_fwsec_sb_dtor()
H A Dga102.c29 ga102_gsp_reset(struct nvkm_gsp *gsp) in ga102_gsp_reset() argument
33 ret = gsp->falcon.func->reset_eng(&gsp->falcon); in ga102_gsp_reset()
37 nvkm_falcon_mask(&gsp->falcon, 0x1668, 0x00000111, 0x00000111); in ga102_gsp_reset()
42 ga102_gsp_booter_ctor(struct nvkm_gsp *gsp, const char *name, const struct firmware *blob, in ga102_gsp_booter_ctor() argument
45 struct nvkm_subdev *subdev = &gsp->subdev; in ga102_gsp_booter_ctor()
H A Dgv100.c43 gv100_gsp_nofw(struct nvkm_gsp *gsp, int ver, const struct nvkm_gsp_fwif *fwif) in gv100_gsp_nofw() argument
/linux/drivers/gpu/drm/nouveau/include/nvkm/subdev/
H A Dgsp.h203 struct nvkm_gsp *gsp; member
265 nvkm_gsp_rm(struct nvkm_gsp *gsp) in nvkm_gsp_rm() argument
267 return gsp && (gsp->fws.rm || gsp->fw.img); in nvkm_gsp_rm()
273 nvkm_gsp_rpc_get(struct nvkm_gsp *gsp, u32 fn, u32 argc) in nvkm_gsp_rpc_get() argument
275 return gsp->rm->api->rpc->get(gsp, fn, argc); in nvkm_gsp_rpc_get()
279 nvkm_gsp_rpc_push(struct nvkm_gsp *gsp, void *argv, in nvkm_gsp_rpc_push() argument
282 return gsp->rm->api->rpc->push(gsp, argv, policy, repc); in nvkm_gsp_rpc_push()
286 nvkm_gsp_rpc_rd(struct nvkm_gsp *gsp, u32 fn, u32 argc) in nvkm_gsp_rpc_rd() argument
288 void *argv = nvkm_gsp_rpc_get(gsp, fn, argc); in nvkm_gsp_rpc_rd()
293 return nvkm_gsp_rpc_push(gsp, argv, NVKM_GSP_RPC_REPLY_RECV, argc); in nvkm_gsp_rpc_rd()
[all …]
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/fb/
H A Dr535.c34 struct nvkm_gsp *gsp = fb->subdev.device->gsp; in r535_fb_ram_new() local
44 ram->size = gsp->fb.size; in r535_fb_ram_new()
48 for (int i = 0; i < gsp->fb.region_nr; i++) { in r535_fb_ram_new()
50 gsp->fb.region[i].addr >> NVKM_RAM_MM_SHIFT, in r535_fb_ram_new()
51 gsp->fb.region[i].size >> NVKM_RAM_MM_SHIFT, in r535_fb_ram_new()
H A Dga100.c43 if (nvkm_gsp_rm(device->gsp)) in ga100_fb_new()
H A Dtu102.c51 if (nvkm_gsp_rm(device->gsp)) in tu102_fb_new()
/linux/Documentation/gpu/
H A Dnouveau.rst28 .. kernel-doc:: drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/rpc.c
31 .. kernel-doc:: drivers/gpu/drm/nouveau/include/nvkm/subdev/gsp.h
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/privring/
H A Dgm200.c37 if (nvkm_gsp_rm(device->gsp)) in gm200_privring_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/fuse/
H A Dgm107.c44 if (nvkm_gsp_rm(device->gsp)) in gm107_fuse_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/vfn/
H A Dga100.c48 if (nvkm_gsp_rm(device->gsp)) in ga100_vfn_new()
H A Dr535.c37 const struct nvkm_rm_gpu *gpu = device->gsp->rm->gpu; in r535_vfn_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/i2c/
H A Dgm200.c49 if (nvkm_gsp_rm(device->gsp)) in gm200_i2c_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/
H A Dgp102.c59 if (nvkm_gsp_rm(device->gsp)) in gp102_pmu_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/therm/
H A Dgp100.c57 if (nvkm_gsp_rm(device->gsp)) in gp100_therm_new()
/linux/drivers/gpu/drm/nouveau/nvkm/engine/fifo/
H A Dga102.c47 if (nvkm_gsp_rm(device->gsp)) in ga102_fifo_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/ltc/
H A Dgp102.c54 if (nvkm_gsp_rm(device->gsp)) in gp102_ltc_new()
H A Dga102.c58 if (nvkm_gsp_rm(device->gsp)) in ga102_ltc_new()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/devinit/
H A Dgm107.c38 if (!nvkm_gsp_rm(device->gsp)) { in gm107_devinit_disable()
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/bus/
H A Dgf100.c77 if (nvkm_gsp_rm(device->gsp)) in gf100_bus_new()

12