mirror of
https://github.com/torvalds/linux.git
synced 2026-05-26 08:02:27 +02:00
drm/i915/lrc: switch to _MASKED_BIT_ENABLE() and _MASKED_BIT_DISABLE()
Since it's now possible to use _MASKED_BIT_ENABLE() and _MASKED_BIT_DISABLE() in the array initializer, switch to them. This allows us to remove __MASKED_FIELD() macro. Reviewed-by: Michał Grzelak <michal.grzelak@intel.com> Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Link: https://patch.msgid.link/733568f8a6155b6e2da1dcdce9d21d6aab881449.1772042022.git.jani.nikula@intel.com Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
parent
b6d558af2d
commit
fa3fe9d9e1
|
|
@ -1736,22 +1736,19 @@ static u32 *gen9_init_indirectctx_bb(struct intel_engine_cs *engine, u32 *batch)
|
|||
/* WaDisableGatherAtSetShaderCommonSlice:skl,bxt,kbl,glk */
|
||||
{
|
||||
COMMON_SLICE_CHICKEN2,
|
||||
__MASKED_FIELD(GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE,
|
||||
0),
|
||||
_MASKED_BIT_DISABLE(GEN9_DISABLE_GATHER_AT_SET_SHADER_COMMON_SLICE),
|
||||
},
|
||||
|
||||
/* BSpec: 11391 */
|
||||
{
|
||||
FF_SLICE_CHICKEN,
|
||||
__MASKED_FIELD(FF_SLICE_CHICKEN_CL_PROVOKING_VERTEX_FIX,
|
||||
FF_SLICE_CHICKEN_CL_PROVOKING_VERTEX_FIX),
|
||||
_MASKED_BIT_ENABLE(FF_SLICE_CHICKEN_CL_PROVOKING_VERTEX_FIX),
|
||||
},
|
||||
|
||||
/* BSpec: 11299 */
|
||||
{
|
||||
_3D_CHICKEN3,
|
||||
__MASKED_FIELD(_3D_CHICKEN_SF_PROVOKING_VERTEX_FIX,
|
||||
_3D_CHICKEN_SF_PROVOKING_VERTEX_FIX),
|
||||
_MASKED_BIT_ENABLE(_3D_CHICKEN_SF_PROVOKING_VERTEX_FIX),
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -105,12 +105,11 @@
|
|||
BUILD_BUG_ON_ZERO(!IS_POWER_OF_2((__mask) + (1ULL << __bf_shf(__mask)))) + \
|
||||
BUILD_BUG_ON_ZERO(__builtin_choose_expr(__is_constexpr(__val), (~((__mask) >> __bf_shf(__mask)) & (__val)), 0))))
|
||||
|
||||
#define __MASKED_FIELD(mask, value) ((mask) << 16 | (value))
|
||||
#define _MASKED_FIELD(mask, value) \
|
||||
(BUILD_BUG_ON_ZERO(__builtin_choose_expr(__builtin_constant_p(mask), (mask) & 0xffff0000, 0)) + \
|
||||
BUILD_BUG_ON_ZERO(__builtin_choose_expr(__builtin_constant_p(value), (value) & 0xffff0000, 0)) + \
|
||||
BUILD_BUG_ON_ZERO(__builtin_choose_expr(__builtin_constant_p(mask) && __builtin_constant_p(value), (value) & ~(mask), 0)) + \
|
||||
__MASKED_FIELD(mask, value))
|
||||
((mask) << 16 | (value)))
|
||||
|
||||
#define _MASKED_BIT_ENABLE(a) \
|
||||
(__builtin_choose_expr(__builtin_constant_p(a), _MASKED_FIELD((a), (a)), ({ typeof(a) _a = (a); _MASKED_FIELD(_a, _a); })))
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user