aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-omap2/gpmc.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
index f5d9dd256d63..0ba95d3e74e5 100644
--- a/arch/arm/mach-omap2/gpmc.c
+++ b/arch/arm/mach-omap2/gpmc.c
@@ -85,6 +85,8 @@
85#define GPMC_ECC_CTRL_ECCREG8 0x008 85#define GPMC_ECC_CTRL_ECCREG8 0x008
86#define GPMC_ECC_CTRL_ECCREG9 0x009 86#define GPMC_ECC_CTRL_ECCREG9 0x009
87 87
88#define GPMC_CONFIG_LIMITEDADDRESS BIT(1)
89
88#define GPMC_CONFIG2_CSEXTRADELAY BIT(7) 90#define GPMC_CONFIG2_CSEXTRADELAY BIT(7)
89#define GPMC_CONFIG3_ADVEXTRADELAY BIT(7) 91#define GPMC_CONFIG3_ADVEXTRADELAY BIT(7)
90#define GPMC_CONFIG4_OEEXTRADELAY BIT(7) 92#define GPMC_CONFIG4_OEEXTRADELAY BIT(7)
@@ -1501,6 +1503,7 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
1501 struct resource res; 1503 struct resource res;
1502 unsigned long base; 1504 unsigned long base;
1503 int ret, cs; 1505 int ret, cs;
1506 u32 val;
1504 1507
1505 if (of_property_read_u32(child, "reg", &cs) < 0) { 1508 if (of_property_read_u32(child, "reg", &cs) < 0) {
1506 dev_err(&pdev->dev, "%s has no 'reg' property\n", 1509 dev_err(&pdev->dev, "%s has no 'reg' property\n",
@@ -1569,6 +1572,11 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
1569 goto err; 1572 goto err;
1570 } 1573 }
1571 1574
1575 /* Clear limited address i.e. enable A26-A11 */
1576 val = gpmc_read_reg(GPMC_CONFIG);
1577 val &= ~GPMC_CONFIG_LIMITEDADDRESS;
1578 gpmc_write_reg(GPMC_CONFIG, val);
1579
1572no_timings: 1580no_timings:
1573 if (of_platform_device_create(child, NULL, &pdev->dev)) 1581 if (of_platform_device_create(child, NULL, &pdev->dev))
1574 return 0; 1582 return 0;