From c9e3de941a1694aeab60a10bd39eb710c975010d Mon Sep 17 00:00:00 2001 From: Herbert Valerio Riedel Date: Sun, 11 Nov 2007 12:05:11 +0100 Subject: [ARM] Orion: MV88F5181 support bits add MV88F5181 support bits required by D-link DNS-323 patch Signed-off-by: Herbert Valerio Riedel Acked-by: Tzachi Perelstein Acked-by: Russell King --- arch/arm/mach-orion/addr-map.c | 4 +++- arch/arm/mach-orion/common.c | 6 ++++++ arch/arm/mach-orion/pci.c | 2 +- include/asm-arm/arch-orion/orion.h | 3 +++ 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/arch/arm/mach-orion/addr-map.c b/arch/arm/mach-orion/addr-map.c index ff6e010bccb2..488da3811a68 100644 --- a/arch/arm/mach-orion/addr-map.c +++ b/arch/arm/mach-orion/addr-map.c @@ -167,7 +167,9 @@ static int __init orion_cpu_win_can_remap(u32 win) u32 dev, rev; orion_pcie_id(&dev, &rev); - if ((dev == MV88F5281_DEV_ID && win < 4) || (dev == MV88F5182_DEV_ID && win < 2)) + if ((dev == MV88F5281_DEV_ID && win < 4) + || (dev == MV88F5182_DEV_ID && win < 2) + || (dev == MV88F5181_DEV_ID && win < 2)) return 1; return 0; diff --git a/arch/arm/mach-orion/common.c b/arch/arm/mach-orion/common.c index 12736fd60004..ff34827f82a5 100644 --- a/arch/arm/mach-orion/common.c +++ b/arch/arm/mach-orion/common.c @@ -237,6 +237,12 @@ static void orion_id(u32 *dev, u32 *rev, char **dev_name) } else { *dev_name = "MV88F5182-Rev-Unsupported"; } + } else if (*dev == MV88F5181_DEV_ID) { + if (*rev == MV88F5181_REV_B1) { + *dev_name = "MV88F5181-Rev-B1"; + } else { + *dev_name = "MV88F5181-Rev-Unsupported"; + } } else { *dev_name = "Device-Unknown"; } diff --git a/arch/arm/mach-orion/pci.c b/arch/arm/mach-orion/pci.c index cf569c647112..0498d7c69b30 100644 --- a/arch/arm/mach-orion/pci.c +++ b/arch/arm/mach-orion/pci.c @@ -154,7 +154,7 @@ static int orion_pcie_rd_conf(struct pci_bus *bus, u32 devfn, int where, PCIE_CONF_REG(where) | PCIE_CONF_ADDR_EN); orion_pcie_id(&dev, &rev); - if (dev == MV88F5182_DEV_ID) { + if (dev == MV88F5181_DEV_ID || dev == MV88F5182_DEV_ID) { /* extended register space */ pcie_addr = ORION_PCIE_WA_BASE; pcie_addr |= PCIE_CONF_BUS(bus->number) | diff --git a/include/asm-arm/arch-orion/orion.h b/include/asm-arm/arch-orion/orion.h index 061c03c5a17e..f787f752e58c 100644 --- a/include/asm-arm/arch-orion/orion.h +++ b/include/asm-arm/arch-orion/orion.h @@ -43,6 +43,9 @@ /******************************************************************************* * Supported Devices & Revisions ******************************************************************************/ +/* Orion-1 (88F5181) */ +#define MV88F5181_DEV_ID 0x5181 +#define MV88F5181_REV_B1 3 /* Orion-NAS (88F5182) */ #define MV88F5182_DEV_ID 0x5182 #define MV88F5182_REV_A2 2 -- cgit v1.2.3-59-g8ed1b