summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2014-01-23 08:51:18 -0800
committerOlof Johansson <olof@lixom.net>2014-01-23 08:51:37 -0800
commite41006c22eab8eb7763995e8a0be089b900b620b (patch)
tree3816176311b392a1674238fd61af1f30a30a6acb /arch/arm/mach-omap2
parent5cea04bab5bcc8a5f34b890a09b2398df8b1e432 (diff)
parente37e1cb0ee231ffdc9b5ef1da63a0c7e1077c603 (diff)
downloadblackbird-op-linux-e41006c22eab8eb7763995e8a0be089b900b620b.tar.gz
blackbird-op-linux-e41006c22eab8eb7763995e8a0be089b900b620b.zip
Merge tag 'omap-for-v3.14/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/boards
Split omap3 core padconf area into two as some of the registers in the padconf area are not accessible and used for other devices. Also fix the interrupt number for omap2 RNG, and add basic support for sbc-3xxx with cm-t3730. Note that the minor merge conflicts for omap_hwmod_2xxx_ipblock_data.c can be solved by just dropping the legacy hwmod data for interrupts for v3.14. * tag 'omap-for-v3.14/dt-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: dts: OMAP2: fix interrupt number for rng ARM: dts: Split omap3 pinmux core device ARM: dts: Add omap specific pinctrl defines to use padconf addresses ARM: dts: Add support for sbc-3xxx with cm-t3730 Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r--arch/arm/mach-omap2/pdata-quirks.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c
index 5aaf720211f4..3d5b24dcd9a4 100644
--- a/arch/arm/mach-omap2/pdata-quirks.c
+++ b/arch/arm/mach-omap2/pdata-quirks.c
@@ -92,6 +92,33 @@ static void __init hsmmc2_internal_input_clk(void)
omap_ctrl_writel(reg, OMAP343X_CONTROL_DEVCONF1);
}
+static int omap3_sbc_t3730_twl_callback(struct device *dev,
+ unsigned gpio,
+ unsigned ngpio)
+{
+ int res;
+
+ res = gpio_request_one(gpio + 2, GPIOF_OUT_INIT_HIGH,
+ "wlan rst");
+ if (res)
+ return res;
+
+ gpio_export(gpio, 0);
+
+ return 0;
+}
+
+static void __init omap3_sbc_t3730_twl_init(void)
+{
+ twl_gpio_auxdata.setup = omap3_sbc_t3730_twl_callback;
+}
+
+static void __init omap3_sbc_t3730_legacy_init(void)
+{
+ legacy_init_wl12xx(WL12XX_REFCLOCK_38, 0, 136);
+ omap_ads7846_init(1, 57, 0, NULL);
+}
+
static void __init omap3_igep0020_legacy_init(void)
{
omap3_igep2_display_init_of();
@@ -200,6 +227,9 @@ static struct pdata_init auxdata_quirks[] __initdata = {
{ "nokia,n810", omap2420_n8x0_legacy_init, },
{ "nokia,n810-wimax", omap2420_n8x0_legacy_init, },
#endif
+#ifdef CONFIG_ARCH_OMAP3
+ { "compulab,omap3-sbc-t3730", omap3_sbc_t3730_twl_init, },
+#endif
{ /* sentinel */ },
};
@@ -228,6 +258,7 @@ struct of_dev_auxdata omap_auxdata_lookup[] __initdata = {
*/
static struct pdata_init pdata_quirks[] __initdata = {
#ifdef CONFIG_ARCH_OMAP3
+ { "compulab,omap3-sbc-t3730", omap3_sbc_t3730_legacy_init, },
{ "nokia,omap3-n900", hsmmc2_internal_input_clk, },
{ "nokia,omap3-n9", hsmmc2_internal_input_clk, },
{ "nokia,omap3-n950", hsmmc2_internal_input_clk, },
OpenPOWER on IntegriCloud