root/arch/powerpc/sysdev/dart.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-or-later */
   2 /*
   3  * Copyright (C) 2004 Olof Johansson <olof@lixom.net>, IBM Corporation
   4  */
   5 
   6 #ifndef _POWERPC_SYSDEV_DART_H
   7 #define _POWERPC_SYSDEV_DART_H
   8 
   9 
  10 /* Offset from base to control register */
  11 #define DART_CNTL       0
  12 
  13 /* Offset from base to exception register */
  14 #define DART_EXCP_U3    0x10
  15 /* Offset from base to TLB tag registers */
  16 #define DART_TAGS_U3    0x1000
  17 
  18 /* U4 registers */
  19 #define DART_BASE_U4    0x10
  20 #define DART_SIZE_U4    0x20
  21 #define DART_EXCP_U4    0x30
  22 #define DART_TAGS_U4    0x1000
  23 
  24 /* Control Register fields */
  25 
  26 /* U3 registers */
  27 #define DART_CNTL_U3_BASE_MASK  0xfffff
  28 #define DART_CNTL_U3_BASE_SHIFT 12
  29 #define DART_CNTL_U3_FLUSHTLB   0x400
  30 #define DART_CNTL_U3_ENABLE     0x200
  31 #define DART_CNTL_U3_SIZE_MASK  0x1ff
  32 #define DART_CNTL_U3_SIZE_SHIFT 0
  33 
  34 /* U4 registers */
  35 #define DART_BASE_U4_BASE_MASK  0xffffff
  36 #define DART_BASE_U4_BASE_SHIFT 0
  37 #define DART_CNTL_U4_ENABLE     0x80000000
  38 #define DART_CNTL_U4_IONE       0x40000000
  39 #define DART_CNTL_U4_FLUSHTLB   0x20000000
  40 #define DART_CNTL_U4_IDLE       0x10000000
  41 #define DART_CNTL_U4_PAR_EN     0x08000000
  42 #define DART_CNTL_U4_IONE_MASK  0x07ffffff
  43 #define DART_SIZE_U4_SIZE_MASK  0x1fff
  44 #define DART_SIZE_U4_SIZE_SHIFT 0
  45 
  46 #define DART_REG(r)     (dart + ((r) >> 2))
  47 #define DART_IN(r)      (in_be32(DART_REG(r)))
  48 #define DART_OUT(r,v)   (out_be32(DART_REG(r), (v)))
  49 
  50 
  51 /* size of table in pages */
  52 
  53 
  54 /* DART table fields */
  55 
  56 #define DARTMAP_VALID   0x80000000
  57 #define DARTMAP_RPNMASK 0x00ffffff
  58 
  59 
  60 #define DART_PAGE_SHIFT         12
  61 #define DART_PAGE_SIZE          (1 << DART_PAGE_SHIFT)
  62 
  63 
  64 #endif /* _POWERPC_SYSDEV_DART_H */

/* [<][>][^][v][top][bottom][index][help] */