diff options
author | Nirmoy Das <nirmoy.das@intel.com> | 2022-07-06 14:01:42 +0200 |
---|---|---|
committer | Matthew Auld <matthew.auld@intel.com> | 2022-07-07 09:19:40 +0100 |
commit | 671332047e6e9d110c53f3e4511d1c243fe849bf (patch) | |
tree | 357987f1463e3a74b02a50b0747f0ce97a695488 | |
parent | 8aad1e6351d7932b33d4b460d863252eae1123b2 (diff) |
lib/i915: Add graphics release subversion to device info
Record the minor incremental changes between the major gen12 platforms as
a release version.
v2: add missing "," to last struct member and move
graphics_rel next to graphics_ver.
v3: add graphics_rel for ats-m and other minor fixes.
Acked-by: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Zbigniew KempczyĆski <zbigniew.kempczynski@intel.com>
Suggested-by: Chris Wilson <chris.p.wilson@intel.com>
Signed-off-by: Nirmoy Das <nirmoy.das@intel.com>
-rw-r--r-- | lib/intel_chipset.h | 4 | ||||
-rw-r--r-- | lib/intel_device_info.c | 10 |
2 files changed, 14 insertions, 0 deletions
diff --git a/lib/intel_chipset.h b/lib/intel_chipset.h index 06f73211..d7a6ff19 100644 --- a/lib/intel_chipset.h +++ b/lib/intel_chipset.h @@ -38,6 +38,7 @@ uint32_t intel_get_drm_devid(int fd); struct intel_device_info { unsigned graphics_ver; + unsigned graphics_rel; unsigned display_ver; unsigned gt; /* 0 if unknown */ bool has_4tile : 1; @@ -90,6 +91,7 @@ struct intel_device_info { const struct intel_device_info *intel_get_device_info(uint16_t devid) __attribute__((pure)); unsigned intel_gen(uint16_t devid) __attribute__((pure)); +unsigned intel_graphics_ver(uint16_t devid) __attribute__((pure)); unsigned intel_display_ver(uint16_t devid) __attribute__((pure)); extern enum pch_type intel_pch; @@ -107,6 +109,8 @@ void intel_check_pch(void); #define HAS_CPT (intel_pch == PCH_CPT) #define HAS_LPT (intel_pch == PCH_LPT) +#define IP_VER(ver, rel) ((ver) << 8 | (rel)) + /* Exclude chipset #defines, they just add noise */ #ifndef __GTK_DOC_IGNORE__ diff --git a/lib/intel_device_info.c b/lib/intel_device_info.c index bfdd9fa5..ebfcea73 100644 --- a/lib/intel_device_info.c +++ b/lib/intel_device_info.c @@ -385,6 +385,7 @@ static const struct intel_device_info intel_rocketlake_info = { static const struct intel_device_info intel_dg1_info = { .graphics_ver = 12, + .graphics_rel = 10, .display_ver = 12, .is_dg1 = true, .codename = "dg1" @@ -392,6 +393,7 @@ static const struct intel_device_info intel_dg1_info = { static const struct intel_device_info intel_dg2_info = { .graphics_ver = 12, + .graphics_rel = 55, .display_ver = 13, .has_4tile = true, .is_dg2 = true, @@ -429,6 +431,7 @@ static const struct intel_device_info intel_alderlake_n_info = { static const struct intel_device_info intel_ats_m_info = { .graphics_ver = 12, + .graphics_rel = 55, .display_ver = 0, /* no display support */ .is_dg2 = true, .has_4tile = true, @@ -583,6 +586,13 @@ unsigned intel_gen(uint16_t devid) return intel_get_device_info(devid)->graphics_ver ?: -1u; } +unsigned intel_graphics_ver(uint16_t devid) +{ + const struct intel_device_info *info = intel_get_device_info(devid); + + return IP_VER(info->graphics_ver, info->graphics_rel); +} + /** * intel_display_ver: * @devid: pci device id |