path: root/arch/arm/mach-omap2/omap_device.c
diff options
authorTony Lindgren <tony@atomide.com>2013-12-06 10:52:58 -0800
committerTony Lindgren <tony@atomide.com>2013-12-08 14:15:46 -0800
commitdad12d11380882616872a8243a9c3f706fcedd31 (patch)
treebb0722a754a0351bff8370fdccd963d4514b1436 /arch/arm/mach-omap2/omap_device.c
parent841af81f7a180f5793cb0d82a7a7626bbc17c028 (diff)
ARM: OMAP2+: Add support for legacy auxdata for twl
As we currently need to support a mix of legacy platform data and device tree intialized data, let's make sure things keep working for the TWL GPIOs. Mostly the issue is caused by the fact that DSS does not yet have device tree bindings, so we need to rely on the TWL GPIO callback for setting up things like LCD backlight for some boards. As of_platform_populate() for the TWL GPIO is called by twl-core after the I2C bus has been initialized, we cannot pass the auxdata table from the board init code to twl-core like we used to with just legacy platform data. So let's use the omap_device bus hook to patch in the platform data for TWL GPIO until we have sorted out the issues with the TWL GPIOs and device tree bindings. The other option was be to initialize twl core using legacy platform data, which seems like a step backwards as we're moving to device tree only initialization. And we really don't want to add custom configuration functions to the TWL GPIO driver either for this. Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap_device.c')
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c
index 53f0735817bb..828f538b1c4e 100644
--- a/arch/arm/mach-omap2/omap_device.c
+++ b/arch/arm/mach-omap2/omap_device.c
@@ -36,6 +36,7 @@
#include <linux/of.h>
#include <linux/notifier.h>
+#include "common.h"
#include "soc.h"
#include "omap_device.h"
#include "omap_hwmod.h"
@@ -200,6 +201,7 @@ static int _omap_device_notifier_call(struct notifier_block *nb,
if (pdev->dev.of_node)
+ omap_auxdata_legacy_init(dev);
/* fall through */
od = to_omap_device(pdev);