Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
pvr.h File Reference

Go to the source code of this file.

Data Structures

struct  pvr_s
 

Macros

#define PVR_MSR_BIT   0x400
 
#define PVR0_PVR_FULL_MASK   0x80000000
 
#define PVR0_USE_BARREL_MASK   0x40000000
 
#define PVR0_USE_DIV_MASK   0x20000000
 
#define PVR0_USE_HW_MUL_MASK   0x10000000
 
#define PVR0_USE_FPU_MASK   0x08000000
 
#define PVR0_USE_EXC_MASK   0x04000000
 
#define PVR0_USE_ICACHE_MASK   0x02000000
 
#define PVR0_USE_DCACHE_MASK   0x01000000
 
#define PVR0_USE_MMU   0x00800000
 
#define PVR0_USE_BTC   0x00400000
 
#define PVR0_ENDI   0x00200000
 
#define PVR0_VERSION_MASK   0x0000FF00
 
#define PVR0_USER1_MASK   0x000000FF
 
#define PVR1_USER2_MASK   0xFFFFFFFF
 
#define PVR2_D_OPB_MASK   0x80000000 /* or AXI */
 
#define PVR2_D_LMB_MASK   0x40000000
 
#define PVR2_I_OPB_MASK   0x20000000 /* or AXI */
 
#define PVR2_I_LMB_MASK   0x10000000
 
#define PVR2_INTERRUPT_IS_EDGE_MASK   0x08000000
 
#define PVR2_EDGE_IS_POSITIVE_MASK   0x04000000
 
#define PVR2_D_PLB_MASK   0x02000000 /* new */
 
#define PVR2_I_PLB_MASK   0x01000000 /* new */
 
#define PVR2_INTERCONNECT   0x00800000 /* new */
 
#define PVR2_USE_EXTEND_FSL   0x00080000 /* new */
 
#define PVR2_USE_FSL_EXC   0x00040000 /* new */
 
#define PVR2_USE_MSR_INSTR   0x00020000
 
#define PVR2_USE_PCMP_INSTR   0x00010000
 
#define PVR2_AREA_OPTIMISED   0x00008000
 
#define PVR2_USE_BARREL_MASK   0x00004000
 
#define PVR2_USE_DIV_MASK   0x00002000
 
#define PVR2_USE_HW_MUL_MASK   0x00001000
 
#define PVR2_USE_FPU_MASK   0x00000800
 
#define PVR2_USE_MUL64_MASK   0x00000400
 
#define PVR2_USE_FPU2_MASK   0x00000200 /* new */
 
#define PVR2_USE_IPLBEXC   0x00000100
 
#define PVR2_USE_DPLBEXC   0x00000080
 
#define PVR2_OPCODE_0x0_ILL_MASK   0x00000040
 
#define PVR2_UNALIGNED_EXC_MASK   0x00000020
 
#define PVR2_ILL_OPCODE_EXC_MASK   0x00000010
 
#define PVR2_IOPB_BUS_EXC_MASK   0x00000008 /* or AXI */
 
#define PVR2_DOPB_BUS_EXC_MASK   0x00000004 /* or AXI */
 
#define PVR2_DIV_ZERO_EXC_MASK   0x00000002
 
#define PVR2_FPU_EXC_MASK   0x00000001
 
#define PVR3_DEBUG_ENABLED_MASK   0x80000000
 
#define PVR3_NUMBER_OF_PC_BRK_MASK   0x1E000000
 
#define PVR3_NUMBER_OF_RD_ADDR_BRK_MASK   0x00380000
 
#define PVR3_NUMBER_OF_WR_ADDR_BRK_MASK   0x0000E000
 
#define PVR3_FSL_LINKS_MASK   0x00000380
 
#define PVR4_USE_ICACHE_MASK   0x80000000 /* ICU */
 
#define PVR4_ICACHE_ADDR_TAG_BITS_MASK   0x7C000000 /* ICTS */
 
#define PVR4_ICACHE_ALLOW_WR_MASK   0x01000000 /* ICW */
 
#define PVR4_ICACHE_LINE_LEN_MASK   0x00E00000 /* ICLL */
 
#define PVR4_ICACHE_BYTE_SIZE_MASK   0x001F0000 /* ICBS */
 
#define PVR4_ICACHE_ALWAYS_USED   0x00008000 /* IAU */
 
#define PVR4_ICACHE_INTERFACE   0x00002000 /* ICI */
 
#define PVR5_USE_DCACHE_MASK   0x80000000 /* DCU */
 
#define PVR5_DCACHE_ADDR_TAG_BITS_MASK   0x7C000000 /* DCTS */
 
#define PVR5_DCACHE_ALLOW_WR_MASK   0x01000000 /* DCW */
 
#define PVR5_DCACHE_LINE_LEN_MASK   0x00E00000 /* DCLL */
 
#define PVR5_DCACHE_BYTE_SIZE_MASK   0x001F0000 /* DCBS */
 
#define PVR5_DCACHE_ALWAYS_USED   0x00008000 /* DAU */
 
#define PVR5_DCACHE_USE_WRITEBACK   0x00004000 /* DWB */
 
#define PVR5_DCACHE_INTERFACE   0x00002000 /* DCI */
 
#define PVR6_ICACHE_BASEADDR_MASK   0xFFFFFFFF
 
#define PVR7_ICACHE_HIGHADDR_MASK   0xFFFFFFFF
 
#define PVR8_DCACHE_BASEADDR_MASK   0xFFFFFFFF
 
#define PVR9_DCACHE_HIGHADDR_MASK   0xFFFFFFFF
 
#define PVR10_TARGET_FAMILY_MASK   0xFF000000
 
#define PVR11_USE_MMU   0xC0000000
 
#define PVR11_MMU_ITLB_SIZE   0x38000000
 
#define PVR11_MMU_DTLB_SIZE   0x07000000
 
#define PVR11_MMU_TLB_ACCESS   0x00C00000
 
#define PVR11_MMU_ZONES   0x003C0000
 
#define PVR11_MMU_PRIVINS   0x00010000
 
#define PVR11_MSR_RESET_VALUE_MASK   0x000007FF
 
#define PVR_IS_FULL(_pvr)   (_pvr.pvr[0] & PVR0_PVR_FULL_MASK)
 
#define PVR_USE_BARREL(_pvr)   (_pvr.pvr[0] & PVR0_USE_BARREL_MASK)
 
#define PVR_USE_DIV(_pvr)   (_pvr.pvr[0] & PVR0_USE_DIV_MASK)
 
#define PVR_USE_HW_MUL(_pvr)   (_pvr.pvr[0] & PVR0_USE_HW_MUL_MASK)
 
#define PVR_USE_FPU(_pvr)   (_pvr.pvr[0] & PVR0_USE_FPU_MASK)
 
#define PVR_USE_FPU2(_pvr)   (_pvr.pvr[2] & PVR2_USE_FPU2_MASK)
 
#define PVR_USE_ICACHE(_pvr)   (_pvr.pvr[0] & PVR0_USE_ICACHE_MASK)
 
#define PVR_USE_DCACHE(_pvr)   (_pvr.pvr[0] & PVR0_USE_DCACHE_MASK)
 
#define PVR_VERSION(_pvr)   ((_pvr.pvr[0] & PVR0_VERSION_MASK) >> 8)
 
#define PVR_USER1(_pvr)   (_pvr.pvr[0] & PVR0_USER1_MASK)
 
#define PVR_USER2(_pvr)   (_pvr.pvr[1] & PVR1_USER2_MASK)
 
#define PVR_D_OPB(_pvr)   (_pvr.pvr[2] & PVR2_D_OPB_MASK)
 
#define PVR_D_LMB(_pvr)   (_pvr.pvr[2] & PVR2_D_LMB_MASK)
 
#define PVR_I_OPB(_pvr)   (_pvr.pvr[2] & PVR2_I_OPB_MASK)
 
#define PVR_I_LMB(_pvr)   (_pvr.pvr[2] & PVR2_I_LMB_MASK)
 
#define PVR_INTERRUPT_IS_EDGE(_pvr)   (_pvr.pvr[2] & PVR2_INTERRUPT_IS_EDGE_MASK)
 
#define PVR_EDGE_IS_POSITIVE(_pvr)   (_pvr.pvr[2] & PVR2_EDGE_IS_POSITIVE_MASK)
 
#define PVR_USE_MSR_INSTR(_pvr)   (_pvr.pvr[2] & PVR2_USE_MSR_INSTR)
 
#define PVR_USE_PCMP_INSTR(_pvr)   (_pvr.pvr[2] & PVR2_USE_PCMP_INSTR)
 
#define PVR_AREA_OPTIMISED(_pvr)   (_pvr.pvr[2] & PVR2_AREA_OPTIMISED)
 
#define PVR_USE_MUL64(_pvr)   (_pvr.pvr[2] & PVR2_USE_MUL64_MASK)
 
#define PVR_OPCODE_0x0_ILLEGAL(_pvr)   (_pvr.pvr[2] & PVR2_OPCODE_0x0_ILL_MASK)
 
#define PVR_UNALIGNED_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_UNALIGNED_EXC_MASK)
 
#define PVR_ILL_OPCODE_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_ILL_OPCODE_EXC_MASK)
 
#define PVR_IOPB_BUS_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_IOPB_BUS_EXC_MASK)
 
#define PVR_DOPB_BUS_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_DOPB_BUS_EXC_MASK)
 
#define PVR_DIV_ZERO_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_DIV_ZERO_EXC_MASK)
 
#define PVR_FPU_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_FPU_EXC_MASK)
 
#define PVR_FSL_EXCEPTION(_pvr)   (_pvr.pvr[2] & PVR2_USE_EXTEND_FSL)
 
#define PVR_DEBUG_ENABLED(_pvr)   (_pvr.pvr[3] & PVR3_DEBUG_ENABLED_MASK)
 
#define PVR_NUMBER_OF_PC_BRK(_pvr)   ((_pvr.pvr[3] & PVR3_NUMBER_OF_PC_BRK_MASK) >> 25)
 
#define PVR_NUMBER_OF_RD_ADDR_BRK(_pvr)   ((_pvr.pvr[3] & PVR3_NUMBER_OF_RD_ADDR_BRK_MASK) >> 19)
 
#define PVR_NUMBER_OF_WR_ADDR_BRK(_pvr)   ((_pvr.pvr[3] & PVR3_NUMBER_OF_WR_ADDR_BRK_MASK) >> 13)
 
#define PVR_FSL_LINKS(_pvr)   ((_pvr.pvr[3] & PVR3_FSL_LINKS_MASK) >> 7)
 
#define PVR_ICACHE_ADDR_TAG_BITS(_pvr)   ((_pvr.pvr[4] & PVR4_ICACHE_ADDR_TAG_BITS_MASK) >> 26)
 
#define PVR_ICACHE_USE_FSL(_pvr)   (_pvr.pvr[4] & PVR4_ICACHE_USE_FSL_MASK)
 
#define PVR_ICACHE_ALLOW_WR(_pvr)   (_pvr.pvr[4] & PVR4_ICACHE_ALLOW_WR_MASK)
 
#define PVR_ICACHE_LINE_LEN(_pvr)   (1 << ((_pvr.pvr[4] & PVR4_ICACHE_LINE_LEN_MASK) >> 21))
 
#define PVR_ICACHE_BYTE_SIZE(_pvr)   (1 << ((_pvr.pvr[4] & PVR4_ICACHE_BYTE_SIZE_MASK) >> 16))
 
#define PVR_DCACHE_ADDR_TAG_BITS(_pvr)   ((_pvr.pvr[5] & PVR5_DCACHE_ADDR_TAG_BITS_MASK) >> 26)
 
#define PVR_DCACHE_USE_FSL(_pvr)   (_pvr.pvr[5] & PVR5_DCACHE_USE_FSL_MASK)
 
#define PVR_DCACHE_ALLOW_WR(_pvr)   (_pvr.pvr[5] & PVR5_DCACHE_ALLOW_WR_MASK)
 
#define PVR_DCACHE_LINE_LEN(_pvr)   (1 << ((_pvr.pvr[5] & PVR5_DCACHE_LINE_LEN_MASK) >> 21))
 
#define PVR_DCACHE_BYTE_SIZE(_pvr)   (1 << ((_pvr.pvr[5] & PVR5_DCACHE_BYTE_SIZE_MASK) >> 16))
 
#define PVR_DCACHE_USE_WRITEBACK(_pvr)   ((_pvr.pvr[5] & PVR5_DCACHE_USE_WRITEBACK) >> 14)
 
#define PVR_ICACHE_BASEADDR(_pvr)   (_pvr.pvr[6] & PVR6_ICACHE_BASEADDR_MASK)
 
#define PVR_ICACHE_HIGHADDR(_pvr)   (_pvr.pvr[7] & PVR7_ICACHE_HIGHADDR_MASK)
 
#define PVR_DCACHE_BASEADDR(_pvr)   (_pvr.pvr[8] & PVR8_DCACHE_BASEADDR_MASK)
 
#define PVR_DCACHE_HIGHADDR(_pvr)   (_pvr.pvr[9] & PVR9_DCACHE_HIGHADDR_MASK)
 
#define PVR_TARGET_FAMILY(_pvr)   ((_pvr.pvr[10] & PVR10_TARGET_FAMILY_MASK) >> 24)
 
#define PVR_MSR_RESET_VALUE(_pvr)   (_pvr.pvr[11] & PVR11_MSR_RESET_VALUE_MASK)
 
#define PVR_USE_MMU(_pvr)   ((_pvr.pvr[11] & PVR11_USE_MMU) >> 30)
 
#define PVR_MMU_ITLB_SIZE(_pvr)   (_pvr.pvr[11] & PVR11_MMU_ITLB_SIZE)
 
#define PVR_MMU_DTLB_SIZE(_pvr)   (_pvr.pvr[11] & PVR11_MMU_DTLB_SIZE)
 
#define PVR_MMU_TLB_ACCESS(_pvr)   (_pvr.pvr[11] & PVR11_MMU_TLB_ACCESS)
 
#define PVR_MMU_ZONES(_pvr)   (_pvr.pvr[11] & PVR11_MMU_ZONES)
 
#define PVR_MMU_PRIVINS(pvr)   (pvr.pvr[11] & PVR11_MMU_PRIVINS)
 
#define PVR_ENDIAN(_pvr)   (_pvr.pvr[0] & PVR0_ENDI)
 

Functions

int cpu_has_pvr (void)
 
void get_pvr (struct pvr_s *pvr)
 

Macro Definition Documentation

#define PVR0_ENDI   0x00200000

Definition at line 35 of file pvr.h.

#define PVR0_PVR_FULL_MASK   0x80000000

Definition at line 25 of file pvr.h.

#define PVR0_USE_BARREL_MASK   0x40000000

Definition at line 26 of file pvr.h.

#define PVR0_USE_BTC   0x00400000

Definition at line 34 of file pvr.h.

#define PVR0_USE_DCACHE_MASK   0x01000000

Definition at line 32 of file pvr.h.

#define PVR0_USE_DIV_MASK   0x20000000

Definition at line 27 of file pvr.h.

#define PVR0_USE_EXC_MASK   0x04000000

Definition at line 30 of file pvr.h.

#define PVR0_USE_FPU_MASK   0x08000000

Definition at line 29 of file pvr.h.

#define PVR0_USE_HW_MUL_MASK   0x10000000

Definition at line 28 of file pvr.h.

#define PVR0_USE_ICACHE_MASK   0x02000000

Definition at line 31 of file pvr.h.

#define PVR0_USE_MMU   0x00800000

Definition at line 33 of file pvr.h.

#define PVR0_USER1_MASK   0x000000FF

Definition at line 37 of file pvr.h.

#define PVR0_VERSION_MASK   0x0000FF00

Definition at line 36 of file pvr.h.

#define PVR10_TARGET_FAMILY_MASK   0xFF000000

Definition at line 112 of file pvr.h.

#define PVR11_MMU_DTLB_SIZE   0x07000000

Definition at line 117 of file pvr.h.

#define PVR11_MMU_ITLB_SIZE   0x38000000

Definition at line 116 of file pvr.h.

#define PVR11_MMU_PRIVINS   0x00010000

Definition at line 120 of file pvr.h.

#define PVR11_MMU_TLB_ACCESS   0x00C00000

Definition at line 118 of file pvr.h.

#define PVR11_MMU_ZONES   0x003C0000

Definition at line 119 of file pvr.h.

#define PVR11_MSR_RESET_VALUE_MASK   0x000007FF

Definition at line 122 of file pvr.h.

#define PVR11_USE_MMU   0xC0000000

Definition at line 115 of file pvr.h.

#define PVR1_USER2_MASK   0xFFFFFFFF

Definition at line 40 of file pvr.h.

#define PVR2_AREA_OPTIMISED   0x00008000

Definition at line 56 of file pvr.h.

#define PVR2_D_LMB_MASK   0x40000000

Definition at line 44 of file pvr.h.

#define PVR2_D_OPB_MASK   0x80000000 /* or AXI */

Definition at line 43 of file pvr.h.

#define PVR2_D_PLB_MASK   0x02000000 /* new */

Definition at line 49 of file pvr.h.

#define PVR2_DIV_ZERO_EXC_MASK   0x00000002

Definition at line 70 of file pvr.h.

#define PVR2_DOPB_BUS_EXC_MASK   0x00000004 /* or AXI */

Definition at line 69 of file pvr.h.

#define PVR2_EDGE_IS_POSITIVE_MASK   0x04000000

Definition at line 48 of file pvr.h.

#define PVR2_FPU_EXC_MASK   0x00000001

Definition at line 71 of file pvr.h.

#define PVR2_I_LMB_MASK   0x10000000

Definition at line 46 of file pvr.h.

#define PVR2_I_OPB_MASK   0x20000000 /* or AXI */

Definition at line 45 of file pvr.h.

#define PVR2_I_PLB_MASK   0x01000000 /* new */

Definition at line 50 of file pvr.h.

#define PVR2_ILL_OPCODE_EXC_MASK   0x00000010

Definition at line 67 of file pvr.h.

#define PVR2_INTERCONNECT   0x00800000 /* new */

Definition at line 51 of file pvr.h.

#define PVR2_INTERRUPT_IS_EDGE_MASK   0x08000000

Definition at line 47 of file pvr.h.

#define PVR2_IOPB_BUS_EXC_MASK   0x00000008 /* or AXI */

Definition at line 68 of file pvr.h.

#define PVR2_OPCODE_0x0_ILL_MASK   0x00000040

Definition at line 65 of file pvr.h.

#define PVR2_UNALIGNED_EXC_MASK   0x00000020

Definition at line 66 of file pvr.h.

#define PVR2_USE_BARREL_MASK   0x00004000

Definition at line 57 of file pvr.h.

#define PVR2_USE_DIV_MASK   0x00002000

Definition at line 58 of file pvr.h.

#define PVR2_USE_DPLBEXC   0x00000080

Definition at line 64 of file pvr.h.

#define PVR2_USE_EXTEND_FSL   0x00080000 /* new */

Definition at line 52 of file pvr.h.

#define PVR2_USE_FPU2_MASK   0x00000200 /* new */

Definition at line 62 of file pvr.h.

#define PVR2_USE_FPU_MASK   0x00000800

Definition at line 60 of file pvr.h.

#define PVR2_USE_FSL_EXC   0x00040000 /* new */

Definition at line 53 of file pvr.h.

#define PVR2_USE_HW_MUL_MASK   0x00001000

Definition at line 59 of file pvr.h.

#define PVR2_USE_IPLBEXC   0x00000100

Definition at line 63 of file pvr.h.

#define PVR2_USE_MSR_INSTR   0x00020000

Definition at line 54 of file pvr.h.

#define PVR2_USE_MUL64_MASK   0x00000400

Definition at line 61 of file pvr.h.

#define PVR2_USE_PCMP_INSTR   0x00010000

Definition at line 55 of file pvr.h.

#define PVR3_DEBUG_ENABLED_MASK   0x80000000

Definition at line 74 of file pvr.h.

#define PVR3_FSL_LINKS_MASK   0x00000380

Definition at line 78 of file pvr.h.

#define PVR3_NUMBER_OF_PC_BRK_MASK   0x1E000000

Definition at line 75 of file pvr.h.

#define PVR3_NUMBER_OF_RD_ADDR_BRK_MASK   0x00380000

Definition at line 76 of file pvr.h.

#define PVR3_NUMBER_OF_WR_ADDR_BRK_MASK   0x0000E000

Definition at line 77 of file pvr.h.

#define PVR4_ICACHE_ADDR_TAG_BITS_MASK   0x7C000000 /* ICTS */

Definition at line 82 of file pvr.h.

#define PVR4_ICACHE_ALLOW_WR_MASK   0x01000000 /* ICW */

Definition at line 83 of file pvr.h.

#define PVR4_ICACHE_ALWAYS_USED   0x00008000 /* IAU */

Definition at line 86 of file pvr.h.

#define PVR4_ICACHE_BYTE_SIZE_MASK   0x001F0000 /* ICBS */

Definition at line 85 of file pvr.h.

#define PVR4_ICACHE_INTERFACE   0x00002000 /* ICI */

Definition at line 87 of file pvr.h.

#define PVR4_ICACHE_LINE_LEN_MASK   0x00E00000 /* ICLL */

Definition at line 84 of file pvr.h.

#define PVR4_USE_ICACHE_MASK   0x80000000 /* ICU */

Definition at line 81 of file pvr.h.

#define PVR5_DCACHE_ADDR_TAG_BITS_MASK   0x7C000000 /* DCTS */

Definition at line 91 of file pvr.h.

#define PVR5_DCACHE_ALLOW_WR_MASK   0x01000000 /* DCW */

Definition at line 92 of file pvr.h.

#define PVR5_DCACHE_ALWAYS_USED   0x00008000 /* DAU */

Definition at line 95 of file pvr.h.

#define PVR5_DCACHE_BYTE_SIZE_MASK   0x001F0000 /* DCBS */

Definition at line 94 of file pvr.h.

#define PVR5_DCACHE_INTERFACE   0x00002000 /* DCI */

Definition at line 97 of file pvr.h.

#define PVR5_DCACHE_LINE_LEN_MASK   0x00E00000 /* DCLL */

Definition at line 93 of file pvr.h.

#define PVR5_DCACHE_USE_WRITEBACK   0x00004000 /* DWB */

Definition at line 96 of file pvr.h.

#define PVR5_USE_DCACHE_MASK   0x80000000 /* DCU */

Definition at line 90 of file pvr.h.

#define PVR6_ICACHE_BASEADDR_MASK   0xFFFFFFFF

Definition at line 100 of file pvr.h.

#define PVR7_ICACHE_HIGHADDR_MASK   0xFFFFFFFF

Definition at line 103 of file pvr.h.

#define PVR8_DCACHE_BASEADDR_MASK   0xFFFFFFFF

Definition at line 106 of file pvr.h.

#define PVR9_DCACHE_HIGHADDR_MASK   0xFFFFFFFF

Definition at line 109 of file pvr.h.

#define PVR_AREA_OPTIMISED (   _pvr)    (_pvr.pvr[2] & PVR2_AREA_OPTIMISED)

Definition at line 147 of file pvr.h.

#define PVR_D_LMB (   _pvr)    (_pvr.pvr[2] & PVR2_D_LMB_MASK)

Definition at line 138 of file pvr.h.

#define PVR_D_OPB (   _pvr)    (_pvr.pvr[2] & PVR2_D_OPB_MASK)

Definition at line 137 of file pvr.h.

#define PVR_DCACHE_ADDR_TAG_BITS (   _pvr)    ((_pvr.pvr[5] & PVR5_DCACHE_ADDR_TAG_BITS_MASK) >> 26)

Definition at line 184 of file pvr.h.

#define PVR_DCACHE_ALLOW_WR (   _pvr)    (_pvr.pvr[5] & PVR5_DCACHE_ALLOW_WR_MASK)

Definition at line 187 of file pvr.h.

#define PVR_DCACHE_BASEADDR (   _pvr)    (_pvr.pvr[8] & PVR8_DCACHE_BASEADDR_MASK)

Definition at line 202 of file pvr.h.

#define PVR_DCACHE_BYTE_SIZE (   _pvr)    (1 << ((_pvr.pvr[5] & PVR5_DCACHE_BYTE_SIZE_MASK) >> 16))

Definition at line 192 of file pvr.h.

#define PVR_DCACHE_HIGHADDR (   _pvr)    (_pvr.pvr[9] & PVR9_DCACHE_HIGHADDR_MASK)

Definition at line 204 of file pvr.h.

#define PVR_DCACHE_LINE_LEN (   _pvr)    (1 << ((_pvr.pvr[5] & PVR5_DCACHE_LINE_LEN_MASK) >> 21))

Definition at line 190 of file pvr.h.

#define PVR_DCACHE_USE_FSL (   _pvr)    (_pvr.pvr[5] & PVR5_DCACHE_USE_FSL_MASK)

Definition at line 186 of file pvr.h.

#define PVR_DCACHE_USE_WRITEBACK (   _pvr)    ((_pvr.pvr[5] & PVR5_DCACHE_USE_WRITEBACK) >> 14)

Definition at line 195 of file pvr.h.

#define PVR_DEBUG_ENABLED (   _pvr)    (_pvr.pvr[3] & PVR3_DEBUG_ENABLED_MASK)

Definition at line 164 of file pvr.h.

#define PVR_DIV_ZERO_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_DIV_ZERO_EXC_MASK)

Definition at line 159 of file pvr.h.

#define PVR_DOPB_BUS_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_DOPB_BUS_EXC_MASK)

Definition at line 157 of file pvr.h.

#define PVR_EDGE_IS_POSITIVE (   _pvr)    (_pvr.pvr[2] & PVR2_EDGE_IS_POSITIVE_MASK)

Definition at line 143 of file pvr.h.

#define PVR_ENDIAN (   _pvr)    (_pvr.pvr[0] & PVR0_ENDI)

Definition at line 222 of file pvr.h.

#define PVR_FPU_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_FPU_EXC_MASK)

Definition at line 161 of file pvr.h.

#define PVR_FSL_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_USE_EXTEND_FSL)

Definition at line 162 of file pvr.h.

#define PVR_FSL_LINKS (   _pvr)    ((_pvr.pvr[3] & PVR3_FSL_LINKS_MASK) >> 7)

Definition at line 171 of file pvr.h.

#define PVR_I_LMB (   _pvr)    (_pvr.pvr[2] & PVR2_I_LMB_MASK)

Definition at line 140 of file pvr.h.

#define PVR_I_OPB (   _pvr)    (_pvr.pvr[2] & PVR2_I_OPB_MASK)

Definition at line 139 of file pvr.h.

#define PVR_ICACHE_ADDR_TAG_BITS (   _pvr)    ((_pvr.pvr[4] & PVR4_ICACHE_ADDR_TAG_BITS_MASK) >> 26)

Definition at line 173 of file pvr.h.

#define PVR_ICACHE_ALLOW_WR (   _pvr)    (_pvr.pvr[4] & PVR4_ICACHE_ALLOW_WR_MASK)

Definition at line 177 of file pvr.h.

#define PVR_ICACHE_BASEADDR (   _pvr)    (_pvr.pvr[6] & PVR6_ICACHE_BASEADDR_MASK)

Definition at line 198 of file pvr.h.

#define PVR_ICACHE_BYTE_SIZE (   _pvr)    (1 << ((_pvr.pvr[4] & PVR4_ICACHE_BYTE_SIZE_MASK) >> 16))

Definition at line 181 of file pvr.h.

#define PVR_ICACHE_HIGHADDR (   _pvr)    (_pvr.pvr[7] & PVR7_ICACHE_HIGHADDR_MASK)

Definition at line 200 of file pvr.h.

#define PVR_ICACHE_LINE_LEN (   _pvr)    (1 << ((_pvr.pvr[4] & PVR4_ICACHE_LINE_LEN_MASK) >> 21))

Definition at line 179 of file pvr.h.

#define PVR_ICACHE_USE_FSL (   _pvr)    (_pvr.pvr[4] & PVR4_ICACHE_USE_FSL_MASK)

Definition at line 175 of file pvr.h.

#define PVR_ILL_OPCODE_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_ILL_OPCODE_EXC_MASK)

Definition at line 153 of file pvr.h.

#define PVR_INTERRUPT_IS_EDGE (   _pvr)    (_pvr.pvr[2] & PVR2_INTERRUPT_IS_EDGE_MASK)

Definition at line 141 of file pvr.h.

#define PVR_IOPB_BUS_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_IOPB_BUS_EXC_MASK)

Definition at line 155 of file pvr.h.

#define PVR_IS_FULL (   _pvr)    (_pvr.pvr[0] & PVR0_PVR_FULL_MASK)

Definition at line 125 of file pvr.h.

#define PVR_MMU_DTLB_SIZE (   _pvr)    (_pvr.pvr[11] & PVR11_MMU_DTLB_SIZE)

Definition at line 216 of file pvr.h.

#define PVR_MMU_ITLB_SIZE (   _pvr)    (_pvr.pvr[11] & PVR11_MMU_ITLB_SIZE)

Definition at line 215 of file pvr.h.

#define PVR_MMU_PRIVINS (   pvr)    (pvr.pvr[11] & PVR11_MMU_PRIVINS)

Definition at line 219 of file pvr.h.

#define PVR_MMU_TLB_ACCESS (   _pvr)    (_pvr.pvr[11] & PVR11_MMU_TLB_ACCESS)

Definition at line 217 of file pvr.h.

#define PVR_MMU_ZONES (   _pvr)    (_pvr.pvr[11] & PVR11_MMU_ZONES)

Definition at line 218 of file pvr.h.

#define PVR_MSR_BIT   0x400

Definition at line 16 of file pvr.h.

#define PVR_MSR_RESET_VALUE (   _pvr)    (_pvr.pvr[11] & PVR11_MSR_RESET_VALUE_MASK)

Definition at line 210 of file pvr.h.

#define PVR_NUMBER_OF_PC_BRK (   _pvr)    ((_pvr.pvr[3] & PVR3_NUMBER_OF_PC_BRK_MASK) >> 25)

Definition at line 165 of file pvr.h.

#define PVR_NUMBER_OF_RD_ADDR_BRK (   _pvr)    ((_pvr.pvr[3] & PVR3_NUMBER_OF_RD_ADDR_BRK_MASK) >> 19)

Definition at line 167 of file pvr.h.

#define PVR_NUMBER_OF_WR_ADDR_BRK (   _pvr)    ((_pvr.pvr[3] & PVR3_NUMBER_OF_WR_ADDR_BRK_MASK) >> 13)

Definition at line 169 of file pvr.h.

#define PVR_OPCODE_0x0_ILLEGAL (   _pvr)    (_pvr.pvr[2] & PVR2_OPCODE_0x0_ILL_MASK)

Definition at line 149 of file pvr.h.

#define PVR_TARGET_FAMILY (   _pvr)    ((_pvr.pvr[10] & PVR10_TARGET_FAMILY_MASK) >> 24)

Definition at line 207 of file pvr.h.

#define PVR_UNALIGNED_EXCEPTION (   _pvr)    (_pvr.pvr[2] & PVR2_UNALIGNED_EXC_MASK)

Definition at line 151 of file pvr.h.

#define PVR_USE_BARREL (   _pvr)    (_pvr.pvr[0] & PVR0_USE_BARREL_MASK)

Definition at line 126 of file pvr.h.

#define PVR_USE_DCACHE (   _pvr)    (_pvr.pvr[0] & PVR0_USE_DCACHE_MASK)

Definition at line 132 of file pvr.h.

#define PVR_USE_DIV (   _pvr)    (_pvr.pvr[0] & PVR0_USE_DIV_MASK)

Definition at line 127 of file pvr.h.

#define PVR_USE_FPU (   _pvr)    (_pvr.pvr[0] & PVR0_USE_FPU_MASK)

Definition at line 129 of file pvr.h.

#define PVR_USE_FPU2 (   _pvr)    (_pvr.pvr[2] & PVR2_USE_FPU2_MASK)

Definition at line 130 of file pvr.h.

#define PVR_USE_HW_MUL (   _pvr)    (_pvr.pvr[0] & PVR0_USE_HW_MUL_MASK)

Definition at line 128 of file pvr.h.

#define PVR_USE_ICACHE (   _pvr)    (_pvr.pvr[0] & PVR0_USE_ICACHE_MASK)

Definition at line 131 of file pvr.h.

#define PVR_USE_MMU (   _pvr)    ((_pvr.pvr[11] & PVR11_USE_MMU) >> 30)

Definition at line 214 of file pvr.h.

#define PVR_USE_MSR_INSTR (   _pvr)    (_pvr.pvr[2] & PVR2_USE_MSR_INSTR)

Definition at line 145 of file pvr.h.

#define PVR_USE_MUL64 (   _pvr)    (_pvr.pvr[2] & PVR2_USE_MUL64_MASK)

Definition at line 148 of file pvr.h.

#define PVR_USE_PCMP_INSTR (   _pvr)    (_pvr.pvr[2] & PVR2_USE_PCMP_INSTR)

Definition at line 146 of file pvr.h.

#define PVR_USER1 (   _pvr)    (_pvr.pvr[0] & PVR0_USER1_MASK)

Definition at line 134 of file pvr.h.

#define PVR_USER2 (   _pvr)    (_pvr.pvr[1] & PVR1_USER2_MASK)

Definition at line 135 of file pvr.h.

#define PVR_VERSION (   _pvr)    ((_pvr.pvr[0] & PVR0_VERSION_MASK) >> 8)

Definition at line 133 of file pvr.h.

Function Documentation

int cpu_has_pvr ( void  )

Definition at line 45 of file pvr.c.

void get_pvr ( struct pvr_s pvr)

Definition at line 66 of file pvr.c.