40 lines
913 B
C
40 lines
913 B
C
/* SPDX-License-Identifier: MIT */
|
|
/*
|
|
* Copyright 2024 Advanced Micro Devices, Inc.
|
|
*
|
|
* Lockdep annotation interface for AMDGPU
|
|
*/
|
|
|
|
#ifndef __AMDGPU_LOCKDEP_H__
|
|
#define __AMDGPU_LOCKDEP_H__
|
|
|
|
#include <linux/lockdep.h>
|
|
|
|
struct amdgpu_device;
|
|
|
|
#ifdef CONFIG_LOCKDEP
|
|
|
|
/**
|
|
* amdgpu_lockdep_init - Train lockdep on correct lock ordering
|
|
*
|
|
* Call once during module init to establish the lock dependency chain.
|
|
*/
|
|
int amdgpu_lockdep_init(void);
|
|
|
|
/**
|
|
* amdgpu_lockdep_set_class - Associate lock class keys with real locks
|
|
* @adev: AMDGPU device
|
|
*
|
|
* Call during device init to associate lock classes with actual locks.
|
|
*/
|
|
void amdgpu_lockdep_set_class(struct amdgpu_device *adev);
|
|
|
|
#else /* !CONFIG_LOCKDEP */
|
|
|
|
static inline int amdgpu_lockdep_init(void) { return 0; }
|
|
static inline void amdgpu_lockdep_set_class(struct amdgpu_device *adev) {}
|
|
|
|
#endif /* CONFIG_LOCKDEP */
|
|
|
|
#endif /* __AMDGPU_LOCKDEP_H__ */
|