29#ifndef _ALTERA_AVALON_HBUS_REGS_H
30#define _ALTERA_AVALON_HBUS_REGS_H
32#include <bsp_system.h>
35#define ALTERA_HBUS_CSR_RACT_MSK (0x1)
36#define ALTERA_HBUS_CSR_RACT_OFST (0)
37#define ALTERA_HBUS_CSR_RDECERR_MSK (0x100)
38#define ALTERA_HBUS_CSR_RDECERR_OFST (8)
39#define ALTERA_HBUS_CSR_RTRSERR_MSK (0x200)
40#define ALTERA_HBUS_CSR_RTRSERR_OFST (9)
41#define ALTERA_HBUS_CSR_RRSTOERR_MSK (0x400)
42#define ALTERA_HBUS_CSR_RRSTOERR_OFST (10)
43#define ALTERA_HBUS_CSR_RDSSTALL_MSK (0x800)
44#define ALTERA_HBUS_CSR_RDSSTALL_OFST (11)
45#define ALTERA_HBUS_CSR_WACT_MSK (0x10000)
46#define ALTERA_HBUS_CSR_WACT_OFST (16)
47#define ALTERA_HBUS_CSR_WDECERR_MSK (0x1000000)
48#define ALTERA_HBUS_CSR_WDECERR_OFST (24)
49#define ALTERA_HBUS_CSR_WTRSERR_MSK (0x2000000)
50#define ALTERA_HBUS_CSR_WTRSERR_OFST (25)
51#define ALTERA_HBUS_CSR_WRSTOERR_MSK (0x4000000)
52#define ALTERA_HBUS_CSR_WRSTOERR_OFST (26)
55#define ALTERA_HBUS_IEN_RPCINTE_MSK (0x1)
56#define ALTERA_HBUS_IEN_RPCINTE_OFST (0)
57#define ALTERA_HBUS_IEN_INTP_MSK (0x80000000)
58#define ALTERA_HBUS_IEN_INTP_OFST (31)
61#define ALTERA_HBUS_ISR_RPCINTS_MSK (0x1)
62#define ALTERA_HBUS_ISR_RPCINTS_OFST (0)
65#define ALTERA_HBUS_MBR_ADDRESS_MSK (0xFF000000)
66#define ALTERA_HBUS_MBR_ADDRESS(x) (x & ALTERA_HBUS_MBR_ADDRESS_MSK)
69#define ALTERA_HBUS_MCR_WRAPSIZE_MSK (0x3)
70#define ALTERA_HBUS_MCR_WRAPSIZE_OFST (0)
71#define ALTERA_HBUS_MCR_DEVTYPE_MSK (0x10)
72#define ALTERA_HBUS_MCR_DEVTYPE_OFST (4)
73#define ALTERA_HBUS_MCR_CRT_MSK (0x20)
74#define ALTERA_HBUS_MCR_CRT_OFST (5)
75#define ALTERA_HBUS_MCR_ACS_MSK (0x10000)
76#define ALTERA_HBUS_MCR_ACS_OFST (16)
77#define ALTERA_HBUS_MCR_TCMO_MSK (0x20000)
78#define ALTERA_HBUS_MCR_TCMO_OFST (17)
79#define ALTERA_HBUS_MCR_MAXLEN_MSK (0x3FC0000)
80#define ALTERA_HBUS_MCR_MAXLEN_OFST (18)
81#define ALTERA_HBUS_MCR_MAXEN_MSK (0x80000000)
82#define ALTERA_HBUS_MCR_MAXEN_OFST (31)
84#define ALTERA_HBUS_MCR_WRAPSIZE_SELECT(x) \
85 ((x) == 32 ? 0x3 : (x) == 64 ? 0x1 : (x) == 16 ? 0x2 : 0x3)
86#define ALTERA_HBUS_MCR_WRAPSIZE(x) \
87 ((ALTERA_HBUS_MCR_WRAPSIZE_SELECT(x) << ALTERA_HBUS_MCR_WRAPSIZE_OFST) & \
88 ALTERA_HBUS_MCR_WRAPSIZE_MSK)
89#define ALTERA_HBUS_MCR_DEVTYPE(x) \
90 (((x) << ALTERA_HBUS_MCR_DEVTYPE_OFST) & ALTERA_HBUS_MCR_DEVTYPE_MSK)
91#define ALTERA_HBUS_MCR_CRT(x) \
92 (((x) << ALTERA_HBUS_MCR_CRT_OFST) & ALTERA_HBUS_MCR_CRT_MSK)
93#define ALTERA_HBUS_MCR_CRT_UPDATE(r, x) \
94 ((r) = ((r) & ALTERA_HBUS_MCR_CRT_MSK) | ALTERA_HBUS_MCR_CRT(x))
95#define ALTERA_HBUS_MCR_ACS(x) \
96 (((x) << ALTERA_HBUS_MCR_ACS_OFST) & ALTERA_HBUS_MCR_ACS_MSK)
97#define ALTERA_HBUS_MCR_TCMO(x) \
98 (((x) << ALTERA_HBUS_MCR_TCMO_OFST) & ALTERA_HBUS_MCR_TCMO_MSK)
99#define ALTERA_HBUS_MCR_MAXLEN(x) \
100 (((((x) / 2) - 1) << ALTERA_HBUS_MCR_MAXLEN_OFST) & \
101 ALTERA_HBUS_MCR_MAXLEN_MSK)
102#define ALTERA_HBUS_MCR_MAXEN(x) \
103 (((x) << ALTERA_HBUS_MCR_MAXEN_OFST) & ALTERA_HBUS_MCR_MAXEN_MSK)
106#define ALTERA_HBUS_MTR_LTCY_MSK (0xF)
107#define ALTERA_HBUS_MTR_LTCY_OFST (0)
108#define ALTERA_HBUS_MTR_RFU_MSK (0xF0)
109#define ALTERA_HBUS_MTR_RFU_OFST (4)
110#define ALTERA_HBUS_MTR_WCSH_MSK (0xF00)
111#define ALTERA_HBUS_MTR_WCSH_OFST (8)
112#define ALTERA_HBUS_MTR_RCSH_MSK (0xF000)
113#define ALTERA_HBUS_MTR_RCSH_OFST (12)
114#define ALTERA_HBUS_MTR_WCSS_MSK (0xF0000)
115#define ALTERA_HBUS_MTR_WCSS_OFST (16)
116#define ALTERA_HBUS_MTR_RCSS_MSK (0xF00000)
117#define ALTERA_HBUS_MTR_RCSS_OFST (20)
118#define ALTERA_HBUS_MTR_WCSHI_MSK (0xF000000)
119#define ALTERA_HBUS_MTR_WCSHI_OFST (24)
120#define ALTERA_HBUS_MTR_RCSHI_MSK (0xF0000000)
121#define ALTERA_HBUS_MTR_RCSHI_OFST (28)
123#define ALTERA_HBUS_MTR_LTCY_SELECT(x) \
124 ((x) == 6 ? 0x1 : (x) == 4 ? 0xf : (x) == 5 ? 0x0 : (x) == 3 ? 0xe : 0x1)
125#define ALTERA_HBUS_MTR_LTCY(x) \
126 ((ALTERA_HBUS_MTR_LTCY_SELECT(x) << ALTERA_HBUS_MTR_LTCY_OFST) & \
127 ALTERA_HBUS_MTR_LTCY_MSK)
130#define ALTERA_HBUS_GPOR_GPO_MSK (0x3)
131#define ALTERA_HBUS_GPOR_GPO_OFST (0)
134#define ALTERA_HBUS_WPR_WP_MSK (0x1)
135#define ALTERA_HBUS_WPR_WP_OFST (0)
138#define ALTERA_HBUS_LBR_LOOPBACK_MSK (0x1)
139#define ALTERA_HBUS_LBR_LOOPBACK_OFST (0)
142#define ALTERA_HBUS_TAR_WTA_MSK (0x3)
143#define ALTERA_HBUS_TAR_WTA_OFST (0)
144#define ALTERA_HBUS_TAR_RTA_MSK (0x30)
145#define ALTERA_HBUS_TAR_RTA_OFST (4)
153 volatile uint32_t csr;
154 volatile uint32_t ien;
155 volatile uint32_t isr;
156 volatile uint32_t icr;
157 volatile uint32_t mbr0;
158 volatile uint32_t mbr1;
159 volatile uint32_t mbr2;
160 volatile uint32_t mbr3;
161 volatile uint32_t mcr0;
162 volatile uint32_t mcr1;
163 volatile uint32_t mcr2;
164 volatile uint32_t mcr3;
165 volatile uint32_t mtr0;
166 volatile uint32_t mtr1;
167 volatile uint32_t mtr2;
168 volatile uint32_t mtr3;
169 volatile uint32_t gpor;
170 volatile uint32_t wpr;
171 volatile uint32_t lbr;
172 volatile uint32_t tar;
175#define HBUS_CTRL_REGS \
176 (( volatile altera_avalon_hbus_ctrl_regs* ) \
177 HYPERBUS_CTRL_ALTERA_AXI4_SLAVE_REGISTER_BASE )
Definition: altera_avalon_hbus_regs.h:152