Path: blob/master/arch/arm/mach-kirkwood/include/mach/kirkwood.h
10820 views
/*1* arch/arm/mach-kirkwood/include/mach/kirkwood.h2*3* Generic definitions for Marvell Kirkwood SoC flavors:4* 88F6180, 88F6192 and 88F6281.5*6* This file is licensed under the terms of the GNU General Public7* License version 2. This program is licensed "as is" without any8* warranty of any kind, whether express or implied.9*/1011#ifndef __ASM_ARCH_KIRKWOOD_H12#define __ASM_ARCH_KIRKWOOD_H1314/*15* Marvell Kirkwood address maps.16*17* phys18* e0000000 PCIe #0 Memory space19* e8000000 PCIe #1 Memory space20* f1000000 on-chip peripheral registers21* f2000000 PCIe #0 I/O space22* f3000000 PCIe #1 I/O space23* f4000000 NAND controller address window24* f5000000 Security Accelerator SRAM25*26* virt phys size27* fed00000 f1000000 1M on-chip peripheral registers28* fee00000 f2000000 1M PCIe #0 I/O space29* fef00000 f3000000 1M PCIe #1 I/O space30*/3132#define KIRKWOOD_SRAM_PHYS_BASE 0xf500000033#define KIRKWOOD_SRAM_SIZE SZ_2K3435#define KIRKWOOD_NAND_MEM_PHYS_BASE 0xf400000036#define KIRKWOOD_NAND_MEM_SIZE SZ_1K3738#define KIRKWOOD_PCIE1_IO_PHYS_BASE 0xf300000039#define KIRKWOOD_PCIE1_IO_VIRT_BASE 0xfef0000040#define KIRKWOOD_PCIE1_IO_BUS_BASE 0x0010000041#define KIRKWOOD_PCIE1_IO_SIZE SZ_1M4243#define KIRKWOOD_PCIE_IO_PHYS_BASE 0xf200000044#define KIRKWOOD_PCIE_IO_VIRT_BASE 0xfee0000045#define KIRKWOOD_PCIE_IO_BUS_BASE 0x0000000046#define KIRKWOOD_PCIE_IO_SIZE SZ_1M4748#define KIRKWOOD_REGS_PHYS_BASE 0xf100000049#define KIRKWOOD_REGS_VIRT_BASE 0xfed0000050#define KIRKWOOD_REGS_SIZE SZ_1M5152#define KIRKWOOD_PCIE_MEM_PHYS_BASE 0xe000000053#define KIRKWOOD_PCIE_MEM_BUS_BASE 0xe000000054#define KIRKWOOD_PCIE_MEM_SIZE SZ_128M5556#define KIRKWOOD_PCIE1_MEM_PHYS_BASE 0xe800000057#define KIRKWOOD_PCIE1_MEM_BUS_BASE 0xe800000058#define KIRKWOOD_PCIE1_MEM_SIZE SZ_128M5960/*61* Register Map62*/63#define DDR_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x00000)64#define DDR_WINDOW_CPU_BASE (DDR_VIRT_BASE | 0x1500)65#define DDR_OPERATION_BASE (DDR_VIRT_BASE | 0x1418)6667#define DEV_BUS_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x10000)68#define DEV_BUS_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x10000)69#define SAMPLE_AT_RESET (DEV_BUS_VIRT_BASE | 0x0030)70#define DEVICE_ID (DEV_BUS_VIRT_BASE | 0x0034)71#define GPIO_LOW_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x0100)72#define GPIO_HIGH_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x0140)73#define RTC_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x0300)74#define SPI_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x0600)75#define I2C_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x1000)76#define UART0_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x2000)77#define UART0_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x2000)78#define UART1_PHYS_BASE (DEV_BUS_PHYS_BASE | 0x2100)79#define UART1_VIRT_BASE (DEV_BUS_VIRT_BASE | 0x2100)8081#define BRIDGE_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x20000)8283#define CRYPTO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x30000)8485#define PCIE_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x40000)86#define PCIE_LINK_CTRL (PCIE_VIRT_BASE | 0x70)87#define PCIE_STATUS (PCIE_VIRT_BASE | 0x1a04)88#define PCIE1_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x44000)89#define PCIE1_LINK_CTRL (PCIE1_VIRT_BASE | 0x70)90#define PCIE1_STATUS (PCIE1_VIRT_BASE | 0x1a04)9192#define USB_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x50000)9394#define XOR0_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x60800)95#define XOR0_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x60800)96#define XOR1_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x60900)97#define XOR1_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x60900)98#define XOR0_HIGH_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x60A00)99#define XOR0_HIGH_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x60A00)100#define XOR1_HIGH_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x60B00)101#define XOR1_HIGH_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x60B00)102103#define GE00_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x70000)104#define GE01_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x74000)105106#define SATA_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x80000)107#define SATA_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0x80000)108#define SATA0_IF_CTRL (SATA_VIRT_BASE | 0x2050)109#define SATA0_PHY_MODE_2 (SATA_VIRT_BASE | 0x2330)110#define SATA1_IF_CTRL (SATA_VIRT_BASE | 0x4050)111#define SATA1_PHY_MODE_2 (SATA_VIRT_BASE | 0x4330)112113#define SDIO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0x90000)114115#define AUDIO_PHYS_BASE (KIRKWOOD_REGS_PHYS_BASE | 0xA0000)116#define AUDIO_VIRT_BASE (KIRKWOOD_REGS_VIRT_BASE | 0xA0000)117118/*119* Supported devices and revisions.120*/121#define MV88F6281_DEV_ID 0x6281122#define MV88F6281_REV_Z0 0123#define MV88F6281_REV_A0 2124#define MV88F6281_REV_A1 3125126#define MV88F6192_DEV_ID 0x6192127#define MV88F6192_REV_Z0 0128#define MV88F6192_REV_A0 2129#define MV88F6192_REV_A1 3130131#define MV88F6180_DEV_ID 0x6180132#define MV88F6180_REV_A0 2133#define MV88F6180_REV_A1 3134135#define MV88F6282_DEV_ID 0x6282136#define MV88F6282_REV_A0 0137#endif138139140