Go to the source code of this file.
Macros | |
#define | BAT_RPN (~0x1ffff) /* physical block start */ |
#define | BAT_XPN 0x00000e00 /* eXtended physical page number (0-2) */ |
#define | BAT_W 0x00000040 /* 1 = write-through, 0 = write-back */ |
#define | BAT_I 0x00000020 /* cache inhibit */ |
#define | BAT_M 0x00000010 /* memory coherency enable */ |
#define | BAT_G 0x00000008 /* guarded region (not on 601) */ |
#define | BAT_X 0x00000004 /* eXtended physical page number (3) */ |
#define | BAT_PP 0x00000003 /* PP mask */ |
#define | BAT_PP_NONE 0x00000000 /* no access permission */ |
#define | BAT_PP_RO_S 0x00000001 /* read-only (soft) */ |
#define | BAT_PP_RW 0x00000002 /* read/write */ |
#define | BAT_PP_RO 0x00000003 /* read-only */ |
#define | BAT_EPI (~0x1ffffL) /* effective block start */ |
#define | BAT_BL 0x00001ffc /* block length */ |
#define | BAT_Vs 0x00000002 /* valid in supervisor mode */ |
#define | BAT_Vu 0x00000001 /* valid in user mode */ |
#define | BAT_XBL 0x0001e000 /* eXtended Block Length (*) */ |
#define | BAT_XBL_512M 0x00002000 /* XBL for 512MB */ |
#define | BAT_XBL_1G 0x00006000 /* XBL for 1GB */ |
#define | BAT_XBL_2G 0x0000e000 /* XBL for 2GB */ |
#define | BAT_XBL_4G 0x0001e000 /* XBL for 4GB */ |
#define | BAT_V (BAT_Vs|BAT_Vu) |
#define | BAT_BL_128K 0x00000000 |
#define | BAT_BL_256K 0x00000004 |
#define | BAT_BL_512K 0x0000000c |
#define | BAT_BL_1M 0x0000001c |
#define | BAT_BL_2M 0x0000003c |
#define | BAT_BL_4M 0x0000007c |
#define | BAT_BL_8M 0x000000fc |
#define | BAT_BL_16M 0x000001fc |
#define | BAT_BL_32M 0x000003fc |
#define | BAT_BL_64M 0x000007fc |
#define | BAT_BL_128M 0x00000ffc |
#define | BAT_BL_256M 0x00001ffc |
#define | BATU(va, len, v) (((va) & BAT_EPI) | ((len) & BAT_BL) | ((v) & BAT_V)) |
#define | BATL(pa, wimg, pp) (((pa) & BAT_RPN) | (wimg) | (pp)) |
#define | BAT_VA_MATCH_P(batu, va) (((~(((batu)&BAT_BL)<<15))&(va)&BAT_EPI)==((batu)&BAT_EPI)) |
#define | BAT_PA_MATCH_P(batu, batl, pa) (((~(((batu)&BAT_BL)<<15))&(pa)&BAT_RPN)==((batl)&BAT_RPN)) |
#define | BAT_VALID_P(batu, msr) (((msr)&PSL_PR)?(((batu)&BAT_Vu)==BAT_Vu):(((batu)&BAT_Vs)==BAT_Vs)) |
#define | BAT601_PBN 0xfffe0000 /* physical block number */ |
#define | BAT601_V 0x00000040 /* valid */ |
#define | BAT601_BSM 0x0000003f /* block size mask */ |
#define | BAT601_BLPI 0xfffe0000 /* block logical page index */ |
#define | BAT601_W 0x00000040 /* 1 = write-through, 0 = write-back */ |
#define | BAT601_I 0x00000020 /* cache inhibit */ |
#define | BAT601_M 0x00000010 /* memory coherency enable */ |
#define | BAT601_Ks 0x00000008 /* key-supervisor */ |
#define | BAT601_Ku 0x00000004 /* key-user */ |
#define | BAT601_PP 0x00000003 |
#define | BAT601_PP_NONE 0x00000000 /* no access permission */ |
#define | BAT601_PP_RO_S 0x00000001 /* read-only (soft) */ |
#define | BAT601_PP_RW 0x00000002 /* read/write */ |
#define | BAT601_PP_RO 0x00000003 /* read-only */ |
#define | BAT601_BSM_128K 0x00000000 |
#define | BAT601_BSM_256K 0x00000001 |
#define | BAT601_BSM_512K 0x00000003 |
#define | BAT601_BSM_1M 0x00000007 |
#define | BAT601_BSM_2M 0x0000000f |
#define | BAT601_BSM_4M 0x0000001f |
#define | BAT601_BSM_8M 0x0000003f |
#define | BATU601(va, wim, key, pp) (((va) & BAT601_BLPI) | (wim) | (key) | (pp)) |
#define | BATL601(pa, size, v) (((pa) & BAT601_PBN) | (v) | (size)) |
#define | BAT601_VA_MATCH_P(batu, batl, va) (((~(((batl)&BAT601_BSM)<<17))&(va)&BAT601_BLPI)==((batu)&BAT601_BLPI)) |
#define | BAT601_VALID_P(batl) ((batl) & BAT601_V) |
#define BAT601_BLPI 0xfffe0000 /* block logical page index */ |
#define BAT601_PP_NONE 0x00000000 /* no access permission */ |
#define BAT601_VA_MATCH_P | ( | batu, | |
batl, | |||
va | |||
) | (((~(((batl)&BAT601_BSM)<<17))&(va)&BAT601_BLPI)==((batu)&BAT601_BLPI)) |
#define BAT601_W 0x00000040 /* 1 = write-through, 0 = write-back */ |
#define BAT_BL 0x00001ffc /* block length */ |
Definition at line 105 of file ppc_bat.h.
Referenced by ppc_bat(), and ppc_cpu_register_dump().
#define BAT_EPI (~0x1ffffL) /* effective block start */ |
#define BAT_G 0x00000008 /* guarded region (not on 601) */ |
Definition at line 89 of file ppc_bat.h.
Referenced by ppc_cpu_register_dump().
#define BAT_I 0x00000020 /* cache inhibit */ |
Definition at line 87 of file ppc_bat.h.
Referenced by ppc_cpu_register_dump().
#define BAT_M 0x00000010 /* memory coherency enable */ |
Definition at line 88 of file ppc_bat.h.
Referenced by ppc_cpu_register_dump().
#define BAT_PP 0x00000003 /* PP mask */ |
Definition at line 97 of file ppc_bat.h.
Referenced by ppc_bat(), and ppc_cpu_register_dump().
#define BAT_PP_NONE 0x00000000 /* no access permission */ |
Definition at line 98 of file ppc_bat.h.
Referenced by ppc_bat(), and ppc_cpu_register_dump().
#define BAT_PP_RO 0x00000003 /* read-only */ |
Definition at line 101 of file ppc_bat.h.
Referenced by ppc_bat(), and ppc_cpu_register_dump().
#define BAT_PP_RO_S 0x00000001 /* read-only (soft) */ |
Definition at line 99 of file ppc_bat.h.
Referenced by ppc_bat(), and ppc_cpu_register_dump().
#define BAT_PP_RW 0x00000002 /* read/write */ |
Definition at line 100 of file ppc_bat.h.
Referenced by ppc_cpu_new(), and ppc_cpu_register_dump().
#define BAT_RPN (~0x1ffff) /* physical block start */ |
Definition at line 115 of file ppc_bat.h.
Referenced by ppc_cpu_register_dump().
#define BAT_Vs 0x00000002 /* valid in supervisor mode */ |
Definition at line 106 of file ppc_bat.h.
Referenced by ppc_bat(), ppc_cpu_new(), and ppc_cpu_register_dump().
#define BAT_Vu 0x00000001 /* valid in user mode */ |
Definition at line 107 of file ppc_bat.h.
Referenced by ppc_bat(), and ppc_cpu_register_dump().
#define BAT_W 0x00000040 /* 1 = write-through, 0 = write-back */ |
Definition at line 86 of file ppc_bat.h.
Referenced by ppc_cpu_register_dump().
#define BAT_X 0x00000004 /* eXtended physical page number (3) */ |
#define BAT_XBL 0x0001e000 /* eXtended Block Length (*) */ |
#define BAT_XPN 0x00000e00 /* eXtended physical page number (0-2) */ |
#define BATL | ( | pa, | |
wimg, | |||
pp | |||
) | (((pa) & BAT_RPN) | (wimg) | (pp)) |
#define BATL601 | ( | pa, | |
size, | |||
v | |||
) | (((pa) & BAT601_PBN) | (v) | (size)) |
#define BATU601 | ( | va, | |
wim, | |||
key, | |||
pp | |||
) | (((va) & BAT601_BLPI) | (wim) | (key) | (pp)) |