diff options
author | Paul Walmsley <paul@pwsan.com> | 2011-10-06 16:39:28 -0400 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2011-11-04 20:41:07 -0400 |
commit | ace9021698ef7d298e6d184ae2880b1cb3ebc4c7 (patch) | |
tree | ee1610ed2199495a2c98fcada271f0d92f6d22d6 | |
parent | af504e5d39de35dc3de5f42c357fe1b519fea33f (diff) |
ARM: OMAP3: hwmod: fix variant registration and remove SmartReflex from common list
Commit d6504acd2125984c61dce24727dd3842d0144015 ("OMAP2+: hwmod:
remove OMAP_CHIP*") tests the inverse condition of what it should be
testing for the return value from omap_hwmod_register(). This causes
several IP blocks to not be registered on several OMAP3 family devices.
Fixing that bug also unmasked another bug, originally reported by
Chase Maupin <chase.maupin@ti.com> and then subsequently by Abhilash K
V <abhilash.kv@ti.com>, which caused SmartReflex IP blocks to be
registered on SoCs that don't support them.
Thanks to Russell King - ARM Linux <linux@arm.linux.org.uk> for comments
on a previous version of the patch.
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Chase Maupin <chase.maupin@ti.com>
Cc: Abhilash K V <abhilash.kv@ti.com>
Cc: Russell King - ARM Linux <linux@arm.linux.org.uk>
Signed-off-by: Tony Lindgren <tony@atomide.com>
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c index 87a3b01d254c..bc9035ec87fc 100644 --- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | |||
@@ -3270,7 +3270,7 @@ int __init omap3xxx_hwmod_init(void) | |||
3270 | 3270 | ||
3271 | /* Register hwmods common to all OMAP3 */ | 3271 | /* Register hwmods common to all OMAP3 */ |
3272 | r = omap_hwmod_register(omap3xxx_hwmods); | 3272 | r = omap_hwmod_register(omap3xxx_hwmods); |
3273 | if (!r) | 3273 | if (r < 0) |
3274 | return r; | 3274 | return r; |
3275 | 3275 | ||
3276 | rev = omap_rev(); | 3276 | rev = omap_rev(); |
@@ -3295,7 +3295,7 @@ int __init omap3xxx_hwmod_init(void) | |||
3295 | }; | 3295 | }; |
3296 | 3296 | ||
3297 | r = omap_hwmod_register(h); | 3297 | r = omap_hwmod_register(h); |
3298 | if (!r) | 3298 | if (r < 0) |
3299 | return r; | 3299 | return r; |
3300 | 3300 | ||
3301 | /* | 3301 | /* |