aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-orion/addr-map.c4
-rw-r--r--arch/arm/mach-orion/common.c6
-rw-r--r--arch/arm/mach-orion/pci.c2
-rw-r--r--include/asm-arm/arch-orion/orion.h3
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)
167 u32 dev, rev; 167 u32 dev, rev;
168 168
169 orion_pcie_id(&dev, &rev); 169 orion_pcie_id(&dev, &rev);
170 if ((dev == MV88F5281_DEV_ID && win < 4) || (dev == MV88F5182_DEV_ID && win < 2)) 170 if ((dev == MV88F5281_DEV_ID && win < 4)
171 || (dev == MV88F5182_DEV_ID && win < 2)
172 || (dev == MV88F5181_DEV_ID && win < 2))
171 return 1; 173 return 1;
172 174
173 return 0; 175 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)
237 } else { 237 } else {
238 *dev_name = "MV88F5182-Rev-Unsupported"; 238 *dev_name = "MV88F5182-Rev-Unsupported";
239 } 239 }
240 } else if (*dev == MV88F5181_DEV_ID) {
241 if (*rev == MV88F5181_REV_B1) {
242 *dev_name = "MV88F5181-Rev-B1";
243 } else {
244 *dev_name = "MV88F5181-Rev-Unsupported";
245 }
240 } else { 246 } else {
241 *dev_name = "Device-Unknown"; 247 *dev_name = "Device-Unknown";
242 } 248 }
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,
154 PCIE_CONF_REG(where) | PCIE_CONF_ADDR_EN); 154 PCIE_CONF_REG(where) | PCIE_CONF_ADDR_EN);
155 155
156 orion_pcie_id(&dev, &rev); 156 orion_pcie_id(&dev, &rev);
157 if (dev == MV88F5182_DEV_ID) { 157 if (dev == MV88F5181_DEV_ID || dev == MV88F5182_DEV_ID) {
158 /* extended register space */ 158 /* extended register space */
159 pcie_addr = ORION_PCIE_WA_BASE; 159 pcie_addr = ORION_PCIE_WA_BASE;
160 pcie_addr |= PCIE_CONF_BUS(bus->number) | 160 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 @@
43/******************************************************************************* 43/*******************************************************************************
44 * Supported Devices & Revisions 44 * Supported Devices & Revisions
45 ******************************************************************************/ 45 ******************************************************************************/
46/* Orion-1 (88F5181) */
47#define MV88F5181_DEV_ID 0x5181
48#define MV88F5181_REV_B1 3
46/* Orion-NAS (88F5182) */ 49/* Orion-NAS (88F5182) */
47#define MV88F5182_DEV_ID 0x5182 50#define MV88F5182_DEV_ID 0x5182
48#define MV88F5182_REV_A2 2 51#define MV88F5182_REV_A2 2