Skip to contentSkip to conversation

drm/amd/display: start using linux hdmi header

PATCH In review Dave Airlie 4 participants 4 messages Jan 9, 2017 – Jan 10, 2017 2 messages not in the archive

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 drm/amd/display: start using linux hdmi header

From: Dave Airlie <[email protected]>

DAL has defines for things, and it doesn't even use them itself.

---
 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(-)
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +8 -10
index 2b08f5a..0f8bb6e 100644
@@ -1333,13 +1333,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
@@ -1472,10 +1471,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];
 
@@ -1586,7 +1584,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) */
@@ -1627,7 +1625,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;
@@ -1649,7 +1647,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]
drivers/gpu/drm/amd/display/include/set_mode_types.h +1 -21
index d18210f..fee2b6f 100644
@@ -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;
Signature · 6 lines
2.9.3

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

A message that is not in the archive (sent off-list or not yet received): 20170109233332.9102-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org

Reviewed-by
#2 lore raw
Quoted 102 lines · Dave Airlie

From: Dave Airlie <[email protected]>

DAL has defines for things, and it doesn't even use them itself.

---
 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(-)
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +8 -10
index 2b08f5a..0f8bb6e 100644
@@ -1333,13 +1333,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
@@ -1472,10 +1471,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];
 
@@ -1586,7 +1584,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) */
@@ -1627,7 +1625,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;
@@ -1649,7 +1647,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]
drivers/gpu/drm/amd/display/include/set_mode_types.h +1 -14
index d18210f..fee2b6f 100644
@@ -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
-};
-

drivers/gpu/drm/amd/display/include/set_mode_types.h enum info_frame_flag { · line 42

Quoted 10 lines
drivers/gpu/drm/amd/display/include/set_mode_types.h +0 -7
-/* 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;

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

#3 lore raw
In reply to a message not in the archive

Ack. Just give Harry a few days to do the require work to make sure everything still work with our other OS / environments.

-----Original Message-----
From: amd-gfx [mailto:[email protected]] On Behalf Of Dave Airlie
Sent: Monday, January 9, 2017 6:34 PM
To: [email protected]
Subject: [PATCH] drm/amd/display: start using linux hdmi header

From: Dave Airlie <[email protected]>

DAL has defines for things, and it doesn't even use them itself.

---
 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(-)
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +3 -4
index 2b08f5a..0f8bb6e 100644
@@ -1333,13 +1333,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 @@ -1472,10 +1471,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];

@@ -1586,7 +1584,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) */ @@ -1627,7 +1625,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;
@@ -1649,7 +1647,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]

drivers/gpu/drm/amd/display/include/set_mode_types.h +1 -22
index d18210f..fee2b6f 100644
@@ -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.9.3

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

A message that is not in the archive (sent off-list or not yet received): MWHPR12MB14060D985C3E414BE2E6358E98670-Gy0DoCVfaSXS1+HfpYZxvgdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org

Reviewed-by
#5 lore raw
Quoted 2 lines · Tony

Ack. Just give Harry a few days to do the require work to make sure everything still work with our other OS / environments.

You should see this land in Alex's public tree in a few days.

Harry

Quoted 118 lines

-----Original Message-----
From: amd-gfx [mailto:[email protected]] On Behalf Of Dave Airlie
Sent: Monday, January 9, 2017 6:34 PM
To: [email protected]
Subject: [PATCH] drm/amd/display: start using linux hdmi header

From: Dave Airlie <[email protected]>

DAL has defines for things, and it doesn't even use them itself.

---
 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(-)
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +3 -4
index 2b08f5a..0f8bb6e 100644
@@ -1333,13 +1333,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 @@ -1472,10 +1471,9 @@ static void set_avi_info_frame(
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +4 -4
 	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];
@@ -1586,7 +1584,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) */ @@ -1627,7 +1625,7 @@ static void set_spd_info_packet(struct core_stream *stream,
drivers/gpu/drm/amd/display/dc/core/dc_resource.c +2 -2
 		/* 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;
@@ -1649,7 +1647,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]
drivers/gpu/drm/amd/display/include/set_mode_types.h +1 -22
index d18210f..fee2b6f 100644
@@ -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.9.3

Quoted 5 lines

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx