drm/xe/oa/uapi: Make bit masks unsigned
authorGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 29 Jul 2024 09:26:34 +0000 (11:26 +0200)
committerLucas De Marchi <lucas.demarchi@intel.com>
Tue, 30 Jul 2024 20:45:38 +0000 (13:45 -0700)
When building with gcc-5:

    In function ‘decode_oa_format.isra.26’,
inlined from ‘xe_oa_set_prop_oa_format’ at drivers/gpu/drm/xe/xe_oa.c:1664:6:
    ././include/linux/compiler_types.h:510:38: error: call to ‘__compiletime_assert_1336’ declared with attribute error: FIELD_GET: mask is not constant
    [...]
    ./include/linux/bitfield.h:155:3: note: in expansion of macro ‘__BF_FIELD_CHECK’
       __BF_FIELD_CHECK(_mask, _reg, 0U, "FIELD_GET: "); \
       ^
    drivers/gpu/drm/xe/xe_oa.c:1573:18: note: in expansion of macro ‘FIELD_GET’
      u32 bc_report = FIELD_GET(DRM_XE_OA_FORMAT_MASK_BC_REPORT, fmt);
      ^

Fixes: b6fd51c62119 ("drm/xe/oa/uapi: Define and parse OA stream properties")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240729092634.2227611-1-geert+renesas@glider.be
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
include/uapi/drm/xe_drm.h

index 29425d7..b6fbe49 100644 (file)
@@ -1598,10 +1598,10 @@ enum drm_xe_oa_property_id {
         * b. Counter select c. Counter size and d. BC report. Also refer to the
         * oa_formats array in drivers/gpu/drm/xe/xe_oa.c.
         */
-#define DRM_XE_OA_FORMAT_MASK_FMT_TYPE         (0xff << 0)
-#define DRM_XE_OA_FORMAT_MASK_COUNTER_SEL      (0xff << 8)
-#define DRM_XE_OA_FORMAT_MASK_COUNTER_SIZE     (0xff << 16)
-#define DRM_XE_OA_FORMAT_MASK_BC_REPORT                (0xff << 24)
+#define DRM_XE_OA_FORMAT_MASK_FMT_TYPE         (0xffu << 0)
+#define DRM_XE_OA_FORMAT_MASK_COUNTER_SEL      (0xffu << 8)
+#define DRM_XE_OA_FORMAT_MASK_COUNTER_SIZE     (0xffu << 16)
+#define DRM_XE_OA_FORMAT_MASK_BC_REPORT                (0xffu << 24)
 
        /**
         * @DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT: Requests periodic OA unit