linux/arch/sparc/include/asm/adi_64.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-only */
   2/* adi_64.h: ADI related data structures
   3 *
   4 * Copyright (c) 2016 Oracle and/or its affiliates. All rights reserved.
   5 * Author: Khalid Aziz (khalid.aziz@oracle.com)
   6 */
   7#ifndef __ASM_SPARC64_ADI_H
   8#define __ASM_SPARC64_ADI_H
   9
  10#include <linux/types.h>
  11
  12#ifndef __ASSEMBLY__
  13
  14struct adi_caps {
  15        __u64 blksz;
  16        __u64 nbits;
  17        __u64 ue_on_adi;
  18};
  19
  20struct adi_config {
  21        bool enabled;
  22        struct adi_caps caps;
  23};
  24
  25extern struct adi_config adi_state;
  26
  27extern void mdesc_adi_init(void);
  28
  29static inline bool adi_capable(void)
  30{
  31        return adi_state.enabled;
  32}
  33
  34static inline unsigned long adi_blksize(void)
  35{
  36        return adi_state.caps.blksz;
  37}
  38
  39static inline unsigned long adi_nbits(void)
  40{
  41        return adi_state.caps.nbits;
  42}
  43
  44#endif  /* __ASSEMBLY__ */
  45
  46#endif  /* !(__ASM_SPARC64_ADI_H) */
  47