source: rtems/c/src/lib/libbsp/mips/genmongoosev/include/lr33000.h @ cba119c9

4.104.114.84.95
Last change on this file since cba119c9 was 2276d255, checked in by Joel Sherrill <joel.sherrill@…>, on 02/02/02 at 19:28:13

2001-02-01 Greg Menke <gregory.menke@…>

  • include/lr33000.h, include/lr330x0.h, include/r3000.h, start/mg5.h: New files missed in previous commit.
  • timer/timer.c: Use rtems/bspIo.h not just bspIo.h.
  • Property mode set to 100644
File size: 4.1 KB
Line 
1/* lr33000.h - LSI LR33000 CPU header */
2
3/* $Id$ */
4
5/*
6modification history
7--------------------
801c,22sep92,rrr  added support for c++
901b,20apr92,ajm  added CR_DCAS for ethernet support
1001a,10feb92,ajm  written for FCS
11*/
12
13#ifndef __INClr33000h
14#define __INClr33000h
15
16#ifdef __cplusplus
17extern "C" {
18#endif
19
20#ifdef _ASMLANGUAGE
21#define C0_DCIC $7              /* cache control */
22#define C0_BPC  $3              /* breakpoint on instr */
23#define C0_BDA  $5              /* breakpoint on data */
24#endif /* _ASMLANGUAGE */
25
26#define DEBUG_VECT      0x00000040
27#define K0_DEBUG_VECT   (K0BASE+DEBUG_VECT)
28#define K1_DEBUG_VECT   (K1BASE+DEBUG_VECT)
29
30/* definitions for Debug and Cache Invalidate control (DCIC) register bits */
31#define DCIC_TR         0x80000000      /* Trap enable */
32#define DCIC_UD         0x40000000      /* User debug enable */
33#define DCIC_KD         0x20000000      /* Kernel debug enable */
34#define DCIC_TE         0x10000000      /* Trace enable */
35#define DCIC_DW         0x08000000      /* Enable data breakpoints on write */
36#define DCIC_DR         0x04000000      /* Enable data breakpoints on read */
37#define DCIC_DAE        0x02000000      /* Enable data addresss breakpoints */
38#define DCIC_PCE        0x01000000      /* Enable instruction breakpoints */
39#define DCIC_DE         0x00800000      /* Debug enable */
40#define DCIC_DL         0x00008000      /* Data cache line invalidate */
41#define DCIC_IL         0x00004000      /* Instruction cache line invalidate */
42#define DCIC_D          0x00002000      /* Data cache invalidate enable */
43#define DCIC_I          0x00001000      /* Instr. cache invalidate enable */
44#define DCIC_T          0x00000020      /* Trace, set by CPU */
45#define DCIC_W          0x00000010      /* Write reference, set by CPU */
46#define DCIC_R          0x00000008      /* Read reference, set by CPU */
47#define DCIC_DA         0x00000004      /* Data address, set by CPU */
48#define DCIC_PC         0x00000002      /* Program counter, set by CPU */
49#define DCIC_DB         0x00000001      /* Debug, set by CPU */
50
51/* Define counter/timer register addresses */
52#define M_TIC1          0xfffe0000      /* timer 1 initial count */
53#define M_TC1           0xfffe0004      /* timer 1 control       */
54#define M_TIC2          0xfffe0008      /* timer 2 initial count */
55#define M_TC2           0xfffe000c      /* timer 2 control       */
56#define M_RTIC          0xfffe0010      /* refresh timer         */
57#define M_CFGREG        0xfffe0020      /* configuration reg     */
58
59/* Definitions for counter/timer control register bits */
60#define TC_CE           0x00000004      /* count enable */
61#define TC_IE           0x00000002      /* interrupt enable (1 == enable) */
62#define TC_INT          0x00000001      /* interrupt acknowlege (0 == ack) */
63#define TCNT_MASK       0x00ffffff      /* 24 bit timer mask */
64
65/* Definitions for Configuration register bits */
66#define CR_ICDISABLE    0x00800000      /* Instruction cache disable */
67#define CR_DCDISABLE    0x00400000      /* Data cache disable */
68#define CR_IBLK_2       0x00000000      /* Instruction cache block size */
69#define CR_IBLK_4       0x00100000      /* Instruction cache block size */
70#define CR_IBLK_8       0x00200000      /* Instruction cache block size */
71#define CR_IBLK_16      0x00300000      /* Instruction cache block size */
72#define CR_IBLKMSK      0x00300000      /* Instruction cache block size */
73#define CR_DBLK_2       0x00000000      /* Data cache block size */
74#define CR_DBLK_4       0x00040000      /* Data cache block size */
75#define CR_DBLK_8       0x00080000      /* Data cache block size */
76#define CR_DBLK_16      0x000c0000      /* Data cache block size */
77#define CR_DBLKMSK      0x000c0000      /* Data cache block size */
78#define CR_IODIS        0x00020000      /* Disable DRDY for I/O addresses */
79#define CR_IOWAITSHFT   13              /* I/O wait states */
80#define CR_PDIS         0x00001000      /* Disable DRDY for PROM addresses */
81#define CR_PWAITSHFT    8               /* PROM wait states */
82#define CR_DCAS         0x00000080      /* Define # cycles of DCAS */
83#define CR_DPEN         0x00000040      /* Enable parity check for DRAM */
84#define CR_RDYGEN       0x00000020      /* Disable DRDY for DRAM addresses */
85#define CR_BLKFDIS      0x00000010      /* Disable DRAM block refill */
86#define CR_RFSHEN       0x00000008      /* Enable refresh generator */
87#define CR_RASPCHG      0x00000004      /* Define RAS precharge */
88#define CR_CASLNTH      0x00000002      /* Define CAS active time */
89#define CR_DRAMEN       0x00000001      /* Enable DRAM controller */
90#define CR_PWT(x)       ((x) << 8)      /* memory wait states */
91#define CR_IOWT(x)      ((x) << 13)     /* io wait states */
92
93#define LR33000_DSIZE   0x400           /* Data cache = 1Kbytes */
94#define LR33000_ISIZE   0x2000          /* Instructrion cache = 8Kbytes */
95
96#ifdef __cplusplus
97}
98#endif
99
100#endif /* __INClr33000h */
Note: See TracBrowser for help on using the repository browser.