diff options
author | Roger Quadros <rogerq@ti.com> | 2014-08-29 19:11:51 +0300 |
---|---|---|
committer | Roger Quadros <rogerq@ti.com> | 2014-10-30 17:20:58 +0200 |
commit | 7604baf365a3bd46007be6fbd2e43ac4a46ce928 (patch) | |
tree | 6a641978195f7aeb57e6d3122d7a805320e68a5e /arch/arm/mach-omap2/gpmc.c | |
parent | 80323742eab6aca28ebe91cbca84a3d5ab940f4d (diff) | |
download | op-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>
Diffstat (limited to 'arch/arm/mach-omap2/gpmc.c')
-rw-r--r-- | arch/arm/mach-omap2/gpmc.c | 7 |
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)) |