blob: 4301c6fd87f7acb32215e3650e3edd5a54ad1024 [file] [log] [blame]
/* SPDX-License-Identifier: GPL-2.0-only */
/* adi_64.h: ADI related data structures
*
* Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
* Author: Khalid Aziz (khalid.aziz@oracle.com)
*/
#ifndef __ASM_SPARC64_ADI_H
#define __ASM_SPARC64_ADI_H
#include <linux/types.h>
#ifndef __ASSEMBLY__
struct adi_caps {
__u64 blksz;
__u64 nbits;
__u64 ue_on_adi;
};
struct adi_config {
bool enabled;
struct adi_caps caps;
};
extern struct adi_config adi_state;
extern void mdesc_adi_init(void);
static inline bool adi_capable(void)
{
return adi_state.enabled;
}
static inline unsigned long adi_blksize(void)
{
return adi_state.caps.blksz;
}
static inline unsigned long adi_nbits(void)
{
return adi_state.caps.nbits;
}
#endif /* __ASSEMBLY__ */
#endif /* !(__ASM_SPARC64_ADI_H) */