2 * include/asm-ppc/mpc85xx.h
6 * Maintainer: Kumar Gala <kumar.gala@freescale.com>
8 * Copyright 2004 Freescale Semiconductor, Inc
10 * This program is free software; you can redistribute it and/or modify it
11 * under the terms of the GNU General Public License as published by the
12 * Free Software Foundation; either version 2 of the License, or (at your
13 * option) any later version.
17 #ifndef __ASM_MPC85xx_H__
18 #define __ASM_MPC85xx_H__
20 #include <linux/config.h>
25 #ifdef CONFIG_MPC8540_ADS
26 #include <platforms/85xx/mpc8540_ads.h>
28 #if defined(CONFIG_MPC8555_CDS) || defined(CONFIG_MPC8548_CDS)
29 #include <platforms/85xx/mpc8555_cds.h>
31 #ifdef CONFIG_MPC8560_ADS
32 #include <platforms/85xx/mpc8560_ads.h>
35 #include <platforms/85xx/sbc8560.h>
38 #include <platforms/85xx/stx_gp3.h>
41 #define _IO_BASE isa_io_base
42 #define _ISA_MEM_BASE isa_mem_base
44 #define PCI_DRAM_OFFSET pci_dram_offset
46 #define PCI_DRAM_OFFSET 0
50 * The "residual" board information structure the boot loader passes
53 extern unsigned char __res[];
55 /* Offset from CCSRBAR */
56 #define MPC85xx_CPM_OFFSET (0x80000)
57 #define MPC85xx_CPM_SIZE (0x40000)
58 #define MPC85xx_DMA_OFFSET (0x21000)
59 #define MPC85xx_DMA_SIZE (0x01000)
60 #define MPC85xx_DMA0_OFFSET (0x21100)
61 #define MPC85xx_DMA0_SIZE (0x00080)
62 #define MPC85xx_DMA1_OFFSET (0x21180)
63 #define MPC85xx_DMA1_SIZE (0x00080)
64 #define MPC85xx_DMA2_OFFSET (0x21200)
65 #define MPC85xx_DMA2_SIZE (0x00080)
66 #define MPC85xx_DMA3_OFFSET (0x21280)
67 #define MPC85xx_DMA3_SIZE (0x00080)
68 #define MPC85xx_ENET1_OFFSET (0x24000)
69 #define MPC85xx_ENET1_SIZE (0x01000)
70 #define MPC85xx_ENET2_OFFSET (0x25000)
71 #define MPC85xx_ENET2_SIZE (0x01000)
72 #define MPC85xx_ENET3_OFFSET (0x26000)
73 #define MPC85xx_ENET3_SIZE (0x01000)
74 #define MPC85xx_GUTS_OFFSET (0xe0000)
75 #define MPC85xx_GUTS_SIZE (0x01000)
76 #define MPC85xx_IIC1_OFFSET (0x03000)
77 #define MPC85xx_IIC1_SIZE (0x00100)
78 #define MPC85xx_OPENPIC_OFFSET (0x40000)
79 #define MPC85xx_OPENPIC_SIZE (0x40000)
80 #define MPC85xx_PCI1_OFFSET (0x08000)
81 #define MPC85xx_PCI1_SIZE (0x01000)
82 #define MPC85xx_PCI2_OFFSET (0x09000)
83 #define MPC85xx_PCI2_SIZE (0x01000)
84 #define MPC85xx_PERFMON_OFFSET (0xe1000)
85 #define MPC85xx_PERFMON_SIZE (0x01000)
86 #define MPC85xx_SEC2_OFFSET (0x30000)
87 #define MPC85xx_SEC2_SIZE (0x10000)
88 #define MPC85xx_UART0_OFFSET (0x04500)
89 #define MPC85xx_UART0_SIZE (0x00100)
90 #define MPC85xx_UART1_OFFSET (0x04600)
91 #define MPC85xx_UART1_SIZE (0x00100)
93 #define MPC85xx_CCSRBAR_SIZE (1024*1024)
95 /* Let modules/drivers get at CCSRBAR */
96 extern phys_addr_t get_ccsrbar(void);
99 #define CCSRBAR get_ccsrbar()
101 #define CCSRBAR BOARD_CCSRBAR
104 enum ppc_sys_devices {
137 /* Internal interrupts are all Level Sensitive, and Positive Polarity */
138 #define MPC85XX_INTERNAL_IRQ_SENSES \
139 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 0 */ \
140 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 1 */ \
141 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 2 */ \
142 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 3 */ \
143 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 4 */ \
144 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 5 */ \
145 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 6 */ \
146 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 7 */ \
147 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 8 */ \
148 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 9 */ \
149 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 10 */ \
150 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 11 */ \
151 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 12 */ \
152 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 13 */ \
153 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 14 */ \
154 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 15 */ \
155 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 16 */ \
156 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 17 */ \
157 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 18 */ \
158 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 19 */ \
159 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 20 */ \
160 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 21 */ \
161 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 22 */ \
162 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 23 */ \
163 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 24 */ \
164 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 25 */ \
165 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 26 */ \
166 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 27 */ \
167 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 28 */ \
168 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 29 */ \
169 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 30 */ \
170 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 31 */ \
171 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 32 */ \
172 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 33 */ \
173 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 34 */ \
174 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 35 */ \
175 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 36 */ \
176 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 37 */ \
177 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 38 */ \
178 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 39 */ \
179 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 40 */ \
180 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 41 */ \
181 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 42 */ \
182 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 43 */ \
183 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 44 */ \
184 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 45 */ \
185 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 46 */ \
186 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE) /* Internal 47 */
188 #endif /* CONFIG_85xx */
189 #endif /* __ASM_MPC85xx_H__ */
190 #endif /* __KERNEL__ */