/linux/drivers/gpu/drm/amd/pm/ |
H A D | amdgpu_dpm_internal.c | 34 struct amdgpu_crtc *amdgpu_crtc; in amdgpu_dpm_get_active_displays() local 41 amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_dpm_get_active_displays() 42 if (amdgpu_crtc->enabled) { in amdgpu_dpm_get_active_displays() 43 adev->pm.dpm.new_active_crtcs |= (1 << amdgpu_crtc->crtc_id); in amdgpu_dpm_get_active_displays() 54 struct amdgpu_crtc *amdgpu_crtc; in amdgpu_dpm_get_vblank_time() local 60 amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_dpm_get_vblank_time() 61 if (crtc->enabled && amdgpu_crtc->enabled && amdgpu_crtc->hw_mode.clock) { in amdgpu_dpm_get_vblank_time() 63 amdgpu_crtc->hw_mode.crtc_htotal * in amdgpu_dpm_get_vblank_time() 64 (amdgpu_crtc->hw_mode.crtc_vblank_end - in amdgpu_dpm_get_vblank_time() 65 amdgpu_crtc->hw_mode.crtc_vdisplay + in amdgpu_dpm_get_vblank_time() [all …]
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | atombios_crtc.c | 44 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_atombios_crtc_overscan_setup() local 51 args.ucCRTC = amdgpu_crtc->crtc_id; in amdgpu_atombios_crtc_overscan_setup() 53 switch (amdgpu_crtc->rmx_type) { in amdgpu_atombios_crtc_overscan_setup() 74 args.usOverscanRight = cpu_to_le16(amdgpu_crtc->h_border); in amdgpu_atombios_crtc_overscan_setup() 75 args.usOverscanLeft = cpu_to_le16(amdgpu_crtc->h_border); in amdgpu_atombios_crtc_overscan_setup() 76 args.usOverscanBottom = cpu_to_le16(amdgpu_crtc->v_border); in amdgpu_atombios_crtc_overscan_setup() 77 args.usOverscanTop = cpu_to_le16(amdgpu_crtc->v_border); in amdgpu_atombios_crtc_overscan_setup() 87 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_atombios_crtc_scaler_setup() local 93 args.ucScaler = amdgpu_crtc->crtc_id; in amdgpu_atombios_crtc_scaler_setup() 95 switch (amdgpu_crtc->rmx_type) { in amdgpu_atombios_crtc_scaler_setup() [all …]
|
H A D | dce_v8_0.c | 188 struct amdgpu_crtc *amdgpu_crtc = adev->mode_info.crtcs[crtc_id]; in dce_v8_0_page_flip() local 189 struct drm_framebuffer *fb = amdgpu_crtc->base.primary->fb; in dce_v8_0_page_flip() 192 WREG32(mmGRPH_FLIP_CONTROL + amdgpu_crtc->crtc_offset, async ? in dce_v8_0_page_flip() 195 WREG32(mmGRPH_PITCH + amdgpu_crtc->crtc_offset, in dce_v8_0_page_flip() 198 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS_HIGH + amdgpu_crtc->crtc_offset, in dce_v8_0_page_flip() 201 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset, in dce_v8_0_page_flip() 204 RREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset); in dce_v8_0_page_flip() 467 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in dce_v8_0_program_fmt() local 532 WREG32(mmFMT_BIT_DEPTH_CONTROL + amdgpu_crtc->crtc_offset, tmp); in dce_v8_0_program_fmt() 550 struct amdgpu_crtc *amdgpu_crtc, in dce_v8_0_line_buffer_adjust() argument [all …]
|
H A D | dce_v10_0.c | 237 struct amdgpu_crtc *amdgpu_crtc = adev->mode_info.crtcs[crtc_id]; in dce_v10_0_page_flip() local 238 struct drm_framebuffer *fb = amdgpu_crtc->base.primary->fb; in dce_v10_0_page_flip() 242 tmp = RREG32(mmGRPH_FLIP_CONTROL + amdgpu_crtc->crtc_offset); in dce_v10_0_page_flip() 245 WREG32(mmGRPH_FLIP_CONTROL + amdgpu_crtc->crtc_offset, tmp); in dce_v10_0_page_flip() 247 WREG32(mmGRPH_PITCH + amdgpu_crtc->crtc_offset, in dce_v10_0_page_flip() 250 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS_HIGH + amdgpu_crtc->crtc_offset, in dce_v10_0_page_flip() 253 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset, in dce_v10_0_page_flip() 256 RREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset); in dce_v10_0_page_flip() 509 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in dce_v10_0_program_fmt() local 577 WREG32(mmFMT_BIT_DEPTH_CONTROL + amdgpu_crtc->crtc_offset, tmp); in dce_v10_0_program_fmt() [all …]
|
H A D | dce_v6_0.c | 197 struct amdgpu_crtc *amdgpu_crtc = adev->mode_info.crtcs[crtc_id]; in dce_v6_0_page_flip() local 198 struct drm_framebuffer *fb = amdgpu_crtc->base.primary->fb; in dce_v6_0_page_flip() 201 WREG32(mmGRPH_FLIP_CONTROL + amdgpu_crtc->crtc_offset, async ? in dce_v6_0_page_flip() 204 WREG32(mmGRPH_PITCH + amdgpu_crtc->crtc_offset, in dce_v6_0_page_flip() 207 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS_HIGH + amdgpu_crtc->crtc_offset, in dce_v6_0_page_flip() 209 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset, in dce_v6_0_page_flip() 213 RREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset); in dce_v6_0_page_flip() 427 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in dce_v6_0_program_fmt() local 474 WREG32(mmFMT_BIT_DEPTH_CONTROL + amdgpu_crtc->crtc_offset, tmp); in dce_v6_0_program_fmt() 845 struct amdgpu_crtc *amdgpu_crtc, in dce_v6_0_program_watermarks() argument [all …]
|
H A D | dce_v11_0.c | 261 struct amdgpu_crtc *amdgpu_crtc = adev->mode_info.crtcs[crtc_id]; in dce_v11_0_page_flip() local 262 struct drm_framebuffer *fb = amdgpu_crtc->base.primary->fb; in dce_v11_0_page_flip() 266 tmp = RREG32(mmGRPH_FLIP_CONTROL + amdgpu_crtc->crtc_offset); in dce_v11_0_page_flip() 269 WREG32(mmGRPH_FLIP_CONTROL + amdgpu_crtc->crtc_offset, tmp); in dce_v11_0_page_flip() 271 WREG32(mmGRPH_PITCH + amdgpu_crtc->crtc_offset, in dce_v11_0_page_flip() 274 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS_HIGH + amdgpu_crtc->crtc_offset, in dce_v11_0_page_flip() 277 WREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset, in dce_v11_0_page_flip() 280 RREG32(mmGRPH_PRIMARY_SURFACE_ADDRESS + amdgpu_crtc->crtc_offset); in dce_v11_0_page_flip() 541 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in dce_v11_0_program_fmt() local 609 WREG32(mmFMT_BIT_DEPTH_CONTROL + amdgpu_crtc->crtc_offset, tmp); in dce_v11_0_program_fmt() [all …]
|
H A D | amdgpu_vkms.c | 48 struct amdgpu_crtc *amdgpu_crtc = container_of(timer, struct amdgpu_crtc, vblank_timer); in amdgpu_vkms_vblank_simulate() local 49 struct drm_crtc *crtc = &amdgpu_crtc->base; in amdgpu_vkms_vblank_simulate() 54 ret_overrun = hrtimer_forward_now(&amdgpu_crtc->vblank_timer, in amdgpu_vkms_vblank_simulate() 71 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_vkms_enable_vblank() local 76 hrtimer_start(&amdgpu_crtc->vblank_timer, out->period_ns, HRTIMER_MODE_REL); in amdgpu_vkms_enable_vblank() 83 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_vkms_disable_vblank() local 85 hrtimer_try_to_cancel(&amdgpu_crtc->vblank_timer); in amdgpu_vkms_disable_vblank() 95 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_vkms_get_vblank_timestamp() local 102 *vblank_time = READ_ONCE(amdgpu_crtc->vblank_timer.node.expires); in amdgpu_vkms_get_vblank_timestamp() 171 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_vkms_crtc_init() local [all …]
|
H A D | amdgpu_display.c | 125 struct amdgpu_crtc *amdgpu_crtc = adev->mode_info.crtcs[work->crtc_id]; in amdgpu_display_flip_work_func() local 127 struct drm_crtc *crtc = &amdgpu_crtc->base; in amdgpu_display_flip_work_func() 139 if (amdgpu_crtc->enabled && in amdgpu_display_flip_work_func() 158 amdgpu_crtc->pflip_status = AMDGPU_FLIP_SUBMITTED; in amdgpu_display_flip_work_func() 164 amdgpu_crtc->crtc_id, amdgpu_crtc, work); in amdgpu_display_flip_work_func() 198 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_display_crtc_page_flip_target() local 215 work->crtc_id = amdgpu_crtc->crtc_id; in amdgpu_display_crtc_page_flip_target() 269 if (amdgpu_crtc->pflip_status != AMDGPU_FLIP_NONE) { in amdgpu_display_crtc_page_flip_target() 276 amdgpu_crtc->pflip_status = AMDGPU_FLIP_PENDING; in amdgpu_display_crtc_page_flip_target() 277 amdgpu_crtc->pflip_works = work; in amdgpu_display_crtc_page_flip_target() [all …]
|
H A D | amdgpu_pll.c | 273 struct amdgpu_crtc *test_amdgpu_crtc; in amdgpu_pll_get_use_mask() 300 struct amdgpu_crtc *test_amdgpu_crtc; in amdgpu_pll_get_shared_dp_ppll() 326 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_pll_get_shared_nondp_ppll() local 329 struct amdgpu_crtc *test_amdgpu_crtc; in amdgpu_pll_get_shared_nondp_ppll() 332 adjusted_clock = amdgpu_crtc->adjusted_clock; in amdgpu_pll_get_shared_nondp_ppll() 344 if (test_amdgpu_crtc->connector == amdgpu_crtc->connector) { in amdgpu_pll_get_shared_nondp_ppll() 353 (amdgpu_crtc->ss_enabled == test_amdgpu_crtc->ss_enabled) && in amdgpu_pll_get_shared_nondp_ppll()
|
H A D | amdgpu_vkms.h | 18 struct amdgpu_crtc crtc;
|
H A D | amdgpu_mode.h | 56 #define to_amdgpu_crtc(x) container_of(x, struct amdgpu_crtc, base) 314 struct amdgpu_crtc *crtcs[AMDGPU_MAX_CRTCS]; 458 struct amdgpu_crtc { struct
|
H A D | atombios_encoders.c | 347 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in amdgpu_atombios_encoder_get_bpc() local 348 bpc = amdgpu_crtc->bpc; in amdgpu_atombios_encoder_get_bpc() 790 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in amdgpu_atombios_encoder_setup_dig_transmitter() local 791 pll_id = amdgpu_crtc->pll_id; in amdgpu_atombios_encoder_setup_dig_transmitter() 1438 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(encoder->crtc); in amdgpu_atombios_encoder_set_crtc_source() local 1454 args.v1.ucCRTC = amdgpu_crtc->crtc_id; in amdgpu_atombios_encoder_set_crtc_source() 1493 args.v2.ucCRTC = amdgpu_crtc->crtc_id; in amdgpu_atombios_encoder_set_crtc_source() 1561 args.v3.ucCRTC = amdgpu_crtc->crtc_id; in amdgpu_atombios_encoder_set_crtc_source()
|
H A D | amdgpu_kms.c | 591 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_info_ioctl() local 593 ui32 = amdgpu_crtc->crtc_id; in amdgpu_info_ioctl()
|
/linux/drivers/gpu/drm/amd/display/amdgpu_dm/ |
H A D | amdgpu_dm_crtc.h | 30 void amdgpu_dm_crtc_handle_vblank(struct amdgpu_crtc *acrtc); 38 bool amdgpu_dm_crtc_vrr_active_irq(struct amdgpu_crtc *acrtc);
|
H A D | amdgpu_dm_crc.c | 90 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in amdgpu_dm_set_crc_window_default() 185 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in amdgpu_dm_crc_window_is_activated() 261 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in amdgpu_dm_crtc_set_crc_source() 427 struct amdgpu_crtc *acrtc = NULL; in amdgpu_dm_crtc_handle_crc_irq() 473 struct amdgpu_crtc *acrtc = NULL; in amdgpu_dm_crtc_handle_crc_window_irq()
|
H A D | amdgpu_dm_crtc.c | 41 void amdgpu_dm_crtc_handle_vblank(struct amdgpu_crtc *acrtc) in amdgpu_dm_crtc_handle_vblank() 68 bool amdgpu_dm_crtc_vrr_active_irq(struct amdgpu_crtc *acrtc) in amdgpu_dm_crtc_vrr_active_irq() 80 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in amdgpu_dm_crtc_set_vupdate_irq() 290 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in amdgpu_dm_crtc_set_vblank() 688 struct amdgpu_crtc *acrtc = NULL; in amdgpu_dm_crtc_init() 700 acrtc = kzalloc(sizeof(struct amdgpu_crtc), GFP_KERNEL); in amdgpu_dm_crtc_init()
|
H A D | amdgpu_dm_plane.c | 1286 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_dm_plane_get_cursor_position() local 1294 if ((plane->state->crtc_w > amdgpu_crtc->max_cursor_width) || in amdgpu_dm_plane_get_cursor_position() 1295 (plane->state->crtc_h > amdgpu_crtc->max_cursor_height)) { in amdgpu_dm_plane_get_cursor_position() 1306 if (x <= -amdgpu_crtc->max_cursor_width || in amdgpu_dm_plane_get_cursor_position() 1307 y <= -amdgpu_crtc->max_cursor_height) in amdgpu_dm_plane_get_cursor_position() 1311 xorigin = min(-x, amdgpu_crtc->max_cursor_width - 1); in amdgpu_dm_plane_get_cursor_position() 1315 yorigin = min(-y, amdgpu_crtc->max_cursor_height - 1); in amdgpu_dm_plane_get_cursor_position() 1337 struct amdgpu_crtc *amdgpu_crtc = to_amdgpu_crtc(crtc); in amdgpu_dm_plane_handle_cursor_update() local 1347 amdgpu_crtc->crtc_id, plane->state->crtc_w, in amdgpu_dm_plane_handle_cursor_update() 1365 amdgpu_crtc->cursor_width = plane->state->crtc_w; in amdgpu_dm_plane_handle_cursor_update() [all …]
|
H A D | amdgpu_dm.h | 77 struct amdgpu_crtc; 135 struct amdgpu_crtc *acrtc;
|
H A D | amdgpu_dm_debugfs.c | 3489 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_x_start_set() 3506 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_x_start_get() 3526 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_y_start_set() 3543 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_y_start_get() 3562 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_x_end_set() 3579 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_x_end_get() 3598 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_y_end_set() 3615 struct amdgpu_crtc *acrtc = to_amdgpu_crtc(crtc); in crc_win_y_end_get() 3632 struct amdgpu_crtc *acrtc; in crc_win_update_set()
|
H A D | amdgpu_dm_irq.c | 715 struct amdgpu_crtc *acrtc = adev->mode_info.crtcs[crtc_id]; in dm_irq_state()
|
/linux/drivers/gpu/drm/amd/pm/legacy-dpm/ |
H A D | si_dpm.c | 5794 struct amdgpu_crtc *amdgpu_crtc = NULL; in si_upload_smc_data() local 5802 amdgpu_crtc = adev->mode_info.crtcs[i]; in si_upload_smc_data() 5807 if (amdgpu_crtc == NULL) in si_upload_smc_data() 5810 if (amdgpu_crtc->line_time <= 0) in si_upload_smc_data() 5815 amdgpu_crtc->crtc_id) != PPSMC_Result_OK) in si_upload_smc_data() 5820 amdgpu_crtc->wm_high / amdgpu_crtc->line_time) != PPSMC_Result_OK) in si_upload_smc_data() 5825 amdgpu_crtc->wm_low / amdgpu_crtc->line_time) != PPSMC_Result_OK) in si_upload_smc_data()
|