diff options
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0136-drm-amd-display-start-using-linux-hdmi-header.patch')
-rw-r--r-- | meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0136-drm-amd-display-start-using-linux-hdmi-header.patch | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0136-drm-amd-display-start-using-linux-hdmi-header.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0136-drm-amd-display-start-using-linux-hdmi-header.patch new file mode 100644 index 00000000..79b69c58 --- /dev/null +++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0136-drm-amd-display-start-using-linux-hdmi-header.patch @@ -0,0 +1,121 @@ +From b2e388759f80373255ff1266618e0b43cfaa37fe Mon Sep 17 00:00:00 2001 +From: Dave Airlie <airlied@redhat.com> +Date: Tue, 10 Jan 2017 09:33:32 +1000 +Subject: [PATCH 0136/4131] drm/amd/display: start using linux hdmi header + +DAL has defines for things, and it doesn't even use them itself. + +Signed-off-by: Dave Airlie <airlied@redhat.com> +Reviewed-by: Tony Cheng <Tony.Cheng@amd.com> +Reviewed-by: Harry Wentland <Harry.Wentland@amd.com> +Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +--- + drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 18 ++++++++---------- + .../gpu/drm/amd/display/include/set_mode_types.h | 22 +--------------------- + 2 files changed, 9 insertions(+), 31 deletions(-) + +diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c +index 59770bc..4bb6b1d 100644 +--- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c ++++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c +@@ -1334,13 +1334,12 @@ static void set_avi_info_frame( + + /* Initialize header */ + info_frame.avi_info_packet.info_packet_hdmi.bits.header. +- info_frame_type = INFO_FRAME_AVI; ++ info_frame_type = HDMI_INFOFRAME_TYPE_AVI; + /* InfoFrameVersion_3 is defined by CEA861F (Section 6.4), but shall + * not be used in HDMI 2.0 (Section 10.1) */ +- info_frame.avi_info_packet.info_packet_hdmi.bits.header.version = +- INFO_FRAME_VERSION_2; ++ info_frame.avi_info_packet.info_packet_hdmi.bits.header.version = 2; + info_frame.avi_info_packet.info_packet_hdmi.bits.header.length = +- INFO_FRAME_SIZE_AVI; ++ HDMI_AVI_INFOFRAME_SIZE; + + /* + * IDO-defined (Y2,Y1,Y0 = 1,1,1) shall not be used by devices built +@@ -1473,10 +1472,9 @@ static void set_avi_info_frame( + check_sum = + &info_frame. + avi_info_packet.info_packet_hdmi.packet_raw_data.sb[0]; +- *check_sum = INFO_FRAME_AVI + INFO_FRAME_SIZE_AVI +- + INFO_FRAME_VERSION_2; ++ *check_sum = HDMI_INFOFRAME_TYPE_AVI + HDMI_AVI_INFOFRAME_SIZE + 2; + +- for (byte_index = 1; byte_index <= INFO_FRAME_SIZE_AVI; byte_index++) ++ for (byte_index = 1; byte_index <= HDMI_AVI_INFOFRAME_SIZE; byte_index++) + *check_sum += info_frame.avi_info_packet.info_packet_hdmi. + packet_raw_data.sb[byte_index]; + +@@ -1588,7 +1586,7 @@ static void set_vendor_info_packet(struct core_stream *stream, + info_packet->sb[5] = stream->public.timing.hdmi_vic; + + /* Header */ +- info_packet->hb0 = 0x81; /* VSIF packet type. */ ++ info_packet->hb0 = HDMI_INFOFRAME_TYPE_VENDOR; /* VSIF packet type. */ + info_packet->hb1 = 0x01; /* Version */ + + /* 4 lower bits = Length, 4 higher bits = 0 (reserved) */ +@@ -1629,7 +1627,7 @@ static void set_spd_info_packet(struct core_stream *stream, + /* HB0 = Packet Type = 0x83 (Source Product + * Descriptor InfoFrame) + */ +- info_packet->hb0 = 0x83; ++ info_packet->hb0 = HDMI_INFOFRAME_TYPE_SPD; + + /* HB1 = Version = 0x01 */ + info_packet->hb1 = 0x01; +@@ -1651,7 +1649,7 @@ static void set_spd_info_packet(struct core_stream *stream, + /* HB1 = Packet Type = 0x83 (Source Product + * Descriptor InfoFrame) + */ +- info_packet->hb1 = 0x83; ++ info_packet->hb1 = HDMI_INFOFRAME_TYPE_SPD; + + /* HB2 = [Bits 7:0 = Least significant eight bits - + * For INFOFRAME, the value must be 1Bh] +diff --git a/drivers/gpu/drm/amd/display/include/set_mode_types.h b/drivers/gpu/drm/amd/display/include/set_mode_types.h +index d18210f..fee2b6f 100644 +--- a/drivers/gpu/drm/amd/display/include/set_mode_types.h ++++ b/drivers/gpu/drm/amd/display/include/set_mode_types.h +@@ -27,6 +27,7 @@ + #define __DAL_SET_MODE_TYPES_H__ + + #include "dc_types.h" ++#include <linux/hdmi.h> + + /* Info frame packet status */ + enum info_frame_flag { +@@ -36,27 +37,6 @@ enum info_frame_flag { + INFO_PACKET_PACKET_UPDATE_SCAN_TYPE = 8 + }; + +-/* Info frame types */ +-enum info_frame_type { +- INFO_FRAME_GAMUT = 0x0A, +- INFO_FRAME_VENDOR_INFO = 0x81, +- INFO_FRAME_AVI = 0x82 +-}; +- +-/* Info frame versions */ +-enum info_frame_version { +- INFO_FRAME_VERSION_1 = 1, +- INFO_FRAME_VERSION_2 = 2, +- INFO_FRAME_VERSION_3 = 3 +-}; +- +-/* Info frame size */ +-enum info_frame_size { +- INFO_FRAME_SIZE_AVI = 13, +- INFO_FRAME_SIZE_VENDOR = 25, +- INFO_FRAME_SIZE_AUDIO = 10 +-}; +- + struct hdmi_info_frame_header { + uint8_t info_frame_type; + uint8_t version; +-- +2.7.4 + |