[PATCH V2] drm/xe/tests/mocs: Hold XE_FORCEWAKE_ALL for LNCF regs

Ghimiray, Himal Prasad himal.prasad.ghimiray at intel.com
Mon Apr 28 10:41:30 UTC 2025



On 28-04-2025 13:53, Tejas Upadhyay wrote:
> LNCF registers report wrong values when XE_FORCEWAKE_GT
> only is held. Holding XE_FORCEWAKE_ALL ensures correct
> operations on LNCF regs.
> 
> V2(Himal):
>   - Use xe_force_wake_ref_has_domain
> 
> Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/1999
> Fixes: a6a4ea6d7d37 ("drm/xe: Add mocs kunit")
> Signed-off-by: Tejas Upadhyay <tejas.upadhyay at intel.com>
> ---
>   drivers/gpu/drm/xe/tests/xe_mocs.c | 7 +++++--
>   1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/tests/xe_mocs.c b/drivers/gpu/drm/xe/tests/xe_mocs.c
> index ef1e5256c56a..0e502feaca81 100644
> --- a/drivers/gpu/drm/xe/tests/xe_mocs.c
> +++ b/drivers/gpu/drm/xe/tests/xe_mocs.c
> @@ -46,8 +46,11 @@ static void read_l3cc_table(struct xe_gt *gt,
>   	unsigned int fw_ref, i;
>   	u32 reg_val;
>   
> -	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FW_GT);
> -	KUNIT_ASSERT_NE_MSG(test, fw_ref, 0, "Forcewake Failed.\n");
> +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL)) {
> +		xe_force_wake_put(gt_to_fw(gt), fw_ref);
> +		KUNIT_ASSERT_TRUE_MSG(test, true, "Forcewake Failed.\n");
> +	}

Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray at intel.com>

>   
>   	for (i = 0; i < info->num_mocs_regs; i++) {
>   		if (!(i & 1)) {



More information about the Intel-xe mailing list