File indexing completed on 2025-05-11 08:24:00
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029 #ifndef _ALTERA_AVALON_HBUS_REGS_H
0030 #define _ALTERA_AVALON_HBUS_REGS_H
0031
0032 #include <bsp_system.h>
0033
0034
0035 #define ALTERA_HBUS_CSR_RACT_MSK (0x1)
0036 #define ALTERA_HBUS_CSR_RACT_OFST (0)
0037 #define ALTERA_HBUS_CSR_RDECERR_MSK (0x100)
0038 #define ALTERA_HBUS_CSR_RDECERR_OFST (8)
0039 #define ALTERA_HBUS_CSR_RTRSERR_MSK (0x200)
0040 #define ALTERA_HBUS_CSR_RTRSERR_OFST (9)
0041 #define ALTERA_HBUS_CSR_RRSTOERR_MSK (0x400)
0042 #define ALTERA_HBUS_CSR_RRSTOERR_OFST (10)
0043 #define ALTERA_HBUS_CSR_RDSSTALL_MSK (0x800)
0044 #define ALTERA_HBUS_CSR_RDSSTALL_OFST (11)
0045 #define ALTERA_HBUS_CSR_WACT_MSK (0x10000)
0046 #define ALTERA_HBUS_CSR_WACT_OFST (16)
0047 #define ALTERA_HBUS_CSR_WDECERR_MSK (0x1000000)
0048 #define ALTERA_HBUS_CSR_WDECERR_OFST (24)
0049 #define ALTERA_HBUS_CSR_WTRSERR_MSK (0x2000000)
0050 #define ALTERA_HBUS_CSR_WTRSERR_OFST (25)
0051 #define ALTERA_HBUS_CSR_WRSTOERR_MSK (0x4000000)
0052 #define ALTERA_HBUS_CSR_WRSTOERR_OFST (26)
0053
0054
0055 #define ALTERA_HBUS_IEN_RPCINTE_MSK (0x1)
0056 #define ALTERA_HBUS_IEN_RPCINTE_OFST (0)
0057 #define ALTERA_HBUS_IEN_INTP_MSK (0x80000000)
0058 #define ALTERA_HBUS_IEN_INTP_OFST (31)
0059
0060
0061 #define ALTERA_HBUS_ISR_RPCINTS_MSK (0x1)
0062 #define ALTERA_HBUS_ISR_RPCINTS_OFST (0)
0063
0064
0065 #define ALTERA_HBUS_MBR_ADDRESS_MSK (0xFF000000)
0066 #define ALTERA_HBUS_MBR_ADDRESS(x) (x & ALTERA_HBUS_MBR_ADDRESS_MSK)
0067
0068
0069 #define ALTERA_HBUS_MCR_WRAPSIZE_MSK (0x3)
0070 #define ALTERA_HBUS_MCR_WRAPSIZE_OFST (0)
0071 #define ALTERA_HBUS_MCR_DEVTYPE_MSK (0x10)
0072 #define ALTERA_HBUS_MCR_DEVTYPE_OFST (4)
0073 #define ALTERA_HBUS_MCR_CRT_MSK (0x20)
0074 #define ALTERA_HBUS_MCR_CRT_OFST (5)
0075 #define ALTERA_HBUS_MCR_ACS_MSK (0x10000)
0076 #define ALTERA_HBUS_MCR_ACS_OFST (16)
0077 #define ALTERA_HBUS_MCR_TCMO_MSK (0x20000)
0078 #define ALTERA_HBUS_MCR_TCMO_OFST (17)
0079 #define ALTERA_HBUS_MCR_MAXLEN_MSK (0x3FC0000)
0080 #define ALTERA_HBUS_MCR_MAXLEN_OFST (18)
0081 #define ALTERA_HBUS_MCR_MAXEN_MSK (0x80000000)
0082 #define ALTERA_HBUS_MCR_MAXEN_OFST (31)
0083
0084 #define ALTERA_HBUS_MCR_WRAPSIZE_SELECT(x) \
0085 ((x) == 32 ? 0x3 : (x) == 64 ? 0x1 : (x) == 16 ? 0x2 : 0x3)
0086 #define ALTERA_HBUS_MCR_WRAPSIZE(x) \
0087 ((ALTERA_HBUS_MCR_WRAPSIZE_SELECT(x) << ALTERA_HBUS_MCR_WRAPSIZE_OFST) & \
0088 ALTERA_HBUS_MCR_WRAPSIZE_MSK)
0089 #define ALTERA_HBUS_MCR_DEVTYPE(x) \
0090 (((x) << ALTERA_HBUS_MCR_DEVTYPE_OFST) & ALTERA_HBUS_MCR_DEVTYPE_MSK)
0091 #define ALTERA_HBUS_MCR_CRT(x) \
0092 (((x) << ALTERA_HBUS_MCR_CRT_OFST) & ALTERA_HBUS_MCR_CRT_MSK)
0093 #define ALTERA_HBUS_MCR_CRT_UPDATE(r, x) \
0094 ((r) = ((r) & ALTERA_HBUS_MCR_CRT_MSK) | ALTERA_HBUS_MCR_CRT(x))
0095 #define ALTERA_HBUS_MCR_ACS(x) \
0096 (((x) << ALTERA_HBUS_MCR_ACS_OFST) & ALTERA_HBUS_MCR_ACS_MSK)
0097 #define ALTERA_HBUS_MCR_TCMO(x) \
0098 (((x) << ALTERA_HBUS_MCR_TCMO_OFST) & ALTERA_HBUS_MCR_TCMO_MSK)
0099 #define ALTERA_HBUS_MCR_MAXLEN(x) \
0100 (((((x) / 2) - 1) << ALTERA_HBUS_MCR_MAXLEN_OFST) & \
0101 ALTERA_HBUS_MCR_MAXLEN_MSK)
0102 #define ALTERA_HBUS_MCR_MAXEN(x) \
0103 (((x) << ALTERA_HBUS_MCR_MAXEN_OFST) & ALTERA_HBUS_MCR_MAXEN_MSK)
0104
0105
0106 #define ALTERA_HBUS_MTR_LTCY_MSK (0xF)
0107 #define ALTERA_HBUS_MTR_LTCY_OFST (0)
0108 #define ALTERA_HBUS_MTR_RFU_MSK (0xF0)
0109 #define ALTERA_HBUS_MTR_RFU_OFST (4)
0110 #define ALTERA_HBUS_MTR_WCSH_MSK (0xF00)
0111 #define ALTERA_HBUS_MTR_WCSH_OFST (8)
0112 #define ALTERA_HBUS_MTR_RCSH_MSK (0xF000)
0113 #define ALTERA_HBUS_MTR_RCSH_OFST (12)
0114 #define ALTERA_HBUS_MTR_WCSS_MSK (0xF0000)
0115 #define ALTERA_HBUS_MTR_WCSS_OFST (16)
0116 #define ALTERA_HBUS_MTR_RCSS_MSK (0xF00000)
0117 #define ALTERA_HBUS_MTR_RCSS_OFST (20)
0118 #define ALTERA_HBUS_MTR_WCSHI_MSK (0xF000000)
0119 #define ALTERA_HBUS_MTR_WCSHI_OFST (24)
0120 #define ALTERA_HBUS_MTR_RCSHI_MSK (0xF0000000)
0121 #define ALTERA_HBUS_MTR_RCSHI_OFST (28)
0122
0123 #define ALTERA_HBUS_MTR_LTCY_SELECT(x) \
0124 ((x) == 6 ? 0x1 : (x) == 4 ? 0xf : (x) == 5 ? 0x0 : (x) == 3 ? 0xe : 0x1)
0125 #define ALTERA_HBUS_MTR_LTCY(x) \
0126 ((ALTERA_HBUS_MTR_LTCY_SELECT(x) << ALTERA_HBUS_MTR_LTCY_OFST) & \
0127 ALTERA_HBUS_MTR_LTCY_MSK)
0128
0129
0130 #define ALTERA_HBUS_GPOR_GPO_MSK (0x3)
0131 #define ALTERA_HBUS_GPOR_GPO_OFST (0)
0132
0133
0134 #define ALTERA_HBUS_WPR_WP_MSK (0x1)
0135 #define ALTERA_HBUS_WPR_WP_OFST (0)
0136
0137
0138 #define ALTERA_HBUS_LBR_LOOPBACK_MSK (0x1)
0139 #define ALTERA_HBUS_LBR_LOOPBACK_OFST (0)
0140
0141
0142 #define ALTERA_HBUS_TAR_WTA_MSK (0x3)
0143 #define ALTERA_HBUS_TAR_WTA_OFST (0)
0144 #define ALTERA_HBUS_TAR_RTA_MSK (0x30)
0145 #define ALTERA_HBUS_TAR_RTA_OFST (4)
0146
0147 #ifdef __cplusplus
0148 extern "C" {
0149 #endif
0150
0151 typedef struct
0152 {
0153 volatile uint32_t csr;
0154 volatile uint32_t ien;
0155 volatile uint32_t isr;
0156 volatile uint32_t icr;
0157 volatile uint32_t mbr0;
0158 volatile uint32_t mbr1;
0159 volatile uint32_t mbr2;
0160 volatile uint32_t mbr3;
0161 volatile uint32_t mcr0;
0162 volatile uint32_t mcr1;
0163 volatile uint32_t mcr2;
0164 volatile uint32_t mcr3;
0165 volatile uint32_t mtr0;
0166 volatile uint32_t mtr1;
0167 volatile uint32_t mtr2;
0168 volatile uint32_t mtr3;
0169 volatile uint32_t gpor;
0170 volatile uint32_t wpr;
0171 volatile uint32_t lbr;
0172 volatile uint32_t tar;
0173 }altera_avalon_hbus_ctrl_regs;
0174
0175 #define HBUS_CTRL_REGS \
0176 (( volatile altera_avalon_hbus_ctrl_regs* ) \
0177 HYPERBUS_CTRL_ALTERA_AXI4_SLAVE_REGISTER_BASE )
0178
0179 #ifdef __cplusplus
0180 }
0181 #endif
0182
0183 #endif