Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at 2012a116d9e6803fb072d0cfe1aae0cc4e6d6416 193 lines 6.7 kB view raw
1/* 2 * include/asm-ppc/mpc85xx.h 3 * 4 * MPC85xx definitions 5 * 6 * Maintainer: Kumar Gala <galak@kernel.crashing.org> 7 * 8 * Copyright 2004 Freescale Semiconductor, Inc 9 * 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. 14 */ 15 16#ifdef __KERNEL__ 17#ifndef __ASM_MPC85xx_H__ 18#define __ASM_MPC85xx_H__ 19 20#include <linux/config.h> 21#include <asm/mmu.h> 22 23#ifdef CONFIG_85xx 24 25#ifdef CONFIG_MPC8540_ADS 26#include <platforms/85xx/mpc8540_ads.h> 27#endif 28#if defined(CONFIG_MPC8555_CDS) || defined(CONFIG_MPC8548_CDS) 29#include <platforms/85xx/mpc8555_cds.h> 30#endif 31#ifdef CONFIG_MPC8560_ADS 32#include <platforms/85xx/mpc8560_ads.h> 33#endif 34#ifdef CONFIG_SBC8560 35#include <platforms/85xx/sbc8560.h> 36#endif 37#ifdef CONFIG_STX_GP3 38#include <platforms/85xx/stx_gp3.h> 39#endif 40 41#define _IO_BASE isa_io_base 42#define _ISA_MEM_BASE isa_mem_base 43#ifdef CONFIG_PCI 44#define PCI_DRAM_OFFSET pci_dram_offset 45#else 46#define PCI_DRAM_OFFSET 0 47#endif 48 49/* 50 * The "residual" board information structure the boot loader passes 51 * into the kernel. 52 */ 53extern unsigned char __res[]; 54 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_MIIM_OFFSET (0x24520) 71#define MPC85xx_MIIM_SIZE (0x00018) 72#define MPC85xx_ENET2_OFFSET (0x25000) 73#define MPC85xx_ENET2_SIZE (0x01000) 74#define MPC85xx_ENET3_OFFSET (0x26000) 75#define MPC85xx_ENET3_SIZE (0x01000) 76#define MPC85xx_GUTS_OFFSET (0xe0000) 77#define MPC85xx_GUTS_SIZE (0x01000) 78#define MPC85xx_IIC1_OFFSET (0x03000) 79#define MPC85xx_IIC1_SIZE (0x00100) 80#define MPC85xx_OPENPIC_OFFSET (0x40000) 81#define MPC85xx_OPENPIC_SIZE (0x40000) 82#define MPC85xx_PCI1_OFFSET (0x08000) 83#define MPC85xx_PCI1_SIZE (0x01000) 84#define MPC85xx_PCI2_OFFSET (0x09000) 85#define MPC85xx_PCI2_SIZE (0x01000) 86#define MPC85xx_PERFMON_OFFSET (0xe1000) 87#define MPC85xx_PERFMON_SIZE (0x01000) 88#define MPC85xx_SEC2_OFFSET (0x30000) 89#define MPC85xx_SEC2_SIZE (0x10000) 90#define MPC85xx_UART0_OFFSET (0x04500) 91#define MPC85xx_UART0_SIZE (0x00100) 92#define MPC85xx_UART1_OFFSET (0x04600) 93#define MPC85xx_UART1_SIZE (0x00100) 94 95#define MPC85xx_CCSRBAR_SIZE (1024*1024) 96 97/* Let modules/drivers get at CCSRBAR */ 98extern phys_addr_t get_ccsrbar(void); 99 100#ifdef MODULE 101#define CCSRBAR get_ccsrbar() 102#else 103#define CCSRBAR BOARD_CCSRBAR 104#endif 105 106enum ppc_sys_devices { 107 MPC85xx_TSEC1, 108 MPC85xx_TSEC2, 109 MPC85xx_FEC, 110 MPC85xx_IIC1, 111 MPC85xx_DMA0, 112 MPC85xx_DMA1, 113 MPC85xx_DMA2, 114 MPC85xx_DMA3, 115 MPC85xx_DUART, 116 MPC85xx_PERFMON, 117 MPC85xx_SEC2, 118 MPC85xx_CPM_SPI, 119 MPC85xx_CPM_I2C, 120 MPC85xx_CPM_USB, 121 MPC85xx_CPM_SCC1, 122 MPC85xx_CPM_SCC2, 123 MPC85xx_CPM_SCC3, 124 MPC85xx_CPM_SCC4, 125 MPC85xx_CPM_FCC1, 126 MPC85xx_CPM_FCC2, 127 MPC85xx_CPM_FCC3, 128 MPC85xx_CPM_MCC1, 129 MPC85xx_CPM_MCC2, 130 MPC85xx_CPM_SMC1, 131 MPC85xx_CPM_SMC2, 132 MPC85xx_eTSEC1, 133 MPC85xx_eTSEC2, 134 MPC85xx_eTSEC3, 135 MPC85xx_eTSEC4, 136 MPC85xx_IIC2, 137 MPC85xx_MDIO, 138}; 139 140/* Internal interrupts are all Level Sensitive, and Positive Polarity */ 141#define MPC85XX_INTERNAL_IRQ_SENSES \ 142 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 0 */ \ 143 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 1 */ \ 144 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 2 */ \ 145 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 3 */ \ 146 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 4 */ \ 147 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 5 */ \ 148 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 6 */ \ 149 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 7 */ \ 150 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 8 */ \ 151 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 9 */ \ 152 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 10 */ \ 153 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 11 */ \ 154 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 12 */ \ 155 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 13 */ \ 156 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 14 */ \ 157 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 15 */ \ 158 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 16 */ \ 159 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 17 */ \ 160 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 18 */ \ 161 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 19 */ \ 162 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 20 */ \ 163 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 21 */ \ 164 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 22 */ \ 165 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 23 */ \ 166 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 24 */ \ 167 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 25 */ \ 168 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 26 */ \ 169 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 27 */ \ 170 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 28 */ \ 171 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 29 */ \ 172 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 30 */ \ 173 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 31 */ \ 174 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 32 */ \ 175 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 33 */ \ 176 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 34 */ \ 177 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 35 */ \ 178 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 36 */ \ 179 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 37 */ \ 180 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 38 */ \ 181 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 39 */ \ 182 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 40 */ \ 183 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 41 */ \ 184 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 42 */ \ 185 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 43 */ \ 186 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 44 */ \ 187 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 45 */ \ 188 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE), /* Internal 46 */ \ 189 (IRQ_SENSE_LEVEL | IRQ_POLARITY_POSITIVE) /* Internal 47 */ 190 191#endif /* CONFIG_85xx */ 192#endif /* __ASM_MPC85xx_H__ */ 193#endif /* __KERNEL__ */