diff options
author | Dave Airlie <airlied@redhat.com> | 2018-11-28 19:21:23 -0500 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2018-11-28 19:28:49 -0500 |
commit | 61647c77cb15354a329cbb36fe7a2253b36b51b1 (patch) | |
tree | 59d887f99bc4a2bdddc7cfc1d81794c2a4cdc759 /drivers/gpu/drm/meson/meson_venc.c | |
parent | 1a31c26ed7b495f152e3103dc7c68e3307a39541 (diff) | |
parent | 08f73d668048ffa3ba6b1426b6ba0a89b16aefd7 (diff) |
Merge tag 'drm-misc-next-2018-11-28' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
drm-misc-next for v4.21:
Core Changes:
- Merge drm_info.c into drm_debugfs.c
- Complete the fake drm_crtc_commit's hw_done/flip_done sooner.
- Remove deprecated drm_obj_ref/unref functions. All drivers use get/put now.
- Decrease stack use of drm_gem_prime_mmap.
- Improve documentation for dumb callbacks.
Driver Changes:
- Add edid support to virtio.
- Wait on implicit fence in meson and sun4i.
- Add support for BGRX8888 to sun4i.
- Preparation patches for sun4i driver to start supporting linear and tiled YUV formats.
- Add support for HDMI 1.4 4k modes to meson, and support for VIC alternate timings.
- Drop custom dumb_map in vkms.
- Small fixes and cleanups to v3d.
Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/151a3270-b1be-ed75-bd58-6b29d741f592@linux.intel.com
Diffstat (limited to 'drivers/gpu/drm/meson/meson_venc.c')
-rw-r--r-- | drivers/gpu/drm/meson/meson_venc.c | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/drivers/gpu/drm/meson/meson_venc.c b/drivers/gpu/drm/meson/meson_venc.c index acbbad3e322c..e95e0e7a7fa1 100644 --- a/drivers/gpu/drm/meson/meson_venc.c +++ b/drivers/gpu/drm/meson/meson_venc.c | |||
@@ -697,6 +697,132 @@ union meson_hdmi_venc_mode meson_hdmi_encp_mode_1080p60 = { | |||
697 | }, | 697 | }, |
698 | }; | 698 | }; |
699 | 699 | ||
700 | union meson_hdmi_venc_mode meson_hdmi_encp_mode_2160p24 = { | ||
701 | .encp = { | ||
702 | .dvi_settings = 0x1, | ||
703 | .video_mode = 0x4040, | ||
704 | .video_mode_adv = 0x8, | ||
705 | /* video_sync_mode */ | ||
706 | /* video_yc_dly */ | ||
707 | /* video_rgb_ctrl */ | ||
708 | .video_filt_ctrl = 0x1000, | ||
709 | .video_filt_ctrl_present = true, | ||
710 | /* video_ofld_voav_ofst */ | ||
711 | .yfp1_htime = 140, | ||
712 | .yfp2_htime = 140+3840, | ||
713 | .max_pxcnt = 3840+1660-1, | ||
714 | .hspuls_begin = 2156+1920, | ||
715 | .hspuls_end = 44, | ||
716 | .hspuls_switch = 44, | ||
717 | .vspuls_begin = 140, | ||
718 | .vspuls_end = 2059+1920, | ||
719 | .vspuls_bline = 0, | ||
720 | .vspuls_eline = 4, | ||
721 | .havon_begin = 148, | ||
722 | .havon_end = 3987, | ||
723 | .vavon_bline = 89, | ||
724 | .vavon_eline = 2248, | ||
725 | /* eqpuls_begin */ | ||
726 | /* eqpuls_end */ | ||
727 | /* eqpuls_bline */ | ||
728 | /* eqpuls_eline */ | ||
729 | .hso_begin = 44, | ||
730 | .hso_end = 2156+1920, | ||
731 | .vso_begin = 2100+1920, | ||
732 | .vso_end = 2164+1920, | ||
733 | .vso_bline = 51, | ||
734 | .vso_eline = 53, | ||
735 | .vso_eline_present = true, | ||
736 | /* sy_val */ | ||
737 | /* sy2_val */ | ||
738 | .max_lncnt = 2249, | ||
739 | }, | ||
740 | }; | ||
741 | |||
742 | union meson_hdmi_venc_mode meson_hdmi_encp_mode_2160p25 = { | ||
743 | .encp = { | ||
744 | .dvi_settings = 0x1, | ||
745 | .video_mode = 0x4040, | ||
746 | .video_mode_adv = 0x8, | ||
747 | /* video_sync_mode */ | ||
748 | /* video_yc_dly */ | ||
749 | /* video_rgb_ctrl */ | ||
750 | .video_filt_ctrl = 0x1000, | ||
751 | .video_filt_ctrl_present = true, | ||
752 | /* video_ofld_voav_ofst */ | ||
753 | .yfp1_htime = 140, | ||
754 | .yfp2_htime = 140+3840, | ||
755 | .max_pxcnt = 3840+1440-1, | ||
756 | .hspuls_begin = 2156+1920, | ||
757 | .hspuls_end = 44, | ||
758 | .hspuls_switch = 44, | ||
759 | .vspuls_begin = 140, | ||
760 | .vspuls_end = 2059+1920, | ||
761 | .vspuls_bline = 0, | ||
762 | .vspuls_eline = 4, | ||
763 | .havon_begin = 148, | ||
764 | .havon_end = 3987, | ||
765 | .vavon_bline = 89, | ||
766 | .vavon_eline = 2248, | ||
767 | /* eqpuls_begin */ | ||
768 | /* eqpuls_end */ | ||
769 | /* eqpuls_bline */ | ||
770 | /* eqpuls_eline */ | ||
771 | .hso_begin = 44, | ||
772 | .hso_end = 2156+1920, | ||
773 | .vso_begin = 2100+1920, | ||
774 | .vso_end = 2164+1920, | ||
775 | .vso_bline = 51, | ||
776 | .vso_eline = 53, | ||
777 | .vso_eline_present = true, | ||
778 | /* sy_val */ | ||
779 | /* sy2_val */ | ||
780 | .max_lncnt = 2249, | ||
781 | }, | ||
782 | }; | ||
783 | |||
784 | union meson_hdmi_venc_mode meson_hdmi_encp_mode_2160p30 = { | ||
785 | .encp = { | ||
786 | .dvi_settings = 0x1, | ||
787 | .video_mode = 0x4040, | ||
788 | .video_mode_adv = 0x8, | ||
789 | /* video_sync_mode */ | ||
790 | /* video_yc_dly */ | ||
791 | /* video_rgb_ctrl */ | ||
792 | .video_filt_ctrl = 0x1000, | ||
793 | .video_filt_ctrl_present = true, | ||
794 | /* video_ofld_voav_ofst */ | ||
795 | .yfp1_htime = 140, | ||
796 | .yfp2_htime = 140+3840, | ||
797 | .max_pxcnt = 3840+560-1, | ||
798 | .hspuls_begin = 2156+1920, | ||
799 | .hspuls_end = 44, | ||
800 | .hspuls_switch = 44, | ||
801 | .vspuls_begin = 140, | ||
802 | .vspuls_end = 2059+1920, | ||
803 | .vspuls_bline = 0, | ||
804 | .vspuls_eline = 4, | ||
805 | .havon_begin = 148, | ||
806 | .havon_end = 3987, | ||
807 | .vavon_bline = 89, | ||
808 | .vavon_eline = 2248, | ||
809 | /* eqpuls_begin */ | ||
810 | /* eqpuls_end */ | ||
811 | /* eqpuls_bline */ | ||
812 | /* eqpuls_eline */ | ||
813 | .hso_begin = 44, | ||
814 | .hso_end = 2156+1920, | ||
815 | .vso_begin = 2100+1920, | ||
816 | .vso_end = 2164+1920, | ||
817 | .vso_bline = 51, | ||
818 | .vso_eline = 53, | ||
819 | .vso_eline_present = true, | ||
820 | /* sy_val */ | ||
821 | /* sy2_val */ | ||
822 | .max_lncnt = 2249, | ||
823 | }, | ||
824 | }; | ||
825 | |||
700 | struct meson_hdmi_venc_vic_mode { | 826 | struct meson_hdmi_venc_vic_mode { |
701 | unsigned int vic; | 827 | unsigned int vic; |
702 | union meson_hdmi_venc_mode *mode; | 828 | union meson_hdmi_venc_mode *mode; |
@@ -717,6 +843,9 @@ struct meson_hdmi_venc_vic_mode { | |||
717 | { 34, &meson_hdmi_encp_mode_1080p30 }, | 843 | { 34, &meson_hdmi_encp_mode_1080p30 }, |
718 | { 31, &meson_hdmi_encp_mode_1080p50 }, | 844 | { 31, &meson_hdmi_encp_mode_1080p50 }, |
719 | { 16, &meson_hdmi_encp_mode_1080p60 }, | 845 | { 16, &meson_hdmi_encp_mode_1080p60 }, |
846 | { 93, &meson_hdmi_encp_mode_2160p24 }, | ||
847 | { 94, &meson_hdmi_encp_mode_2160p25 }, | ||
848 | { 95, &meson_hdmi_encp_mode_2160p30 }, | ||
720 | { 0, NULL}, /* sentinel */ | 849 | { 0, NULL}, /* sentinel */ |
721 | }; | 850 | }; |
722 | 851 | ||