diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 79 |
1 files changed, 25 insertions, 54 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h index 54f06c959340..d6416ee52e32 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | |||
@@ -267,8 +267,6 @@ struct amdgpu_display_funcs { | |||
267 | void (*bandwidth_update)(struct amdgpu_device *adev); | 267 | void (*bandwidth_update)(struct amdgpu_device *adev); |
268 | /* get frame count */ | 268 | /* get frame count */ |
269 | u32 (*vblank_get_counter)(struct amdgpu_device *adev, int crtc); | 269 | u32 (*vblank_get_counter)(struct amdgpu_device *adev, int crtc); |
270 | /* wait for vblank */ | ||
271 | void (*vblank_wait)(struct amdgpu_device *adev, int crtc); | ||
272 | /* set backlight level */ | 270 | /* set backlight level */ |
273 | void (*backlight_set_level)(struct amdgpu_encoder *amdgpu_encoder, | 271 | void (*backlight_set_level)(struct amdgpu_encoder *amdgpu_encoder, |
274 | u8 level); | 272 | u8 level); |
@@ -352,6 +350,7 @@ struct amdgpu_mode_info { | |||
352 | u16 firmware_flags; | 350 | u16 firmware_flags; |
353 | /* pointer to backlight encoder */ | 351 | /* pointer to backlight encoder */ |
354 | struct amdgpu_encoder *bl_encoder; | 352 | struct amdgpu_encoder *bl_encoder; |
353 | u8 bl_level; /* saved backlight level */ | ||
355 | struct amdgpu_audio audio; /* audio stuff */ | 354 | struct amdgpu_audio audio; /* audio stuff */ |
356 | int num_crtc; /* number of crtcs */ | 355 | int num_crtc; /* number of crtcs */ |
357 | int num_hpd; /* number of hpd pins */ | 356 | int num_hpd; /* number of hpd pins */ |
@@ -552,14 +551,6 @@ struct amdgpu_connector { | |||
552 | /* we need to mind the EDID between detect | 551 | /* we need to mind the EDID between detect |
553 | and get modes due to analog/digital/tvencoder */ | 552 | and get modes due to analog/digital/tvencoder */ |
554 | struct edid *edid; | 553 | struct edid *edid; |
555 | /* number of modes generated from EDID at 'dc_sink' */ | ||
556 | int num_modes; | ||
557 | /* The 'old' sink - before an HPD. | ||
558 | * The 'current' sink is in dc_link->sink. */ | ||
559 | struct dc_sink *dc_sink; | ||
560 | struct dc_link *dc_link; | ||
561 | struct dc_sink *dc_em_sink; | ||
562 | const struct dc_stream *stream; | ||
563 | void *con_priv; | 554 | void *con_priv; |
564 | bool dac_load_detect; | 555 | bool dac_load_detect; |
565 | bool detected_by_load; /* if the connection status was determined by load */ | 556 | bool detected_by_load; /* if the connection status was determined by load */ |
@@ -570,27 +561,6 @@ struct amdgpu_connector { | |||
570 | enum amdgpu_connector_audio audio; | 561 | enum amdgpu_connector_audio audio; |
571 | enum amdgpu_connector_dither dither; | 562 | enum amdgpu_connector_dither dither; |
572 | unsigned pixelclock_for_modeset; | 563 | unsigned pixelclock_for_modeset; |
573 | |||
574 | struct drm_dp_mst_topology_mgr mst_mgr; | ||
575 | struct amdgpu_dm_dp_aux dm_dp_aux; | ||
576 | struct drm_dp_mst_port *port; | ||
577 | struct amdgpu_connector *mst_port; | ||
578 | struct amdgpu_encoder *mst_encoder; | ||
579 | struct semaphore mst_sem; | ||
580 | |||
581 | /* TODO see if we can merge with ddc_bus or make a dm_connector */ | ||
582 | struct amdgpu_i2c_adapter *i2c; | ||
583 | |||
584 | /* Monitor range limits */ | ||
585 | int min_vfreq ; | ||
586 | int max_vfreq ; | ||
587 | int pixel_clock_mhz; | ||
588 | |||
589 | /*freesync caps*/ | ||
590 | struct mod_freesync_caps caps; | ||
591 | |||
592 | struct mutex hpd_lock; | ||
593 | |||
594 | }; | 564 | }; |
595 | 565 | ||
596 | /* TODO: start to use this struct and remove same field from base one */ | 566 | /* TODO: start to use this struct and remove same field from base one */ |
@@ -608,7 +578,7 @@ struct amdgpu_mst_connector { | |||
608 | #define ENCODER_MODE_IS_DP(em) (((em) == ATOM_ENCODER_MODE_DP) || \ | 578 | #define ENCODER_MODE_IS_DP(em) (((em) == ATOM_ENCODER_MODE_DP) || \ |
609 | ((em) == ATOM_ENCODER_MODE_DP_MST)) | 579 | ((em) == ATOM_ENCODER_MODE_DP_MST)) |
610 | 580 | ||
611 | /* Driver internal use only flags of amdgpu_get_crtc_scanoutpos() */ | 581 | /* Driver internal use only flags of amdgpu_display_get_crtc_scanoutpos() */ |
612 | #define DRM_SCANOUTPOS_VALID (1 << 0) | 582 | #define DRM_SCANOUTPOS_VALID (1 << 0) |
613 | #define DRM_SCANOUTPOS_IN_VBLANK (1 << 1) | 583 | #define DRM_SCANOUTPOS_IN_VBLANK (1 << 1) |
614 | #define DRM_SCANOUTPOS_ACCURATE (1 << 2) | 584 | #define DRM_SCANOUTPOS_ACCURATE (1 << 2) |
@@ -627,30 +597,31 @@ bool amdgpu_dig_monitor_is_duallink(struct drm_encoder *encoder, | |||
627 | u16 amdgpu_encoder_get_dp_bridge_encoder_id(struct drm_encoder *encoder); | 597 | u16 amdgpu_encoder_get_dp_bridge_encoder_id(struct drm_encoder *encoder); |
628 | struct drm_encoder *amdgpu_get_external_encoder(struct drm_encoder *encoder); | 598 | struct drm_encoder *amdgpu_get_external_encoder(struct drm_encoder *encoder); |
629 | 599 | ||
630 | bool amdgpu_ddc_probe(struct amdgpu_connector *amdgpu_connector, bool use_aux); | 600 | bool amdgpu_display_ddc_probe(struct amdgpu_connector *amdgpu_connector, |
601 | bool use_aux); | ||
631 | 602 | ||
632 | void amdgpu_encoder_set_active_device(struct drm_encoder *encoder); | 603 | void amdgpu_encoder_set_active_device(struct drm_encoder *encoder); |
633 | 604 | ||
634 | int amdgpu_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe, | 605 | int amdgpu_display_get_crtc_scanoutpos(struct drm_device *dev, |
635 | unsigned int flags, int *vpos, int *hpos, | 606 | unsigned int pipe, unsigned int flags, int *vpos, |
636 | ktime_t *stime, ktime_t *etime, | 607 | int *hpos, ktime_t *stime, ktime_t *etime, |
637 | const struct drm_display_mode *mode); | 608 | const struct drm_display_mode *mode); |
638 | 609 | ||
639 | int amdgpu_framebuffer_init(struct drm_device *dev, | 610 | int amdgpu_display_framebuffer_init(struct drm_device *dev, |
640 | struct amdgpu_framebuffer *rfb, | 611 | struct amdgpu_framebuffer *rfb, |
641 | const struct drm_mode_fb_cmd2 *mode_cmd, | 612 | const struct drm_mode_fb_cmd2 *mode_cmd, |
642 | struct drm_gem_object *obj); | 613 | struct drm_gem_object *obj); |
643 | 614 | ||
644 | int amdgpufb_remove(struct drm_device *dev, struct drm_framebuffer *fb); | 615 | int amdgpufb_remove(struct drm_device *dev, struct drm_framebuffer *fb); |
645 | 616 | ||
646 | void amdgpu_enc_destroy(struct drm_encoder *encoder); | 617 | void amdgpu_enc_destroy(struct drm_encoder *encoder); |
647 | void amdgpu_copy_fb(struct drm_device *dev, struct drm_gem_object *dst_obj); | 618 | void amdgpu_copy_fb(struct drm_device *dev, struct drm_gem_object *dst_obj); |
648 | bool amdgpu_crtc_scaling_mode_fixup(struct drm_crtc *crtc, | 619 | bool amdgpu_display_crtc_scaling_mode_fixup(struct drm_crtc *crtc, |
649 | const struct drm_display_mode *mode, | 620 | const struct drm_display_mode *mode, |
650 | struct drm_display_mode *adjusted_mode); | 621 | struct drm_display_mode *adjusted_mode); |
651 | void amdgpu_panel_mode_fixup(struct drm_encoder *encoder, | 622 | void amdgpu_panel_mode_fixup(struct drm_encoder *encoder, |
652 | struct drm_display_mode *adjusted_mode); | 623 | struct drm_display_mode *adjusted_mode); |
653 | int amdgpu_crtc_idx_to_irq_type(struct amdgpu_device *adev, int crtc); | 624 | int amdgpu_display_crtc_idx_to_irq_type(struct amdgpu_device *adev, int crtc); |
654 | 625 | ||
655 | /* fbdev layer */ | 626 | /* fbdev layer */ |
656 | int amdgpu_fbdev_init(struct amdgpu_device *adev); | 627 | int amdgpu_fbdev_init(struct amdgpu_device *adev); |
@@ -662,15 +633,15 @@ bool amdgpu_fbdev_robj_is_fb(struct amdgpu_device *adev, struct amdgpu_bo *robj) | |||
662 | int amdgpu_align_pitch(struct amdgpu_device *adev, int width, int bpp, bool tiled); | 633 | int amdgpu_align_pitch(struct amdgpu_device *adev, int width, int bpp, bool tiled); |
663 | 634 | ||
664 | /* amdgpu_display.c */ | 635 | /* amdgpu_display.c */ |
665 | void amdgpu_print_display_setup(struct drm_device *dev); | 636 | void amdgpu_display_print_display_setup(struct drm_device *dev); |
666 | int amdgpu_modeset_create_props(struct amdgpu_device *adev); | 637 | int amdgpu_display_modeset_create_props(struct amdgpu_device *adev); |
667 | int amdgpu_crtc_set_config(struct drm_mode_set *set, | 638 | int amdgpu_display_crtc_set_config(struct drm_mode_set *set, |
668 | struct drm_modeset_acquire_ctx *ctx); | 639 | struct drm_modeset_acquire_ctx *ctx); |
669 | int amdgpu_crtc_page_flip_target(struct drm_crtc *crtc, | 640 | int amdgpu_display_crtc_page_flip_target(struct drm_crtc *crtc, |
670 | struct drm_framebuffer *fb, | 641 | struct drm_framebuffer *fb, |
671 | struct drm_pending_vblank_event *event, | 642 | struct drm_pending_vblank_event *event, |
672 | uint32_t page_flip_flags, uint32_t target, | 643 | uint32_t page_flip_flags, uint32_t target, |
673 | struct drm_modeset_acquire_ctx *ctx); | 644 | struct drm_modeset_acquire_ctx *ctx); |
674 | extern const struct drm_mode_config_funcs amdgpu_mode_funcs; | 645 | extern const struct drm_mode_config_funcs amdgpu_mode_funcs; |
675 | 646 | ||
676 | #endif | 647 | #endif |