mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-27 12:57:53 +00:00
c73acc1eeb
The XE_WARN_ON macro maps to WARN_ON which is not justified in many cases where only a simple debug check is needed. Replace the use of the XE_WARN_ON macro with the new xe_assert macros which relies on drm_*. This takes a struct drm_device argument, which is one of the main changes in this commit. The other main change is that the condition is reversed, as with XE_WARN_ON a message is displayed if the condition is true, whereas with xe_assert it is if the condition is false. v2: - Rebase - Keep WARN splats in xe_wopcm.c (Matt Roper) v3: - Rebase Signed-off-by: Francois Dugast <francois.dugast@intel.com> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
38 lines
906 B
C
38 lines
906 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright © 2022 Intel Corporation
|
|
*/
|
|
|
|
#ifndef _XE_FORCE_WAKE_H_
|
|
#define _XE_FORCE_WAKE_H_
|
|
|
|
#include "xe_assert.h"
|
|
#include "xe_force_wake_types.h"
|
|
|
|
struct xe_gt;
|
|
|
|
void xe_force_wake_init_gt(struct xe_gt *gt,
|
|
struct xe_force_wake *fw);
|
|
void xe_force_wake_init_engines(struct xe_gt *gt,
|
|
struct xe_force_wake *fw);
|
|
int xe_force_wake_get(struct xe_force_wake *fw,
|
|
enum xe_force_wake_domains domains);
|
|
int xe_force_wake_put(struct xe_force_wake *fw,
|
|
enum xe_force_wake_domains domains);
|
|
|
|
static inline int
|
|
xe_force_wake_ref(struct xe_force_wake *fw,
|
|
enum xe_force_wake_domains domain)
|
|
{
|
|
xe_gt_assert(fw->gt, domain);
|
|
return fw->domains[ffs(domain) - 1].ref;
|
|
}
|
|
|
|
static inline void
|
|
xe_force_wake_assert_held(struct xe_force_wake *fw,
|
|
enum xe_force_wake_domains domain)
|
|
{
|
|
xe_gt_assert(fw->gt, fw->awake_domains & domain);
|
|
}
|
|
|
|
#endif
|