diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-orion/addr-map.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-orion/common.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-orion/pci.c | 2 |
3 files changed, 10 insertions, 2 deletions
diff --git a/arch/arm/mach-orion/addr-map.c b/arch/arm/mach-orion/addr-map.c index ff6e010..488da38 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 12736fd..ff34827 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 cf569c6..0498d7c 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) | |