52#include <libcpu/spr.h>
65#define _eieio __asm__ volatile ("eieio\n"::)
66#define _sync __asm__ volatile ("sync\n"::)
67#define _isync __asm__ volatile ("isync\n"::)
74#define IMMR_FLEN (1<<11)
96#define BBCMCR_BE (1<<13)
97#define BBCMCR_ETRE (1<<12)
109#define MI_RA_PP (3 << 10)
110#define MI_RA_PP_SUPV (1 << 10)
111#define MI_RA_PP_USER (2 << 10)
112#define MI_RA_G (1 << 6)
130#define L2U_RA_PP (3 << 10)
131#define L2U_RA_PP_SUPV (1 << 10)
132#define L2U_RA_PP_USER (2 << 10)
133#define L2U_RA_G (1 << 6)
147#define USIU_SYPCR_SWTC(x) ((x)<<16)
148#define USIU_SYPCR_BMT(x) ((x)<<8)
149#define USIU_SYPCR_BME (1<<7)
150#define USIU_SYPCR_SWF (1<<3)
151#define USIU_SYPCR_SWE (1<<2)
152#define USIU_SYPCR_SWRI (1<<1)
153#define USIU_SYPCR_SWP (1<<0)
155#define USIU_SYPCR_BMT(x) ((x)<<8)
156#define USIU_SYPCR_BME (1<<7)
157#define USIU_SYPCR_SWF (1<<3)
158#define USIU_SYPCR_SWE (1<<2)
159#define USIU_SYPCR_SWRI (1<<1)
160#define USIU_SYPCR_SWP (1<<0)
167#define TICKLE_WATCHDOG() \
169 usiu.swsr = 0x556C; \
170 usiu.swsr = 0xAA39; \
178#define USIU_MEMC_BR_BA(x) (((uint32_t)x)&0xffff8000)
180#define USIU_MEMC_BR_AT(x) ((x)<<12)
181#define USIU_MEMC_BR_PS8 (1<<10)
182#define USIU_MEMC_BR_PS16 (2<<10)
183#define USIU_MEMC_BR_PS32 (0<<10)
184#define USIU_MEMC_BR_WP (1<<8)
185#define USIU_MEMC_BR_WEBS (1<<5)
186#define USIU_MEMC_BR_TBDIP (1<<4)
187#define USIU_MEMC_BR_LBDIP (1<<3)
188#define USIU_MEMC_BR_SETA (1<<2)
189#define USIU_MEMC_BR_BI (1<<1)
190#define USIU_MEMC_BR_V (1<<0)
192#define USIU_MEMC_OR_32K 0xffff8000
193#define USIU_MEMC_OR_64K 0xffff0000
194#define USIU_MEMC_OR_128K 0xfffe0000
195#define USIU_MEMC_OR_256K 0xfffc0000
196#define USIU_MEMC_OR_512K 0xfff80000
197#define USIU_MEMC_OR_1M 0xfff00000
198#define USIU_MEMC_OR_2M 0xffe00000
199#define USIU_MEMC_OR_4M 0xffc00000
200#define USIU_MEMC_OR_8M 0xff800000
201#define USIU_MEMC_OR_16M 0xff000000
202#define USIU_MEMC_OR_32M 0xfe000000
203#define USIU_MEMC_OR_64M 0xfc000000
204#define USIU_MEMC_OR_128 0xf8000000
205#define USIU_MEMC_OR_256M 0xf0000000
206#define USIU_MEMC_OR_512M 0xe0000000
207#define USIU_MEMC_OR_1G 0xc0000000
208#define USIU_MEMC_OR_2G 0x80000000
209#define USIU_MEMC_OR_4G 0x00000000
210#define USIU_MEMC_OR_ATM(x) ((x)<<12)
211#define USIU_MEMC_OR_CSNT (1<<11)
212#define USIU_MEMC_OR_ACS_NORM (0<<9)
213#define USIU_MEMC_OR_ACS_QRTR (2<<9)
214#define USIU_MEMC_OR_ACS_HALF (3<<9)
215#define USIU_MEMC_OR_ETHR (1<<8)
216#define USIU_MEMC_OR_SCY(x) ((x)<<4)
217#define USIU_MEMC_OR_BSCY(x) ((x)<<1)
218#define USIU_MEMC_OR_TRLX (1<<0)
226#define USIU_SCCR_DBCT (1<<31)
227#define USIU_SCCR_COM(x) ((x)<<29)
228#define USIU_SCCR_RTDIV (1<<24)
229#define USIU_PRQEN (1<<21)
230#define USIU_SCCR_EBDF(x) ((x)<<17)
231#define USIU_LME (1<<16)
232#define USIU_ENGDIV(x) ((x)<<9)
234#define USIU_PLPRCR_MF(x) (((x)-1)<<20)
235#define USIU_PLPRCR_SPLS (1<<16)
236#define USIU_PLPRCR_TEXPS (1<<14)
243#define USIU_PISCR_PIRQ(x) (1<<(15-x))
244#define USIU_PISCR_PS (1<<7)
245#define USIU_PISCR_PIE (1<<2)
246#define USIU_PISCR_PITF (1<<1)
247#define USIU_PISCR_PTE (1<<0)
254#define USIU_TBSCR_TBIRQ(x) (1<<(15-x))
255#define USIU_TBSCR_REFA (1<<7)
256#define USIU_TBSCR_REFB (1<<6)
257#define USIU_TBSCR_REFAE (1<<3)
258#define USIU_TBSCR_REFBE (1<<2)
259#define USIU_TBSCR_TBF (1<<1)
260#define USIU_TBSCR_TBE (1<<0)
267#define USIU_SIMASK_IRM0 (1<<31)
268#define USIU_SIMASK_LVM0 (1<<30)
269#define USIU_SIMASK_IRM1 (1<<29)
270#define USIU_SIMASK_LVM1 (1<<28)
271#define USIU_SIMASK_IRM2 (1<<27)
272#define USIU_SIMASK_LVM2 (1<<26)
273#define USIU_SIMASK_IRM3 (1<<25)
274#define USIU_SIMASK_LVM3 (1<<24)
275#define USIU_SIMASK_IRM4 (1<<23)
276#define USIU_SIMASK_LVM4 (1<<22)
277#define USIU_SIMASK_IRM5 (1<<21)
278#define USIU_SIMASK_LVM5 (1<<20)
279#define USIU_SIMASK_IRM6 (1<<19)
280#define USIU_SIMASK_LVM6 (1<<18)
281#define USIU_SIMASK_IRM7 (1<<17)
282#define USIU_SIMASK_LVM7 (1<<16)
289#define USIU_SIUMCR_EARB (1<<31)
290#define USIU_SIUMCR_EARP0 (0<<28)
291#define USIU_SIUMCR_EARP1 (1<<28)
292#define USIU_SIUMCR_EARP2 (2<<28)
293#define USIU_SIUMCR_EARP3 (3<<28)
294#define USIU_SIUMCR_EARP4 (4<<28)
295#define USIU_SIUMCR_EARP5 (5<<28)
296#define USIU_SIUMCR_EARP6 (6<<28)
297#define USIU_SIUMCR_EARP7 (7<<28)
298#define USIU_SIUMCR_DSHW (1<<23)
299#define USIU_SIUMCR_DBGC0 (0<<21)
300#define USIU_SIUMCR_DBGC1 (1<<21)
301#define USIU_SIUMCR_DBGC2 (2<<21)
302#define USIU_SIUMCR_DBGC3 (3<<21)
303#define USIU_SIUMCR_DBPC (1<<20)
304#define USIU_SIUMCR_ATWC (1<<19)
305#define USIU_SIUMCR_GPC0 (0<<17)
306#define USIU_SIUMCR_GPC1 (1<<17)
307#define USIU_SIUMCR_GPC2 (2<<17)
308#define USIU_SIUMCR_GPC3 (3<<17)
309#define USIU_SIUMCR_DLK (1<<16)
310#define USIU_SIUMCR_SC0 (0<<13)
311#define USIU_SIUMCR_SC1 (1<<13)
312#define USIU_SIUMCR_SC2 (2<<13)
313#define USIU_SIUMCR_SC3 (3<<13)
314#define USIU_SIUMCR_RCTX (1<<12)
315#define USIU_SIUMCR_MLRC0 (0<<10)
316#define USIU_SIUMCR_MLRC1 (1<<10)
317#define USIU_SIUMCR_MLRC2 (2<<10)
318#define USIU_SIUMCR_MLRC3 (3<<10)
319#define USIU_SIUMCR_MTSC (1<<7)
324#define USIU_UNLOCK_KEY 0x55CCAA33
331#define UIMB_UMCR_STOP (1<<31)
332#define UIMB_UMCR_IRQMUX(x) ((x)<<29)
333#define UIMB_UMCR_HSPEED (1<<28)
342#define QSMCM_ILDSCI(x) ((x)<<8)
344#define QSMCM_SCI_BAUD(x) ((x)&0x1FFF)
346#define QSMCM_SCI_LOOPS (1<<14)
347#define QSMCM_SCI_WOMS (1<<13)
348#define QSMCM_SCI_ILT (1<<12)
349#define QSMCM_SCI_PT (1<<11)
350#define QSMCM_SCI_PE (1<<10)
351#define QSMCM_SCI_M (1<<9)
352#define QSMCM_SCI_WAKE (1<<8)
354#define QSMCM_SCI_TIE (1<<7)
355#define QSMCM_SCI_TCIE (1<<6)
356#define QSMCM_SCI_RIE (1<<5)
357#define QSMCM_SCI_ILIE (1<<4)
358#define QSMCM_SCI_TE (1<<3)
359#define QSMCM_SCI_RE (1<<2)
360#define QSMCM_SCI_RWU (1<<1)
361#define QSMCM_SCI_SBK (1<<0)
363#define QSMCM_SCI_TDRE (1<<8)
364#define QSMCM_SCI_TC (1<<7)
365#define QSMCM_SCI_RDRF (1<<6)
366#define QSMCM_SCI_RAF (1<<5)
367#define QSMCM_SCI_IDLE (1<<4)
368#define QSMCM_SCI_OR (1<<3)
369#define QSMCM_SCI_NF (1<<2)
370#define QSMCM_SCI_FE (1<<1)
371#define QSMCM_SCI_PF (1<<0)
408 uint8_t _pad71[0x03C-0x034];
410 uint8_t _pad2[0x100-0x40];
416 uint8_t _pad7[0x140-0x120];
419 uint8_t _pad8[0x178-0x148];
421 uint8_t _pad9[0x200-0x17A];
430 uint8_t _pad11[0x220-0x20c];
443 uint8_t _pad15[0x280-0x24c];
455 uint8_t _pad16[0x300-0x292];
472 uint8_t _pad19[0x380-0x348];
480 uint8_t _pad20[0x400-0x38c];
483extern volatile usiu_t usiu;
544 uint8_t _pad10[0x14-0x10];
557 uint8_t _pad6C[0x140-0x06C];
559 uint16_t recram[0x20];
560 uint16_t tranram[0x20];
561 uint16_t comdram[0x20];
595 uint8_t _pad5200[0x6000-0x5200];
598 uint8_t _pad7800[0x7F80-0x7800];
602extern volatile imb_t imb;
608void clockOn(
void* unused);
609void clockOff(
void* unused);
610int clockIsOn(
void* unused);
ISR_Handler rtems_isr
This type defines the return type of interrupt service routines.
Definition: intr.h:123
ISR_Vector_number rtems_vector_number
This integer type represents interrupt vector numbers.
Definition: intr.h:102