[PATCH i-g-t 1/4] lib/intel: Extract gem_store_dword_needs_physical()
Ville Syrjala
ville.syrjala at linux.intel.com
Wed Oct 2 10:45:12 UTC 2024
From: Ville Syrjälä <ville.syrjala at linux.intel.com>
Extract a small helper that can determine if MI_STORE_DWORD
operates with physical addresses or not.
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
---
lib/igt_gt.c | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/lib/igt_gt.c b/lib/igt_gt.c
index 9641a6610bf2..331783e49acf 100644
--- a/lib/igt_gt.c
+++ b/lib/igt_gt.c
@@ -655,21 +655,27 @@ unsigned intel_detect_and_clear_missed_interrupts(int fd)
return missed;
}
+static bool gem_store_dword_needs_physical(const struct intel_device_info *info)
+{
+ switch (info->graphics_ver) {
+ case 2:
+ return true;
+ case 3:
+ return info->is_grantsdale || info->is_alviso;
+ default:
+ return false;
+ }
+}
+
bool gem_class_can_store_dword(int fd, int class)
{
uint16_t devid = intel_get_drm_devid(fd);
const struct intel_device_info *info = intel_get_device_info(devid);
const int ver = info->graphics_ver;
- if (ver == 0) /* unknown, assume it just works */
- return true;
-
- if (ver <= 2) /* requires physical addresses */
+ if (gem_store_dword_needs_physical(info))
return false;
- if (ver == 3 && (info->is_grantsdale || info->is_alviso))
- return false; /* only supports physical addresses */
-
if (ver == 6 && class == I915_ENGINE_CLASS_VIDEO)
return false; /* broken, unbelievably broken */
--
2.45.2
More information about the igt-dev
mailing list