Path: blob/master/arch/arm/mach-ixp23xx/include/mach/ixdp2351.h
15157 views
/*1* arch/arm/mach-ixp23xx/include/mach/ixdp2351.h2*3* Register and other defines for IXDP23514*5* Copyright (c) 2002-2004 Intel Corp.6* Copytight (c) 2005 MontaVista Software, Inc.7*8* This program is free software; you can redistribute it and/or modify it9* under the terms of the GNU General Public License as published by the10* Free Software Foundation; either version 2 of the License, or (at your11* option) any later version.12*/1314#ifndef __ASM_ARCH_IXDP2351_H15#define __ASM_ARCH_IXDP2351_H1617/*18* NP module memory map19*/20#define IXDP2351_NP_PHYS_BASE (IXP23XX_EXP_BUS_CS4_BASE)21#define IXDP2351_NP_PHYS_SIZE 0x0010000022#define IXDP2351_NP_VIRT_BASE 0xeff000002324#define IXDP2351_VIRT_CS8900_BASE (IXDP2351_NP_VIRT_BASE)25#define IXDP2351_VIRT_CS8900_END (IXDP2351_VIRT_CS8900_BASE + 16)2627#define IXDP2351_VIRT_NP_CPLD_BASE (IXP23XX_EXP_BUS_CS4_BASE_VIRT + 0x00010000)2829#define IXDP2351_NP_CPLD_REG(reg) ((volatile u16 *)(IXDP2351_VIRT_NP_CPLD_BASE + reg))3031#define IXDP2351_NP_CPLD_RESET1_REG IXDP2351_NP_CPLD_REG(0x00)32#define IXDP2351_NP_CPLD_LED_REG IXDP2351_NP_CPLD_REG(0x02)33#define IXDP2351_NP_CPLD_VERSION_REG IXDP2351_NP_CPLD_REG(0x04)3435/*36* Base board module memory map37*/3839#define IXDP2351_BB_BASE_PHYS (IXP23XX_EXP_BUS_CS5_BASE)40#define IXDP2351_BB_SIZE 0x0100000041#define IXDP2351_BB_BASE_VIRT (0xee000000)4243#define IXDP2351_BB_AREA_BASE(offset) (IXDP2351_BB_BASE_VIRT + offset)4445#define IXDP2351_VIRT_NVRAM_BASE IXDP2351_BB_AREA_BASE(0x0)46#define IXDP2351_NVRAM_SIZE (0x20000)4748#define IXDP2351_VIRT_MB_IXF1104_BASE IXDP2351_BB_AREA_BASE(0x00020000)49#define IXDP2351_VIRT_ADD_UART_BASE IXDP2351_BB_AREA_BASE(0x000240C0)50#define IXDP2351_VIRT_FIC_BASE IXDP2351_BB_AREA_BASE(0x00200000)51#define IXDP2351_VIRT_DB0_BASE IXDP2351_BB_AREA_BASE(0x00400000)52#define IXDP2351_VIRT_DB1_BASE IXDP2351_BB_AREA_BASE(0x00600000)53#define IXDP2351_VIRT_CPLD_BASE IXDP2351_BB_AREA_BASE(0x00024000)5455/*56* On board CPLD registers57*/58#define IXDP2351_CPLD_BB_REG(reg) ((volatile u16 *)(IXDP2351_VIRT_CPLD_BASE + reg))5960#define IXDP2351_CPLD_RESET0_REG IXDP2351_CPLD_BB_REG(0x00)61#define IXDP2351_CPLD_RESET1_REG IXDP2351_CPLD_BB_REG(0x04)6263#define IXDP2351_CPLD_RESET1_MAGIC 0x55AA64#define IXDP2351_CPLD_RESET1_ENABLE 0x80006566#define IXDP2351_CPLD_FPGA_CONFIG_REG IXDP2351_CPLD_BB_REG(0x08)67#define IXDP2351_CPLD_INTB_MASK_SET_REG IXDP2351_CPLD_BB_REG(0x10)68#define IXDP2351_CPLD_INTA_MASK_SET_REG IXDP2351_CPLD_BB_REG(0x14)69#define IXDP2351_CPLD_INTB_STAT_REG IXDP2351_CPLD_BB_REG(0x18)70#define IXDP2351_CPLD_INTA_STAT_REG IXDP2351_CPLD_BB_REG(0x1C)71#define IXDP2351_CPLD_INTB_RAW_REG IXDP2351_CPLD_BB_REG(0x20) /* read */72#define IXDP2351_CPLD_INTA_RAW_REG IXDP2351_CPLD_BB_REG(0x24) /* read */73#define IXDP2351_CPLD_INTB_MASK_CLR_REG IXDP2351_CPLD_INTB_RAW_REG /* write */74#define IXDP2351_CPLD_INTA_MASK_CLR_REG IXDP2351_CPLD_INTA_RAW_REG /* write */75#define IXDP2351_CPLD_INTB_SIM_REG IXDP2351_CPLD_BB_REG(0x28)76#define IXDP2351_CPLD_INTA_SIM_REG IXDP2351_CPLD_BB_REG(0x2C)77/* Interrupt bits are defined in irqs.h */78#define IXDP2351_CPLD_BB_GBE0_REG IXDP2351_CPLD_BB_REG(0x30)79#define IXDP2351_CPLD_BB_GBE1_REG IXDP2351_CPLD_BB_REG(0x34)8081/* #define IXDP2351_CPLD_BB_MISC_REG IXDP2351_CPLD_REG(0x1C) */82/* #define IXDP2351_CPLD_BB_MISC_REV_MASK 0xFF */83/* #define IXDP2351_CPLD_BB_GDXCS0_REG IXDP2351_CPLD_REG(0x24) */84/* #define IXDP2351_CPLD_BB_GDXCS1_REG IXDP2351_CPLD_REG(0x28) */85/* #define IXDP2351_CPLD_BB_CLOCK_REG IXDP2351_CPLD_REG(0x04) */868788#endif899091