summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/gpmc.c
diff options
context:
space:
mode:
authorJavier Martinez Canillas2013-03-14 16:09:20 +0100
committerJon Hunter2013-04-04 03:13:41 +0200
commite8ffd6fdf28ac8404acebf2759315600bfdcb5f9 (patch)
tree324704ef67594941dd7fc998c2f1639dbfc64009 /arch/arm/mach-omap2/gpmc.c
parentARM: OMAP2+: Allow GPMC probe to complete even if CS mapping fails (diff)
downloadkernel-qcow2-linux-e8ffd6fdf28ac8404acebf2759315600bfdcb5f9.tar.gz
kernel-qcow2-linux-e8ffd6fdf28ac8404acebf2759315600bfdcb5f9.tar.xz
kernel-qcow2-linux-e8ffd6fdf28ac8404acebf2759315600bfdcb5f9.zip
ARM: OMAP2+: return -ENODEV if GPMC child device creation fails
gpmc_probe_nor_child() calls of_platform_device_create() to create a platform device for the NOR child. If this function fails the value of ret is returned to the caller but this value is zero since it was assigned the return of a previous call to gpmc_cs_program_settings() that had to succeed or otherwise gpmc_probe_nor_child() would have returned before. This means that if of_platform_device_create() fails, 0 will be returned to the caller instead of an appropriate error code. Signed-off-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk> Signed-off-by: Jon Hunter <jon-hunter@ti.com> Tested-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com>
Diffstat (limited to 'arch/arm/mach-omap2/gpmc.c')
-rw-r--r--arch/arm/mach-omap2/gpmc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c
index 5f6af202807a..c6f0ef563817 100644
--- a/arch/arm/mach-omap2/gpmc.c
+++ b/arch/arm/mach-omap2/gpmc.c
@@ -1495,6 +1495,7 @@ static int gpmc_probe_nor_child(struct platform_device *pdev,
return 0;
dev_err(&pdev->dev, "failed to create gpmc child %s\n", child->name);
+ ret = -ENODEV;
err:
gpmc_cs_free(cs);