]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * A collection of structures, addresses, and values associated with | |
3 | * the RPCG RPX-Lite board. Copied from the MBX stuff. | |
4 | * | |
5 | * Copyright (c) 1998 Dan Malek (dmalek@jlc.net) | |
6 | */ | |
7 | #ifdef __KERNEL__ | |
8 | #ifndef __MACH_RPX_DEFS | |
9 | #define __MACH_RPX_DEFS | |
10 | ||
11 | #include <linux/config.h> | |
12 | ||
13 | #ifndef __ASSEMBLY__ | |
14 | /* A Board Information structure that is given to a program when | |
15 | * prom starts it up. | |
16 | */ | |
17 | typedef struct bd_info { | |
18 | unsigned int bi_memstart; /* Memory start address */ | |
19 | unsigned int bi_memsize; /* Memory (end) size in bytes */ | |
20 | unsigned int bi_intfreq; /* Internal Freq, in Hz */ | |
21 | unsigned int bi_busfreq; /* Bus Freq, in Hz */ | |
22 | unsigned char bi_enetaddr[6]; | |
23 | unsigned int bi_baudrate; | |
24 | } bd_t; | |
25 | ||
26 | extern bd_t m8xx_board_info; | |
27 | ||
28 | /* Memory map is configured by the PROM startup. | |
29 | * We just map a few things we need. The CSR is actually 4 byte-wide | |
30 | * registers that can be accessed as 8-, 16-, or 32-bit values. | |
31 | */ | |
32 | #define RPX_CSR_ADDR ((uint)0xfa400000) | |
33 | #define RPX_CSR_SIZE ((uint)(4 * 1024)) | |
34 | #define IMAP_ADDR ((uint)0xfa200000) | |
35 | #define IMAP_SIZE ((uint)(64 * 1024)) | |
36 | #define PCMCIA_MEM_ADDR ((uint)0x04000000) | |
37 | #define PCMCIA_MEM_SIZE ((uint)(64 * 1024)) | |
38 | #define PCMCIA_IO_ADDR ((uint)0x04400000) | |
39 | #define PCMCIA_IO_SIZE ((uint)(4 * 1024)) | |
40 | ||
41 | /* Things of interest in the CSR. | |
42 | */ | |
43 | #define BCSR0_ETHEN ((uint)0x80000000) | |
44 | #define BCSR0_ETHLPBK ((uint)0x40000000) | |
45 | #define BCSR0_COLTESTDIS ((uint)0x20000000) | |
46 | #define BCSR0_FULLDPLXDIS ((uint)0x10000000) | |
47 | #define BCSR0_LEDOFF ((uint)0x08000000) | |
48 | #define BCSR0_USBDISABLE ((uint)0x04000000) | |
49 | #define BCSR0_USBHISPEED ((uint)0x02000000) | |
50 | #define BCSR0_USBPWREN ((uint)0x01000000) | |
51 | #define BCSR0_PCMCIAVOLT ((uint)0x000f0000) | |
52 | #define BCSR0_PCMCIA3VOLT ((uint)0x000a0000) | |
53 | #define BCSR0_PCMCIA5VOLT ((uint)0x00060000) | |
54 | ||
55 | #define BCSR1_IPB5SEL ((uint)0x00100000) | |
56 | #define BCSR1_PCVCTL4 ((uint)0x00080000) | |
57 | #define BCSR1_PCVCTL5 ((uint)0x00040000) | |
58 | #define BCSR1_PCVCTL6 ((uint)0x00020000) | |
59 | #define BCSR1_PCVCTL7 ((uint)0x00010000) | |
60 | ||
61 | #if defined(CONFIG_HTDMSOUND) | |
62 | #include <platforms/rpxhiox.h> | |
63 | #endif | |
64 | ||
65 | /* define IO_BASE for pcmcia */ | |
66 | #define _IO_BASE 0x80000000 | |
67 | #define _IO_BASE_SIZE 0x1000 | |
68 | ||
69 | #ifdef CONFIG_IDE | |
70 | # define MAX_HWIFS 1 | |
71 | #endif | |
72 | ||
73 | /* CPM Ethernet through SCCx. | |
74 | * | |
75 | * This ENET stuff is for the MPC850 with ethernet on SCC2. Some of | |
76 | * this may be unique to the RPX-Lite configuration. | |
77 | * Note TENA is on Port B. | |
78 | */ | |
79 | #define PA_ENET_RXD ((ushort)0x0004) | |
80 | #define PA_ENET_TXD ((ushort)0x0008) | |
81 | #define PA_ENET_TCLK ((ushort)0x0200) | |
82 | #define PA_ENET_RCLK ((ushort)0x0800) | |
83 | #define PB_ENET_TENA ((uint)0x00002000) | |
84 | #define PC_ENET_CLSN ((ushort)0x0040) | |
85 | #define PC_ENET_RENA ((ushort)0x0080) | |
86 | ||
87 | #define SICR_ENET_MASK ((uint)0x0000ff00) | |
88 | #define SICR_ENET_CLKRT ((uint)0x00003d00) | |
89 | ||
90 | /* We don't use the 8259. | |
91 | */ | |
92 | #define NR_8259_INTS 0 | |
93 | ||
94 | #endif /* !__ASSEMBLY__ */ | |
95 | #endif /* __MACH_RPX_DEFS */ | |
96 | #endif /* __KERNEL__ */ |