summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoger Quadros <rogerq@ti.com>2014-08-29 19:11:51 +0300
committerRoger Quadros <rogerq@ti.com>2014-10-30 17:20:58 +0200
commit7604baf365a3bd46007be6fbd2e43ac4a46ce928 (patch)
tree6a641978195f7aeb57e6d3122d7a805320e68a5e
parent80323742eab6aca28ebe91cbca84a3d5ab940f4d (diff)
downloadop-kernel-dev-7604baf365a3bd46007be6fbd2e43ac4a46ce928.zip
op-kernel-dev-7604baf365a3bd46007be6fbd2e43ac4a46ce928.tar.gz
ARM: OMAP2+: gpmc: Error out if timings fail in gpmc_probe_generic_child()
gpmc_cs_set_timings() returns non-zero if there was an error while setting the GPMC timings. e.g. Timing was too large to be accomodated with current GPMC clock frequency and available timing range. Fail in this case, else we risk operating a NOR device with non compliant timings. Signed-off-by: Roger Quadros <rogerq@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
-rw-r--r--arch/arm/mach-omap2/gpmc.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
index 45f680f..f5d9dd2 100644
--- a/arch/arm/mach-omap2/gpmc.c
+++ b/arch/arm/mach-omap2/gpmc.c
@@ -1562,7 +1562,12 @@ static int gpmc_probe_generic_child(struct platform_device *pdev,
goto err;
gpmc_read_timings_dt(child, &gpmc_t);
- gpmc_cs_set_timings(cs, &gpmc_t);
+ ret = gpmc_cs_set_timings(cs, &gpmc_t);
+ if (ret) {
+ dev_err(&pdev->dev, "failed to set gpmc timings for: %s\n",
+ child->name);
+ goto err;
+ }
no_timings:
if (of_platform_device_create(child, NULL, &pdev->dev))
OpenPOWER on IntegriCloud