Message ID | 5a5c7e4477782c174f494947e2a2ea618b2b1ef2.1630419362.git.jani.nikula@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/displayid: VESA vendor block and drm/i915 MSO use of it | expand |
> -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Jani Nikula > Sent: Tuesday, August 31, 2021 7:48 PM > To: intel-gfx@lists.freedesktop.org > Cc: dri-devel@lists.freedesktop.org; ville.syrjala@linux.intel.com; Nikula, Jani > <jani.nikula@intel.com> > Subject: [Intel-gfx] [PATCH v2 2/6] drm/displayid: add DisplayID v2.0 data blocks and > primary use cases > > DisplayID v2.0 changes the data block identifiers and product types (now called > primary use cases). Looks ok to me. Reviewed-by: Uma Shankar <uma.shankar@intel.com> > Signed-off-by: Jani Nikula <jani.nikula@intel.com> > --- > include/drm/drm_displayid.h | 29 +++++++++++++++++++++++++++++ > 1 file changed, 29 insertions(+) > > diff --git a/include/drm/drm_displayid.h b/include/drm/drm_displayid.h index > 0ed9445b5482..79771091771a 100644 > --- a/include/drm/drm_displayid.h > +++ b/include/drm/drm_displayid.h > @@ -26,6 +26,10 @@ > > struct edid; > > +/* DisplayID Structure versions */ > +#define DISPLAY_ID_STRUCTURE_VER_12 0x12 > +#define DISPLAY_ID_STRUCTURE_VER_20 0x20 > + > /* DisplayID Structure v1r2 Data Blocks */ > #define DATA_BLOCK_PRODUCT_ID 0x00 > #define DATA_BLOCK_DISPLAY_PARAMETERS 0x01 > @@ -48,6 +52,20 @@ struct edid; > #define DATA_BLOCK_VENDOR_SPECIFIC 0x7f > #define DATA_BLOCK_CTA 0x81 > > +/* DisplayID Structure v2r0 Data Blocks */ > +#define DATA_BLOCK_2_PRODUCT_ID 0x20 > +#define DATA_BLOCK_2_DISPLAY_PARAMETERS 0x21 > +#define DATA_BLOCK_2_TYPE_7_DETAILED_TIMING 0x22 > +#define DATA_BLOCK_2_TYPE_8_ENUMERATED_TIMING 0x23 > +#define DATA_BLOCK_2_TYPE_9_FORMULA_TIMING 0x24 > +#define DATA_BLOCK_2_DYNAMIC_VIDEO_TIMING 0x25 > +#define DATA_BLOCK_2_DISPLAY_INTERFACE_FEATURES 0x26 > +#define DATA_BLOCK_2_STEREO_DISPLAY_INTERFACE 0x27 > +#define DATA_BLOCK_2_TILED_DISPLAY_TOPOLOGY 0x28 > +#define DATA_BLOCK_2_CONTAINER_ID 0x29 > +#define DATA_BLOCK_2_VENDOR_SPECIFIC 0x7e > +#define DATA_BLOCK_2_CTA_DISPLAY_ID 0x81 > + > /* DisplayID Structure v1r2 Product Type */ > #define PRODUCT_TYPE_EXTENSION 0 > #define PRODUCT_TYPE_TEST 1 > @@ -57,6 +75,17 @@ struct edid; > #define PRODUCT_TYPE_REPEATER 5 > #define PRODUCT_TYPE_DIRECT_DRIVE 6 > > +/* DisplayID Structure v2r0 Display Product Primary Use Case (~Product Type) */ > +#define PRIMARY_USE_EXTENSION 0 > +#define PRIMARY_USE_TEST 1 > +#define PRIMARY_USE_GENERIC 2 > +#define PRIMARY_USE_TV 3 > +#define PRIMARY_USE_DESKTOP_PRODUCTIVITY 4 > +#define PRIMARY_USE_DESKTOP_GAMING 5 > +#define PRIMARY_USE_PRESENTATION 6 > +#define PRIMARY_USE_HEAD_MOUNTED_VR 7 > +#define PRIMARY_USE_HEAD_MOUNTED_AR 8 > + > struct displayid_header { > u8 rev; > u8 bytes; > -- > 2.30.2
diff --git a/include/drm/drm_displayid.h b/include/drm/drm_displayid.h index 0ed9445b5482..79771091771a 100644 --- a/include/drm/drm_displayid.h +++ b/include/drm/drm_displayid.h @@ -26,6 +26,10 @@ struct edid; +/* DisplayID Structure versions */ +#define DISPLAY_ID_STRUCTURE_VER_12 0x12 +#define DISPLAY_ID_STRUCTURE_VER_20 0x20 + /* DisplayID Structure v1r2 Data Blocks */ #define DATA_BLOCK_PRODUCT_ID 0x00 #define DATA_BLOCK_DISPLAY_PARAMETERS 0x01 @@ -48,6 +52,20 @@ struct edid; #define DATA_BLOCK_VENDOR_SPECIFIC 0x7f #define DATA_BLOCK_CTA 0x81 +/* DisplayID Structure v2r0 Data Blocks */ +#define DATA_BLOCK_2_PRODUCT_ID 0x20 +#define DATA_BLOCK_2_DISPLAY_PARAMETERS 0x21 +#define DATA_BLOCK_2_TYPE_7_DETAILED_TIMING 0x22 +#define DATA_BLOCK_2_TYPE_8_ENUMERATED_TIMING 0x23 +#define DATA_BLOCK_2_TYPE_9_FORMULA_TIMING 0x24 +#define DATA_BLOCK_2_DYNAMIC_VIDEO_TIMING 0x25 +#define DATA_BLOCK_2_DISPLAY_INTERFACE_FEATURES 0x26 +#define DATA_BLOCK_2_STEREO_DISPLAY_INTERFACE 0x27 +#define DATA_BLOCK_2_TILED_DISPLAY_TOPOLOGY 0x28 +#define DATA_BLOCK_2_CONTAINER_ID 0x29 +#define DATA_BLOCK_2_VENDOR_SPECIFIC 0x7e +#define DATA_BLOCK_2_CTA_DISPLAY_ID 0x81 + /* DisplayID Structure v1r2 Product Type */ #define PRODUCT_TYPE_EXTENSION 0 #define PRODUCT_TYPE_TEST 1 @@ -57,6 +75,17 @@ struct edid; #define PRODUCT_TYPE_REPEATER 5 #define PRODUCT_TYPE_DIRECT_DRIVE 6 +/* DisplayID Structure v2r0 Display Product Primary Use Case (~Product Type) */ +#define PRIMARY_USE_EXTENSION 0 +#define PRIMARY_USE_TEST 1 +#define PRIMARY_USE_GENERIC 2 +#define PRIMARY_USE_TV 3 +#define PRIMARY_USE_DESKTOP_PRODUCTIVITY 4 +#define PRIMARY_USE_DESKTOP_GAMING 5 +#define PRIMARY_USE_PRESENTATION 6 +#define PRIMARY_USE_HEAD_MOUNTED_VR 7 +#define PRIMARY_USE_HEAD_MOUNTED_AR 8 + struct displayid_header { u8 rev; u8 bytes;
DisplayID v2.0 changes the data block identifiers and product types (now called primary use cases). Signed-off-by: Jani Nikula <jani.nikula@intel.com> --- include/drm/drm_displayid.h | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)