Lines Matching full:rm
77 nvkm_gsp_rm_free(&chan->rm.object); in r535_chan_fini()
131 args = nvkm_gsp_rm_alloc_get(&chan->disp->rm.object, in r535_curs_init()
133 chan->object.oclass, sizeof(*args), &chan->rm.object); in r535_curs_init()
139 return nvkm_gsp_rm_alloc_wr(&chan->rm.object, args); in r535_curs_init()
161 (chan->disp->rm.client.object.handle & 0x3fff)); in r535_dmac_bind()
184 args = nvkm_gsp_rm_alloc_get(&chan->disp->rm.object, in r535_dmac_init()
186 chan->object.oclass, sizeof(*args), &chan->rm.object); in r535_dmac_init()
193 return nvkm_gsp_rm_alloc_wr(&chan->rm.object, args); in r535_dmac_init()
268 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_bl_set()
277 return nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl); in r535_sor_bl_set()
287 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_bl_get()
295 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_sor_bl_get()
297 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_sor_bl_get()
302 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_sor_bl_get()
321 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_hda_eld()
334 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_hda_eld()
346 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_hda_hpd()
354 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_hda_hpd()
369 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_dp_audio_mute()
376 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_dp_audio_mute()
388 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_dp_audio()
395 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_dp_audio()
407 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_dp_vcpi()
430 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_dp_vcpi()
440 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_dp_sst()
459 return nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl); in r535_sor_dp_sst()
477 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_hdmi_scdc()
491 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_hdmi_scdc()
500 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_hdmi_ctrl_audio_mute()
507 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_hdmi_ctrl_audio_mute()
516 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_hdmi_ctrl_audio()
540 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_hdmi_ctrl_audio()
567 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_sor_hdmi_ctrl()
575 WARN_ON(nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl)); in r535_sor_hdmi_ctrl()
646 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_conn_new()
654 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_conn_new()
656 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_conn_new()
662 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_conn_new()
669 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_conn_new()
682 outp->disp->rm.assigned_sors &= ~BIT(outp->ior->id); in r535_outp_release()
695 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_outp_acquire()
702 ctrl->sorExcludeMask = disp->rm.assigned_sors; in r535_outp_acquire()
706 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_outp_acquire()
708 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_acquire()
714 disp->rm.assigned_sors |= BIT(or); in r535_outp_acquire()
719 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_acquire()
738 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_disp_head_displayid()
746 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_disp_head_displayid()
748 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_disp_head_displayid()
753 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_disp_head_displayid()
775 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_outp_inherit()
784 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_outp_inherit()
786 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_inherit()
792 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_inherit()
826 disp->rm.assigned_sors |= BIT(ior->id); in r535_outp_inherit()
841 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, NV0073_CTRL_CMD_DFP_GET_INFO, sizeof(*ctrl)); in r535_outp_dfp_get_info()
847 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_outp_dfp_get_info()
849 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_dfp_get_info()
856 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_dfp_get_info()
867 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_outp_detect()
875 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_outp_detect()
877 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_detect()
889 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_detect()
899 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_dp_mst_id_put()
906 return nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl); in r535_dp_mst_id_put()
916 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_dp_mst_id_get()
924 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_dp_mst_id_get()
926 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_dp_mst_id_get()
931 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_dp_mst_id_get()
941 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_dp_drive()
952 return nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl); in r535_dp_drive()
983 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, NV0073_CTRL_CMD_DP_CTRL, in r535_dp_train_target()
994 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_dp_train_target()
1004 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_dp_train_target()
1009 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_dp_train_target()
1044 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_dp_rates()
1053 return nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl); in r535_dp_rates()
1066 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, NV0073_CTRL_CMD_DP_AUXCH_CTRL, sizeof(*ctrl)); in r535_dp_aux_xfer()
1082 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_dp_aux_xfer()
1092 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_dp_aux_xfer()
1097 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_dp_aux_xfer()
1160 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_tmds_edid_get()
1168 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_tmds_edid_get()
1170 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_tmds_edid_get()
1181 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_tmds_edid_get()
1205 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_outp_new()
1213 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_outp_new()
1215 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_new()
1256 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_new()
1284 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_outp_new()
1291 ret = nvkm_gsp_rm_ctrl_push(&disp->rm.objcom, &ctrl, sizeof(*ctrl)); in r535_outp_new()
1293 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_new()
1317 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_outp_new()
1341 struct nvkm_disp *disp = container_of(event, typeof(*disp), rm.irq); in r535_disp_irq()
1350 nvkm_event_ntfy(&disp->rm.event, fls(irq->displayId) - 1, NVKM_DPYID_IRQ); in r535_disp_irq()
1356 struct nvkm_disp *disp = container_of(event, typeof(*disp), rm.hpd); in r535_disp_hpd()
1374 nvkm_event_ntfy(&disp->rm.event, i, mask); in r535_disp_hpd()
1417 nvkm_gsp_rm_free(&disp->rm.object); in r535_disp_fini()
1420 nvkm_gsp_event_dtor(&disp->rm.irq); in r535_disp_fini()
1421 nvkm_gsp_event_dtor(&disp->rm.hpd); in r535_disp_fini()
1422 nvkm_event_fini(&disp->rm.event); in r535_disp_fini()
1424 nvkm_gsp_rm_free(&disp->rm.objcom); in r535_disp_fini()
1425 nvkm_gsp_device_dtor(&disp->rm.device); in r535_disp_fini()
1426 nvkm_gsp_client_dtor(&disp->rm.client); in r535_disp_fini()
1435 ret = nvkm_gsp_rm_alloc(&disp->rm.device.object, disp->func->root.oclass << 16, in r535_disp_init()
1436 disp->func->root.oclass, 0, &disp->rm.object); in r535_disp_init()
1475 ret = nvkm_gsp_client_device_ctor(gsp, &disp->rm.client, &disp->rm.device); in r535_disp_oneinit()
1479 ret = nvkm_gsp_rm_alloc(&disp->rm.device.object, 0x00730000, NV04_DISPLAY_COMMON, 0, in r535_disp_oneinit()
1480 &disp->rm.objcom); in r535_disp_oneinit()
1502 struct nvkm_gsp_object *subdevice = &disp->rm.client.gsp->internal.device.subdevice; in r535_disp_oneinit()
1573 ctrl = nvkm_gsp_rm_ctrl_get(&disp->rm.objcom, in r535_disp_oneinit()
1579 ret = nvkm_gsp_rm_ctrl_wr(&disp->rm.objcom, ctrl); in r535_disp_oneinit()
1588 ctrl = nvkm_gsp_rm_ctrl_rd(&disp->rm.objcom, in r535_disp_oneinit()
1594 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_disp_oneinit()
1601 ctrl = nvkm_gsp_rm_ctrl_rd(&disp->rm.objcom, in r535_disp_oneinit()
1608 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_disp_oneinit()
1631 ctrl = nvkm_gsp_rm_ctrl_rd(&disp->rm.objcom, in r535_disp_oneinit()
1637 nvkm_gsp_rm_ctrl_done(&disp->rm.objcom, ctrl); in r535_disp_oneinit()
1646 ret = nvkm_event_init(&r535_disp_event, &gsp->subdev, 3, 32, &disp->rm.event); in r535_disp_oneinit()
1650 ret = nvkm_gsp_device_event_ctor(&disp->rm.device, 0x007e0000, NV2080_NOTIFIERS_HOTPLUG, in r535_disp_oneinit()
1651 r535_disp_hpd, &disp->rm.hpd); in r535_disp_oneinit()
1655 ret = nvkm_gsp_device_event_ctor(&disp->rm.device, 0x007e0001, NV2080_NOTIFIERS_DP_IRQ, in r535_disp_oneinit()
1656 r535_disp_irq, &disp->rm.irq); in r535_disp_oneinit()
1689 struct nvkm_disp_func *rm; in r535_disp_new() local
1692 if (!(rm = kzalloc(sizeof(*rm) + 6 * sizeof(rm->user[0]), GFP_KERNEL))) in r535_disp_new()
1695 rm->dtor = r535_disp_dtor; in r535_disp_new()
1696 rm->oneinit = r535_disp_oneinit; in r535_disp_new()
1697 rm->init = r535_disp_init; in r535_disp_new()
1698 rm->fini = r535_disp_fini; in r535_disp_new()
1699 rm->uevent = hw->uevent; in r535_disp_new()
1700 rm->sor.cnt = r535_sor_cnt; in r535_disp_new()
1701 rm->sor.new = r535_sor_new; in r535_disp_new()
1702 rm->ramht_size = hw->ramht_size; in r535_disp_new()
1704 rm->root = hw->root; in r535_disp_new()
1708 case 0x73: rm->user[i] = hw->user[i]; break; in r535_disp_new()
1709 case 0x7d: rm->user[i] = hw->user[i]; rm->user[i].chan = &r535_core; break; in r535_disp_new()
1710 case 0x7e: rm->user[i] = hw->user[i]; rm->user[i].chan = &r535_wndw; break; in r535_disp_new()
1711 case 0x7b: rm->user[i] = hw->user[i]; rm->user[i].chan = &r535_wimm; break; in r535_disp_new()
1712 case 0x7a: rm->user[i] = hw->user[i]; rm->user[i].chan = &r535_curs; break; in r535_disp_new()
1719 ret = nvkm_disp_new_(rm, device, type, inst, pdisp); in r535_disp_new()
1721 kfree(rm); in r535_disp_new()