From 3f8afe492fffd7259e754b335df4839b4f0b2d41 Mon Sep 17 00:00:00 2001 From: Mike Turquette Date: Wed, 26 Aug 2009 10:55:02 -0500 Subject: linux-omap3-pm: refresh patches and remove some sed magic to boot zoom2 Signed-off-by: Mike Turquette --- .../zoom2/0001-OMAP1-2-3-4-DEBUG_LL-cleanup.patch | 217 ++++ .../zoom2/0001-OMAP3-MMC-Add-mux-for-pins.patch | 170 --- ...-Adapt-board-files-for-cleand-DEBUG_LL-in.patch | 268 +++++ .../0002-OMAP3-Zoom2-Add-TWL4030-support.patch | 281 ----- ...Add-DEBUG_LL-interface-using-external-Qua.patch | 171 +++ .../0003-OMAP3-Zoom2-Update-board-defconfig.patch | 1102 -------------------- .../0004-serial-8250-add-IRQ-trigger-support.patch | 143 --- ...-OMAP-Zoom2-Release-Dbg-board-detect-gpio.patch | 41 + ...-OMAP2-Zoom2-Pass-irqflags-to-8250-driver.patch | 41 - ...-Zoom2-ext-UART-needs-plaform_device.id-3.patch | 29 - ...add-external-uart-DEBUG_LL-support-to-zoo.patch | 71 -- ...add-support-for-DEBUG_LL-on-external-UART.patch | 103 -- meta/packages/linux/linux-omap3-pm_git.bb | 23 +- 13 files changed, 706 insertions(+), 1954 deletions(-) create mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP1-2-3-4-DEBUG_LL-cleanup.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP3-MMC-Add-mux-for-pins.patch create mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP1-2-3-4-Adapt-board-files-for-cleand-DEBUG_LL-in.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP3-Zoom2-Add-TWL4030-support.patch create mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP-Zoom2-Add-DEBUG_LL-interface-using-external-Qua.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP3-Zoom2-Update-board-defconfig.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0004-serial-8250-add-IRQ-trigger-support.patch create mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0005-OMAP-Zoom2-Release-Dbg-board-detect-gpio.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0005-OMAP2-Zoom2-Pass-irqflags-to-8250-driver.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0006-OMAP3-Zoom2-ext-UART-needs-plaform_device.id-3.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0007-omap-zoom2-add-external-uart-DEBUG_LL-support-to-zoo.patch delete mode 100644 meta/packages/linux/linux-omap3-pm-git/zoom2/0008-omap2-add-support-for-DEBUG_LL-on-external-UART.patch diff --git a/meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP1-2-3-4-DEBUG_LL-cleanup.patch b/meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP1-2-3-4-DEBUG_LL-cleanup.patch new file mode 100644 index 0000000000..e1e216c915 --- /dev/null +++ b/meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP1-2-3-4-DEBUG_LL-cleanup.patch @@ -0,0 +1,217 @@ +From 51f967864f0e30225c8a8e50e0bbaf92258c0032 Mon Sep 17 00:00:00 2001 +From: Vikram Pandita +Date: Thu, 20 Aug 2009 16:13:20 -0500 +Subject: [PATCH 1/5] OMAP1/2/3/4: DEBUG_LL: cleanup + +This patch cleans up the DEBUG_LL infrastructure for omap boards. + +The three stages of log printing infrastructure is using their own #defines +The patch integrates the three stages to use the same variable. + +Three stages are: +Stage 1: Prints - Uncompressing Linux...... + File getting used: arch/arm/plat-omap/include/mach/uncompress.h +Stage 2: Prints - <5>Linux version 2.6.31 + File getting used: arch/arm/plat-omap/include/mach/debug-macro.S +Stage 3: Kernel ttyS console takes over + +On enabling the DEBUG_LL menuconfig item +[Kernel Hacking -> Kernel low-level debugging functions] + +the following entry gets auto selected +[Systerm Type -> TI OMAP Implementations -> Low-level Debug console UART] + +This is the physical address of the UART getting used for the board. +The physical address of debug uart is provided as a menuconfig option now. + +Issue with current system: +(a) Zoom2 board has a detachable debug board having the TL16CP754 Quad uart chip. +If the debug board is not attached, _NO_ debug uart is available. +OMAP internal uarts are not used for traces on zoom2 board. +Current framework does not account for boards that may not have a debug uart +at all. The Stage 1 always accesses one of the uarts. Thats fixed now. + +(b) this patch does a cleanup of arch/arm/plat-omap/include/mach/debug-macro.S + +Signed-off-by: Vikram Pandita +--- + arch/arm/plat-omap/Kconfig | 50 ++++++++++++++++++------- + arch/arm/plat-omap/include/mach/common.h | 7 +++ + arch/arm/plat-omap/include/mach/debug-macro.S | 40 ++++---------------- + arch/arm/plat-omap/include/mach/uncompress.h | 12 +---- + 4 files changed, 54 insertions(+), 55 deletions(-) + +diff --git a/arch/arm/plat-omap/Kconfig b/arch/arm/plat-omap/Kconfig +index ab9f9ef..2fefb64 100644 +--- a/arch/arm/plat-omap/Kconfig ++++ b/arch/arm/plat-omap/Kconfig +@@ -162,21 +162,43 @@ config OMAP_DM_TIMER + help + Select this option if you want to use OMAP Dual-Mode timers. + +-choice +- prompt "Low-level debug console UART" +- depends on ARCH_OMAP +- default OMAP_LL_DEBUG_UART1 +- +-config OMAP_LL_DEBUG_UART1 +- bool "UART1" +- +-config OMAP_LL_DEBUG_UART2 +- bool "UART2" + +-config OMAP_LL_DEBUG_UART3 +- bool "UART3" +- +-endchoice ++config OMAP_DEBUG_LL_UART_PHY_ADDR ++ hex "Low-level debug console UART Physical Address" ++ depends on ARCH_OMAP && DEBUG_LL ++ ++ default "0xfffb0800" if ARCH_OMAP1 && (MACH_OMAP_PALMTT || MACH_SX1) ++ default "0xfffb0000" if ARCH_OMAP1 ++ default "0x4806e000" if ARCH_OMAP2 && MACH_NOKIA_N8X0 ++ default "0x4806a000" if ARCH_OMAP2 ++ default "0x49020000" if ARCH_OMAP3 && (MACH_NOKIA_RX51 || MACH_OMAP_BEAGLE) ++ default "0x49020000" if ARCH_OMAP3 && (MACH_OMAP3_PANDORA || MACH_OMAP_LDP || MACH_OVERO) ++ default "0x10000000" if ARCH_OMAP3 && MACH_OMAP_ZOOM2 ++ default "0x4806a000" if ARCH_OMAP3 ++ default "0x4806a000" if ARCH_OMAP4 ++ help ++ Specify the Physical address of Low level debug UART ++ Specify 0x0 in case you do not want DEBUG_LL functions to iterfere with your board uarts ++ ++ OMAP1: ++ ------------------- ++ UART1 -> 0xfffb0000 (default) ++ UART2 -> 0xfffb0800 ++ UART3 -> 0xfffb9800 (sx1, palmtt) ++ ++ OMAP2: ++ ------------------- ++ UART1 -> 0x4806a000 (default) ++ UART2 -> 0x4806c000 ++ UART3 -> 0x4806e000 (N8X0) ++ ++ OMAP3/4: ++ ------------------- ++ UART1 -> 0x4806a000 (default: except following) ++ UART2 -> 0x4806c000 ++ UART3 -> 0x49020000 (rx51, beagle, pendora, ldp, overo) ++ UART4 -> 0x4806e000 ++ UART_EXT -> 0x10000000 (zoom2: Debug uart is on external debug board) + + config OMAP_SERIAL_WAKE + bool "Enable wake-up events for serial ports" +diff --git a/arch/arm/plat-omap/include/mach/common.h b/arch/arm/plat-omap/include/mach/common.h +index fdeab42..f29d31f 100644 +--- a/arch/arm/plat-omap/include/mach/common.h ++++ b/arch/arm/plat-omap/include/mach/common.h +@@ -68,4 +68,11 @@ void omap2_set_globals_sdrc(struct omap_globals *); + void omap2_set_globals_control(struct omap_globals *); + void omap2_set_globals_prcm(struct omap_globals *); + ++/* In case Low Level debug is not defined ++ * make the low level uart address as zero ++ */ ++#if !defined(CONFIG_DEBUG_LL) ++#define CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR 0 ++#endif ++ + #endif /* __ARCH_ARM_MACH_OMAP_COMMON_H */ +diff --git a/arch/arm/plat-omap/include/mach/debug-macro.S b/arch/arm/plat-omap/include/mach/debug-macro.S +index ac24050..f546d6c 100644 +--- a/arch/arm/plat-omap/include/mach/debug-macro.S ++++ b/arch/arm/plat-omap/include/mach/debug-macro.S +@@ -10,43 +10,19 @@ + * published by the Free Software Foundation. + * + */ ++#include "io.h" + + .macro addruart,rx + mrc p15, 0, \rx, c1, c0 + tst \rx, #1 @ MMU enabled? + #ifdef CONFIG_ARCH_OMAP1 +- moveq \rx, #0xff000000 @ physical base address +- movne \rx, #0xfe000000 @ virtual base +- orr \rx, \rx, #0x00fb0000 +-#ifdef CONFIG_OMAP_LL_DEBUG_UART3 +- orr \rx, \rx, #0x00009000 @ UART 3 +-#endif +-#if defined(CONFIG_OMAP_LL_DEBUG_UART2) || defined(CONFIG_OMAP_LL_DEBUG_UART3) +- orr \rx, \rx, #0x00000800 @ UART 2 & 3 +-#endif +- +-#elif CONFIG_ARCH_OMAP2 +- moveq \rx, #0x48000000 @ physical base address +- movne \rx, #0xd8000000 @ virtual base +- orr \rx, \rx, #0x0006a000 +-#ifdef CONFIG_OMAP_LL_DEBUG_UART2 +- add \rx, \rx, #0x00002000 @ UART 2 +-#endif +-#ifdef CONFIG_OMAP_LL_DEBUG_UART3 +- add \rx, \rx, #0x00004000 @ UART 3 +-#endif +- +-#elif defined(CONFIG_ARCH_OMAP3) || defined(CONFIG_ARCH_OMAP4) +- moveq \rx, #0x48000000 @ physical base address +- movne \rx, #0xd8000000 @ virtual base +- orr \rx, \rx, #0x0006a000 +-#ifdef CONFIG_OMAP_LL_DEBUG_UART2 +- add \rx, \rx, #0x00002000 @ UART 2 +-#endif +-#ifdef CONFIG_OMAP_LL_DEBUG_UART3 +- add \rx, \rx, #0x00fb0000 @ UART 3 +- add \rx, \rx, #0x00006000 +-#endif ++ /* omap1 */ ++ ldr \rx, =CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR @ physical base address ++ subne \rx, #CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, #OMAP1_IO_OFFSET @ virtual base ++#else ++ /* omap2/omap3/omap4 */ ++ ldr \rx, =CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR @ physical base address ++ orrne \rx, \rx, #OMAP2_IO_OFFSET @ virtual base + #endif + .endm + +diff --git a/arch/arm/plat-omap/include/mach/uncompress.h b/arch/arm/plat-omap/include/mach/uncompress.h +index 0814c5f..0e21eb3 100644 +--- a/arch/arm/plat-omap/include/mach/uncompress.h ++++ b/arch/arm/plat-omap/include/mach/uncompress.h +@@ -38,14 +38,8 @@ static void putc(int c) + return; + #endif + +-#ifdef CONFIG_ARCH_OMAP +-#ifdef CONFIG_OMAP_LL_DEBUG_UART3 +- uart = (volatile u8 *)(OMAP_UART3_BASE); +-#elif defined(CONFIG_OMAP_LL_DEBUG_UART2) +- uart = (volatile u8 *)(OMAP_UART2_BASE); +-#else +- uart = (volatile u8 *)(OMAP_UART1_BASE); +-#endif ++#if defined(CONFIG_DEBUG_LL) ++ uart = (volatile u8 *)(CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR); + + #ifdef CONFIG_ARCH_OMAP1 + /* Determine which serial port to use */ +@@ -62,7 +56,6 @@ static void putc(int c) + return; + } while (0); + #endif /* CONFIG_ARCH_OMAP1 */ +-#endif + + /* + * Now, xmit each character +@@ -70,6 +63,7 @@ static void putc(int c) + while (!(uart[UART_LSR << shift] & UART_LSR_THRE)) + barrier(); + uart[UART_TX << shift] = c; ++#endif /* CONFIG_DEBUG_LL */ + } + + static inline void flush(void) +-- +1.6.3.2 + diff --git a/meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP3-MMC-Add-mux-for-pins.patch b/meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP3-MMC-Add-mux-for-pins.patch deleted file mode 100644 index 70db8219ae..0000000000 --- a/meta/packages/linux/linux-omap3-pm-git/zoom2/0001-OMAP3-MMC-Add-mux-for-pins.patch +++ /dev/null @@ -1,170 +0,0 @@ -From be0e1c0f2f529d6f5adb9c5050731d881874c34b Mon Sep 17 00:00:00 2001 -From: Vikram Pandita -Date: Thu, 18 Jun 2009 13:40:08 -0500 -Subject: [PATCH 1/8] OMAP3: MMC: Add mux for pins - -For OMAP3 add MMC1 MMC2 pin mux - -Signed-off-by: Vikram Pandita -Signed-off-by: Chikkature Rajashekar ---- - arch/arm/mach-omap2/devices.c | 42 ++++++++++++++++++++++++++++ - arch/arm/mach-omap2/mux.c | 49 +++++++++++++++++++++++++++++++++ - arch/arm/plat-omap/include/mach/mux.h | 28 +++++++++++++++++++ - 3 files changed, 119 insertions(+), 0 deletions(-) - -diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c -index 81f47d9..243815e 100644 ---- a/arch/arm/mach-omap2/devices.c -+++ b/arch/arm/mach-omap2/devices.c -@@ -455,6 +455,48 @@ static inline void omap2_mmc_mux(struct omap_mmc_platform_data *mmc_controller, - omap_ctrl_writel(v, OMAP2_CONTROL_DEVCONF0); - } - } -+ -+ if (cpu_is_omap3430()) { -+ if (controller_nr == 0) { -+ omap_cfg_reg(N28_3430_MMC1_CLK); -+ omap_cfg_reg(M27_3430_MMC1_CMD); -+ omap_cfg_reg(N27_3430_MMC1_DAT0); -+ if (mmc_controller->slots[0].wires == 4 || -+ mmc_controller->slots[0].wires == 8) { -+ omap_cfg_reg(N26_3430_MMC1_DAT1); -+ omap_cfg_reg(N25_3430_MMC1_DAT2); -+ omap_cfg_reg(P28_3430_MMC1_DAT3); -+ } -+ if (mmc_controller->slots[0].wires == 8) { -+ omap_cfg_reg(P27_3430_MMC1_DAT4); -+ omap_cfg_reg(P26_3430_MMC1_DAT5); -+ omap_cfg_reg(R27_3430_MMC1_DAT6); -+ omap_cfg_reg(R25_3430_MMC1_DAT7); -+ } -+ } -+ if (controller_nr == 1) { -+ /* MMC2 */ -+ omap_cfg_reg(AE2_3430_MMC2_CLK); -+ omap_cfg_reg(AG5_3430_MMC2_CMD); -+ omap_cfg_reg(AH5_3430_MMC2_DAT0); -+ if (mmc_controller->slots[0].wires == 4 || -+ mmc_controller->slots[0].wires == 8) { -+ omap_cfg_reg(AH4_3430_MMC2_DAT1); -+ omap_cfg_reg(AG4_3430_MMC2_DAT2); -+ omap_cfg_reg(AF4_3430_MMC2_DAT3); -+ } -+ if (mmc_controller->slots[0].wires == 8) -+ printk(KERN_WARNING -+ "\n MMC2: DAT4, DAT5, DAT6, DAT7: " -+ "Setup the mux in board file"); -+ } -+ if (controller_nr == 2) { -+ /* MMC3 */ -+ printk(KERN_WARNING -+ "\n MMC3: Setup the mux in board file: " -+ "Multiple options exist, so is board specific"); -+ } -+ } - } - - #define MAX_OMAP_MMC_HWMOD_NAME_LEN 16 -diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c -index 026c4fc..d49b9a7 100644 ---- a/arch/arm/mach-omap2/mux.c -+++ b/arch/arm/mach-omap2/mux.c -@@ -486,6 +486,55 @@ MUX_CFG_34XX("H19_34XX_GPIO164_OUT", 0x19c, - OMAP34XX_MUX_MODE4 | OMAP34XX_PIN_OUTPUT) - MUX_CFG_34XX("J25_34XX_GPIO170", 0x1c6, - OMAP34XX_MUX_MODE4 | OMAP34XX_PIN_INPUT) -+/* MMC1 */ -+MUX_CFG_34XX("N28_3430_MMC1_CLK", 0x144, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("M27_3430_MMC1_CMD", 0x146, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("N27_3430_MMC1_DAT0", 0x148, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("N26_3430_MMC1_DAT1", 0x14a, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("N25_3430_MMC1_DAT2", 0x14c, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("P28_3430_MMC1_DAT3", 0x14e, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("P27_3430_MMC1_DAT4", 0x150, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("P26_3430_MMC1_DAT5", 0x152, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("R27_3430_MMC1_DAT6", 0x154, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("R25_3430_MMC1_DAT7", 0x156, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+ -+/* MMC2 */ -+MUX_CFG_34XX("AE2_3430_MMC2_CLK", 0x158, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AG5_3430_MMC2_CMD", 0x15A, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AH5_3430_MMC2_DAT0", 0x15c, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AH4_3430_MMC2_DAT1", 0x15e, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AG4_3430_MMC2_DAT2", 0x160, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AF4_3430_MMC2_DAT3", 0x162, -+ OMAP34XX_MUX_MODE0 | OMAP34XX_PIN_INPUT_PULLUP) -+ -+/* MMC3 */ -+MUX_CFG_34XX("AF10_3430_MMC3_CLK", 0x5d8, -+ OMAP34XX_MUX_MODE2 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AC3_3430_MMC3_CMD", 0x1d0, -+ OMAP34XX_MUX_MODE3 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AE11_3430_MMC3_DAT0", 0x5e4, -+ OMAP34XX_MUX_MODE2 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AH9_3430_MMC3_DAT1", 0x5e6, -+ OMAP34XX_MUX_MODE2 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AF13_3430_MMC3_DAT2", 0x5e8, -+ OMAP34XX_MUX_MODE2 | OMAP34XX_PIN_INPUT_PULLUP) -+MUX_CFG_34XX("AF13_3430_MMC3_DAT3", 0x5e2, -+ OMAP34XX_MUX_MODE2 | OMAP34XX_PIN_INPUT_PULLUP) - }; - - #define OMAP34XX_PINS_SZ ARRAY_SIZE(omap34xx_pins) -diff --git a/arch/arm/plat-omap/include/mach/mux.h b/arch/arm/plat-omap/include/mach/mux.h -index 85a6217..d24fdf9 100644 ---- a/arch/arm/plat-omap/include/mach/mux.h -+++ b/arch/arm/plat-omap/include/mach/mux.h -@@ -853,6 +853,34 @@ enum omap34xx_index { - AE5_34XX_GPIO143, - H19_34XX_GPIO164_OUT, - J25_34XX_GPIO170, -+ -+ /* MMC1 */ -+ N28_3430_MMC1_CLK, -+ M27_3430_MMC1_CMD, -+ N27_3430_MMC1_DAT0, -+ N26_3430_MMC1_DAT1, -+ N25_3430_MMC1_DAT2, -+ P28_3430_MMC1_DAT3, -+ P27_3430_MMC1_DAT4, -+ P26_3430_MMC1_DAT5, -+ R27_3430_MMC1_DAT6, -+ R25_3430_MMC1_DAT7, -+ -+ /* MMC2 */ -+ AE2_3430_MMC2_CLK, -+ AG5_3430_MMC2_CMD, -+ AH5_3430_MMC2_DAT0, -+ AH4_3430_MMC2_DAT1, -+ AG4_3430_MMC2_DAT2, -+ AF4_3430_MMC2_DAT3, -+ -+ /* MMC3 */ -+ AF10_3430_MMC3_CLK, -+ AC3_3430_MMC3_CMD, -+ AE11_3430_MMC3_DAT0, -+ AH9_3430_MMC3_DAT1, -+ AF13_3430_MMC3_DAT2, -+ AF13_3430_MMC3_DAT3, - }; - - struct omap_mux_cfg { --- -1.6.3.2 - diff --git a/meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP1-2-3-4-Adapt-board-files-for-cleand-DEBUG_LL-in.patch b/meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP1-2-3-4-Adapt-board-files-for-cleand-DEBUG_LL-in.patch new file mode 100644 index 0000000000..8019631b1d --- /dev/null +++ b/meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP1-2-3-4-Adapt-board-files-for-cleand-DEBUG_LL-in.patch @@ -0,0 +1,268 @@ +From 533dc09b3515211d6bee1f63aa3ddd659d0d319c Mon Sep 17 00:00:00 2001 +From: Vikram Pandita +Date: Thu, 20 Aug 2009 16:58:42 -0500 +Subject: [PATCH 2/5] OMAP1/2/3/4: Adapt board files for cleand DEBUG_LL interface + +This patch assigns the physical address of debug uart as defined +in menucoinfig item CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR to phys_io + +The virtual address for io_pg_offset is calculated as per static +mapping + +CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR is a hex value and for boards +like Zoom2, the phy address can be zero, in case debug board +is not attached. + +Signed-off-by: Vikram Pandita +--- + arch/arm/mach-omap2/board-2430sdp.c | 4 ++-- + arch/arm/mach-omap2/board-3430sdp.c | 4 ++-- + arch/arm/mach-omap2/board-4430sdp.c | 4 ++-- + arch/arm/mach-omap2/board-apollon.c | 4 ++-- + arch/arm/mach-omap2/board-generic.c | 4 ++-- + arch/arm/mach-omap2/board-h4.c | 4 ++-- + arch/arm/mach-omap2/board-ldp.c | 4 ++-- + arch/arm/mach-omap2/board-n8x0.c | 12 ++++++------ + arch/arm/mach-omap2/board-omap3beagle.c | 4 ++-- + arch/arm/mach-omap2/board-omap3evm.c | 4 ++-- + arch/arm/mach-omap2/board-omap3pandora.c | 4 ++-- + arch/arm/mach-omap2/board-overo.c | 4 ++-- + arch/arm/mach-omap2/board-rx51.c | 4 ++-- + arch/arm/mach-omap2/board-zoom2.c | 4 ++-- + 14 files changed, 32 insertions(+), 32 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c +index c693668..9ed2f2c 100644 +--- a/arch/arm/mach-omap2/board-2430sdp.c ++++ b/arch/arm/mach-omap2/board-2430sdp.c +@@ -225,8 +225,8 @@ static void __init omap_2430sdp_map_io(void) + + MACHINE_START(OMAP_2430SDP, "OMAP2430 sdp2430 board") + /* Maintainer: Syed Khasim - Texas Instruments Inc */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_2430sdp_map_io, + .init_irq = omap_2430sdp_init_irq, +diff --git a/arch/arm/mach-omap2/board-3430sdp.c b/arch/arm/mach-omap2/board-3430sdp.c +index c71417f..f085eee 100644 +--- a/arch/arm/mach-omap2/board-3430sdp.c ++++ b/arch/arm/mach-omap2/board-3430sdp.c +@@ -505,8 +505,8 @@ static void __init omap_3430sdp_map_io(void) + + MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board") + /* Maintainer: Syed Khasim - Texas Instruments Inc */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_3430sdp_map_io, + .init_irq = omap_3430sdp_init_irq, +diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c +index 646079f..4c1a166 100644 +--- a/arch/arm/mach-omap2/board-4430sdp.c ++++ b/arch/arm/mach-omap2/board-4430sdp.c +@@ -83,8 +83,8 @@ static void __init omap_4430sdp_map_io(void) + + MACHINE_START(OMAP_4430SDP, "OMAP4430 4430SDP board") + /* Maintainer: Santosh Shilimkar - Texas Instruments Inc */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_4430sdp_map_io, + .init_irq = omap_4430sdp_init_irq, +diff --git a/arch/arm/mach-omap2/board-apollon.c b/arch/arm/mach-omap2/board-apollon.c +index e2947fd..61da659 100644 +--- a/arch/arm/mach-omap2/board-apollon.c ++++ b/arch/arm/mach-omap2/board-apollon.c +@@ -336,8 +336,8 @@ static void __init omap_apollon_map_io(void) + + MACHINE_START(OMAP_APOLLON, "OMAP24xx Apollon") + /* Maintainer: Kyungmin Park */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_apollon_map_io, + .init_irq = omap_apollon_init_irq, +diff --git a/arch/arm/mach-omap2/board-generic.c b/arch/arm/mach-omap2/board-generic.c +index fc9eccb..6d39eaa 100644 +--- a/arch/arm/mach-omap2/board-generic.c ++++ b/arch/arm/mach-omap2/board-generic.c +@@ -59,8 +59,8 @@ static void __init omap_generic_map_io(void) + + MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx") + /* Maintainer: Paul Mundt */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR - OMAP1_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_generic_map_io, + .init_irq = omap_generic_init_irq, +diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c +index 7eda321..4ce760f 100644 +--- a/arch/arm/mach-omap2/board-h4.c ++++ b/arch/arm/mach-omap2/board-h4.c +@@ -379,8 +379,8 @@ static void __init omap_h4_map_io(void) + + MACHINE_START(OMAP_H4, "OMAP2420 H4 board") + /* Maintainer: Paul Mundt */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_h4_map_io, + .init_irq = omap_h4_init_irq, +diff --git a/arch/arm/mach-omap2/board-ldp.c b/arch/arm/mach-omap2/board-ldp.c +index 4a4b300..5f06434 100644 +--- a/arch/arm/mach-omap2/board-ldp.c ++++ b/arch/arm/mach-omap2/board-ldp.c +@@ -398,8 +398,8 @@ static void __init omap_ldp_map_io(void) + } + + MACHINE_START(OMAP_LDP, "OMAP LDP board") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_ldp_map_io, + .init_irq = omap_ldp_init_irq, +diff --git a/arch/arm/mach-omap2/board-n8x0.c b/arch/arm/mach-omap2/board-n8x0.c +index af6fcee..464b432 100644 +--- a/arch/arm/mach-omap2/board-n8x0.c ++++ b/arch/arm/mach-omap2/board-n8x0.c +@@ -125,8 +125,8 @@ static void __init n8x0_init_machine(void) + } + + MACHINE_START(NOKIA_N800, "Nokia N800") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = n8x0_map_io, + .init_irq = n8x0_init_irq, +@@ -135,8 +135,8 @@ MACHINE_START(NOKIA_N800, "Nokia N800") + MACHINE_END + + MACHINE_START(NOKIA_N810, "Nokia N810") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = n8x0_map_io, + .init_irq = n8x0_init_irq, +@@ -145,8 +145,8 @@ MACHINE_START(NOKIA_N810, "Nokia N810") + MACHINE_END + + MACHINE_START(NOKIA_N810_WIMAX, "Nokia N810 WiMAX") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = n8x0_map_io, + .init_irq = n8x0_init_irq, +diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c +index 07aee90..4d30948 100644 +--- a/arch/arm/mach-omap2/board-omap3beagle.c ++++ b/arch/arm/mach-omap2/board-omap3beagle.c +@@ -428,8 +428,8 @@ static void __init omap3_beagle_map_io(void) + + MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board") + /* Maintainer: Syed Mohammed Khasim - http://beagleboard.org */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap3_beagle_map_io, + .init_irq = omap3_beagle_init_irq, +diff --git a/arch/arm/mach-omap2/board-omap3evm.c b/arch/arm/mach-omap2/board-omap3evm.c +index c0cb29d..8f24dd6 100644 +--- a/arch/arm/mach-omap2/board-omap3evm.c ++++ b/arch/arm/mach-omap2/board-omap3evm.c +@@ -324,8 +324,8 @@ static void __init omap3_evm_map_io(void) + + MACHINE_START(OMAP3EVM, "OMAP3 EVM") + /* Maintainer: Syed Mohammed Khasim - Texas Instruments */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap3_evm_map_io, + .init_irq = omap3_evm_init_irq, +diff --git a/arch/arm/mach-omap2/board-omap3pandora.c b/arch/arm/mach-omap2/board-omap3pandora.c +index 1991f19..05d1994 100644 +--- a/arch/arm/mach-omap2/board-omap3pandora.c ++++ b/arch/arm/mach-omap2/board-omap3pandora.c +@@ -412,8 +412,8 @@ static void __init omap3pandora_map_io(void) + } + + MACHINE_START(OMAP3_PANDORA, "Pandora Handheld Console") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap3pandora_map_io, + .init_irq = omap3pandora_init_irq, +diff --git a/arch/arm/mach-omap2/board-overo.c b/arch/arm/mach-omap2/board-overo.c +index a9d7c2e..4057a1b 100644 +--- a/arch/arm/mach-omap2/board-overo.c ++++ b/arch/arm/mach-omap2/board-overo.c +@@ -454,8 +454,8 @@ static void __init overo_map_io(void) + } + + MACHINE_START(OVERO, "Gumstix Overo") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = overo_map_io, + .init_irq = overo_init_irq, +diff --git a/arch/arm/mach-omap2/board-rx51.c b/arch/arm/mach-omap2/board-rx51.c +index 8a3dc61..4b97fe8 100644 +--- a/arch/arm/mach-omap2/board-rx51.c ++++ b/arch/arm/mach-omap2/board-rx51.c +@@ -88,8 +88,8 @@ static void __init rx51_map_io(void) + + MACHINE_START(NOKIA_RX51, "Nokia RX-51 board") + /* Maintainer: Lauri Leukkunen */ +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR + OMAP2_IO_OFFSET) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = rx51_map_io, + .init_irq = rx51_init_irq, +diff --git a/arch/arm/mach-omap2/board-zoom2.c b/arch/arm/mach-omap2/board-zoom2.c +index 4d295d5..58baee3 100644 +--- a/arch/arm/mach-omap2/board-zoom2.c ++++ b/arch/arm/mach-omap2/board-zoom2.c +@@ -280,8 +280,8 @@ static void __init omap_zoom2_map_io(void) + } + + MACHINE_START(OMAP_ZOOM2, "OMAP Zoom2 board") +- .phys_io = 0x48000000, +- .io_pg_offst = ((0xd8000000) >> 18) & 0xfffc, ++ .phys_io = CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR, ++ .io_pg_offst = ((ZOOM2_EXT_QUART_VIRT) >> 18) & 0xfffc, + .boot_params = 0x80000100, + .map_io = omap_zoom2_map_io, + .init_irq = omap_zoom2_init_irq, +-- +1.6.3.2 + diff --git a/meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP3-Zoom2-Add-TWL4030-support.patch b/meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP3-Zoom2-Add-TWL4030-support.patch deleted file mode 100644 index ed5b4e2df0..0000000000 --- a/meta/packages/linux/linux-omap3-pm-git/zoom2/0002-OMAP3-Zoom2-Add-TWL4030-support.patch +++ /dev/null @@ -1,281 +0,0 @@ -From b71cd09cefcd54e792a2ac032c3be64a97ef830c Mon Sep 17 00:00:00 2001 -From: Vikram Pandita -Date: Fri, 12 Jun 2009 17:44:07 -0500 -Subject: [PATCH 2/8] OMAP3:Zoom2: Add TWL4030 support - -Add TWL4030 CORE and TWL4030 drivers to Zoom2 board file -TWL drivers enabled are: - bci - madc - usb - keypad - mmc - -Signed-off-by: Vikram Pandita ---- - arch/arm/mach-omap2/board-zoom2.c | 204 +++++++++++++++++++++++++++++++++++-- - 1 files changed, 193 insertions(+), 11 deletions(-) - -diff --git a/arch/arm/mach-omap2/board-zoom2.c b/arch/arm/mach-omap2/board-zoom2.c -index 0ec2023..e4bf50a 100644 ---- a/arch/arm/mach-omap2/board-zoom2.c -+++ b/arch/arm/mach-omap2/board-zoom2.c -@@ -12,18 +12,85 @@ - #include - #include - #include -+#include - #include - #include -+#include - - #include - #include - - #include - #include -+#include - - #include "mmc-twl4030.h" - #include "omap3-opp.h" - -+/* Zoom2 has Qwerty keyboard*/ -+static int zoom2_twl4030_keymap[] = { -+ KEY(0, 0, KEY_E), -+ KEY(1, 0, KEY_R), -+ KEY(2, 0, KEY_T), -+ KEY(3, 0, KEY_HOME), -+ KEY(6, 0, KEY_I), -+ KEY(7, 0, KEY_LEFTSHIFT), -+ KEY(0, 1, KEY_D), -+ KEY(1, 1, KEY_F), -+ KEY(2, 1, KEY_G), -+ KEY(3, 1, KEY_SEND), -+ KEY(6, 1, KEY_K), -+ KEY(7, 1, KEY_ENTER), -+ KEY(0, 2, KEY_X), -+ KEY(1, 2, KEY_C), -+ KEY(2, 2, KEY_V), -+ KEY(3, 2, KEY_END), -+ KEY(6, 2, KEY_DOT), -+ KEY(7, 2, KEY_CAPSLOCK), -+ KEY(0, 3, KEY_Z), -+ KEY(1, 3, KEY_KPPLUS), -+ KEY(2, 3, KEY_B), -+ KEY(3, 3, KEY_F1), -+ KEY(6, 3, KEY_O), -+ KEY(7, 3, KEY_SPACE), -+ KEY(0, 4, KEY_W), -+ KEY(1, 4, KEY_Y), -+ KEY(2, 4, KEY_U), -+ KEY(3, 4, KEY_F2), -+ KEY(4, 4, KEY_VOLUMEUP), -+ KEY(6, 4, KEY_L), -+ KEY(7, 4, KEY_LEFT), -+ KEY(0, 5, KEY_S), -+ KEY(1, 5, KEY_H), -+ KEY(2, 5, KEY_J), -+ KEY(3, 5, KEY_F3), -+ KEY(5, 5, KEY_VOLUMEDOWN), -+ KEY(6, 5, KEY_M), -+ KEY(4, 5, KEY_ENTER), -+ KEY(7, 5, KEY_RIGHT), -+ KEY(0, 6, KEY_Q), -+ KEY(1, 6, KEY_A), -+ KEY(2, 6, KEY_N), -+ KEY(3, 6, KEY_BACKSPACE), -+ KEY(6, 6, KEY_P), -+ KEY(7, 6, KEY_UP), -+ KEY(6, 7, KEY_SELECT), -+ KEY(7, 7, KEY_DOWN), -+ KEY(0, 7, KEY_PROG1), /*MACRO 1 */ -+ KEY(1, 7, KEY_PROG2), /*MACRO 2 */ -+ KEY(2, 7, KEY_PROG3), /*MACRO 3 */ -+ KEY(3, 7, KEY_PROG4), /*MACRO 4 */ -+ 0 -+}; -+ -+static struct twl4030_keypad_data zoom2_kp_twl4030_data = { -+ .rows = 8, -+ .cols = 8, -+ .keymap = zoom2_twl4030_keymap, -+ .keymapsize = ARRAY_SIZE(zoom2_twl4030_keymap), -+ .rep = 1, -+}; -+ - static struct omap_uart_config zoom2_uart_config __initdata = { - .enabled_uarts = ((1 << 0) | (1 << 1) | (1 << 2)), - }; -@@ -42,10 +109,128 @@ static void __init omap_zoom2_init_irq(void) - omap_gpio_init(); - } - -+ -+static struct regulator_consumer_supply zoom2_vmmc1_supply = { -+ .supply = "vmmc", -+}; -+ -+static struct regulator_consumer_supply zoom2_vsim_supply = { -+ .supply = "vmmc_aux", -+}; -+ -+static struct regulator_consumer_supply zoom2_vmmc2_supply = { -+ .supply = "vmmc", -+}; -+ -+/* VMMC1 for OMAP VDD_MMC1 (i/o) and MMC1 card */ -+static struct regulator_init_data zoom2_vmmc1 = { -+ .constraints = { -+ .min_uV = 1850000, -+ .max_uV = 3150000, -+ .valid_modes_mask = REGULATOR_MODE_NORMAL -+ | REGULATOR_MODE_STANDBY, -+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE -+ | REGULATOR_CHANGE_MODE -+ | REGULATOR_CHANGE_STATUS, -+ }, -+ .num_consumer_supplies = 1, -+ .consumer_supplies = &zoom2_vmmc1_supply, -+}; -+ -+/* VMMC2 for MMC2 card */ -+static struct regulator_init_data zoom2_vmmc2 = { -+ .constraints = { -+ .min_uV = 1850000, -+ .max_uV = 1850000, -+ .apply_uV = true, -+ .valid_modes_mask = REGULATOR_MODE_NORMAL -+ | REGULATOR_MODE_STANDBY, -+ .valid_ops_mask = REGULATOR_CHANGE_MODE -+ | REGULATOR_CHANGE_STATUS, -+ }, -+ .num_consumer_supplies = 1, -+ .consumer_supplies = &zoom2_vmmc2_supply, -+}; -+ -+/* VSIM for OMAP VDD_MMC1A (i/o for DAT4..DAT7) */ -+static struct regulator_init_data zoom2_vsim = { -+ .constraints = { -+ .min_uV = 1800000, -+ .max_uV = 3000000, -+ .valid_modes_mask = REGULATOR_MODE_NORMAL -+ | REGULATOR_MODE_STANDBY, -+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE -+ | REGULATOR_CHANGE_MODE -+ | REGULATOR_CHANGE_STATUS, -+ }, -+ .num_consumer_supplies = 1, -+ .consumer_supplies = &zoom2_vsim_supply, -+}; -+ -+static struct twl4030_hsmmc_info mmc[] __initdata = { -+ { -+ .mmc = 1, -+ .wires = 4, -+ .gpio_wp = -EINVAL, -+ }, -+ { -+ .mmc = 2, -+ .wires = 4, -+ .gpio_wp = -EINVAL, -+ }, -+ {} /* Terminator */ -+}; -+ -+static int zoom2_twl_gpio_setup(struct device *dev, -+ unsigned gpio, unsigned ngpio) -+{ -+ /* gpio + 0 is "mmc0_cd" (input/IRQ), -+ * gpio + 1 is "mmc1_cd" (input/IRQ) -+ */ -+ mmc[0].gpio_cd = gpio + 0; -+ mmc[1].gpio_cd = gpio + 1; -+ twl4030_mmc_init(mmc); -+ -+ /* link regulators to MMC adapters ... we "know" the -+ * regulators will be set up only *after* we return. -+ */ -+ zoom2_vmmc1_supply.dev = mmc[0].dev; -+ zoom2_vsim_supply.dev = mmc[0].dev; -+ zoom2_vmmc2_supply.dev = mmc[1].dev; -+ -+ return 0; -+} -+ -+ -+static int zoom2_batt_table[] = { -+/* 0 C*/ -+30800, 29500, 28300, 27100, -+26000, 24900, 23900, 22900, 22000, 21100, 20300, 19400, 18700, 17900, -+17200, 16500, 15900, 15300, 14700, 14100, 13600, 13100, 12600, 12100, -+11600, 11200, 10800, 10400, 10000, 9630, 9280, 8950, 8620, 8310, -+8020, 7730, 7460, 7200, 6950, 6710, 6470, 6250, 6040, 5830, -+5640, 5450, 5260, 5090, 4920, 4760, 4600, 4450, 4310, 4170, -+4040, 3910, 3790, 3670, 3550 -+}; -+ -+static struct twl4030_bci_platform_data zoom2_bci_data = { -+ .battery_tmp_tbl = zoom2_batt_table, -+ .tblsize = ARRAY_SIZE(zoom2_batt_table), -+}; -+ -+static struct twl4030_usb_data zoom2_usb_data = { -+ .usb_mode = T2_USB_MODE_ULPI, -+}; -+ - static struct twl4030_gpio_platform_data zoom2_gpio_data = { - .gpio_base = OMAP_MAX_GPIO_LINES, - .irq_base = TWL4030_GPIO_IRQ_BASE, - .irq_end = TWL4030_GPIO_IRQ_END, -+ .setup = zoom2_twl_gpio_setup, -+}; -+ -+static struct twl4030_madc_platform_data zoom2_madc_data = { -+ .irq_line = 1, - }; - - static struct twl4030_platform_data zoom2_twldata = { -@@ -53,7 +238,15 @@ static struct twl4030_platform_data zoom2_twldata = { - .irq_end = TWL4030_IRQ_END, - - /* platform_data for children goes here */ -+ .bci = &zoom2_bci_data, -+ .madc = &zoom2_madc_data, -+ .usb = &zoom2_usb_data, - .gpio = &zoom2_gpio_data, -+ .keypad = &zoom2_kp_twl4030_data, -+ .vmmc1 = &zoom2_vmmc1, -+ .vmmc2 = &zoom2_vmmc2, -+ .vsim = &zoom2_vsim, -+ - }; - - static struct i2c_board_info __initdata zoom2_i2c_boardinfo[] = { -@@ -74,16 +267,6 @@ static int __init omap_i2c_init(void) - return 0; - } - --static struct twl4030_hsmmc_info mmc[] __initdata = { -- { -- .mmc = 1, -- .wires = 4, -- .gpio_cd = -EINVAL, -- .gpio_wp = -EINVAL, -- }, -- {} /* Terminator */ --}; -- - extern int __init omap_zoom2_debugboard_init(void); - - static void __init omap_zoom2_init(void) -@@ -91,7 +274,6 @@ static void __init omap_zoom2_init(void) - omap_i2c_init(); - omap_serial_init(); - omap_zoom2_debugboard_init(); -- twl4030_mmc_init(mmc); - usb_musb_init(); - } - --- -1.6.3.2 - diff --git a/meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP-Zoom2-Add-DEBUG_LL-interface-using-external-Qua.patch b/meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP-Zoom2-Add-DEBUG_LL-interface-using-external-Qua.patch new file mode 100644 index 0000000000..e39090f6cf --- /dev/null +++ b/meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP-Zoom2-Add-DEBUG_LL-interface-using-external-Qua.patch @@ -0,0 +1,171 @@ +From 98d46e88ffe23a9adcf6ae1acf19b210d5ac3737 Mon Sep 17 00:00:00 2001 +From: Vikram Pandita +Date: Thu, 20 Aug 2009 17:16:24 -0500 +Subject: [PATCH 3/5] OMAP: Zoom2: Add DEBUG_LL interface using external Quart + +This patch adds DEBUG_LL interface for Zoom2 board. +The low level debug uart now points corrctly to External Quad uart +controller on detachable debug board. + +The Quad uart is available over GPMC chip select with physical address +0x10000000. + +This physical address has been mapped to virtual address 0xFB000000 +as per static mapping. + +Also the register accesses to Quad uart have a requirement of shift=1 +based on the h/w mapping of the registers + +This patch is adapted from a version by Erik Gilling: +http://android.git.kernel.org/?p=kernel/omap.git; +a=commit;h=e9d72efdd88877d2d6ea74a08983ace0dcc771d3 + +Signed-off-by: Vikram Pandita +Cc: Erik Gilling +--- + arch/arm/mach-omap2/board-zoom-debugboard.c | 5 +++-- + arch/arm/mach-omap2/board-zoom2.c | 15 +++++++++++++++ + arch/arm/plat-omap/include/mach/debug-macro.S | 14 ++++++++++++-- + arch/arm/plat-omap/include/mach/io.h | 6 ++++++ + arch/arm/plat-omap/include/mach/uncompress.h | 7 +++++++ + 5 files changed, 43 insertions(+), 4 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-zoom-debugboard.c b/arch/arm/mach-omap2/board-zoom-debugboard.c +index f546063..f8b0726 100644 +--- a/arch/arm/mach-omap2/board-zoom-debugboard.c ++++ b/arch/arm/mach-omap2/board-zoom-debugboard.c +@@ -82,9 +82,10 @@ static inline void __init zoom2_init_smsc911x(void) + + static struct plat_serial8250_port serial_platform_data[] = { + { +- .mapbase = 0x10000000, ++ .membase = IOMEM(ZOOM2_EXT_QUART_VIRT), ++ .mapbase = ZOOM2_EXT_QUART_PHYS, + .irq = OMAP_GPIO_IRQ(102), +- .flags = UPF_BOOT_AUTOCONF|UPF_IOREMAP|UPF_SHARE_IRQ, ++ .flags = UPF_BOOT_AUTOCONF|UPF_SHARE_IRQ, + .irqflags = IRQF_SHARED | IRQF_TRIGGER_RISING, + .iotype = UPIO_MEM, + .regshift = 1, +diff --git a/arch/arm/mach-omap2/board-zoom2.c b/arch/arm/mach-omap2/board-zoom2.c +index 58baee3..fc27b07 100644 +--- a/arch/arm/mach-omap2/board-zoom2.c ++++ b/arch/arm/mach-omap2/board-zoom2.c +@@ -16,9 +16,11 @@ + #include + #include + #include ++#include + + #include + #include ++#include + + #include + #include +@@ -273,9 +275,22 @@ static void __init omap_zoom2_init(void) + usb_musb_init(); + } + ++static struct map_desc zoom2_io_desc[] __initdata = { ++ { ++ .virtual = ZOOM2_EXT_QUART_VIRT, ++ .pfn = __phys_to_pfn(ZOOM2_EXT_QUART_PHYS), ++ .length = ZOOM2_EXT_QUART_SIZE, ++ .type = MT_DEVICE ++ } ++}; ++ + static void __init omap_zoom2_map_io(void) + { + omap2_set_globals_343x(); ++ ++ /* Map external quad UART virt to phy mapping */ ++ iotable_init(zoom2_io_desc, ARRAY_SIZE(zoom2_io_desc)); ++ + omap2_map_common_io(); + } + +diff --git a/arch/arm/plat-omap/include/mach/debug-macro.S b/arch/arm/plat-omap/include/mach/debug-macro.S +index f546d6c..a97f2fb 100644 +--- a/arch/arm/plat-omap/include/mach/debug-macro.S ++++ b/arch/arm/plat-omap/include/mach/debug-macro.S +@@ -12,6 +12,14 @@ + */ + #include "io.h" + ++#if (CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR == 0x10000000) ++#define REGSHIFT 1 ++#define UART_VIRT_TO_PHY_OFFSET ZOOM2_EXT_QUART_PHY_TO_VIRT_OFF ++#else ++#define REGSHIFT 2 ++#define UART_VIRT_TO_PHY_OFFSET OMAP2_IO_OFFSET ++#endif ++ + .macro addruart,rx + mrc p15, 0, \rx, c1, c0 + tst \rx, #1 @ MMU enabled? +@@ -22,7 +30,7 @@ + #else + /* omap2/omap3/omap4 */ + ldr \rx, =CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR @ physical base address +- orrne \rx, \rx, #OMAP2_IO_OFFSET @ virtual base ++ orrne \rx, \rx, #UART_VIRT_TO_PHY_OFFSET @ virtual base + #endif + .endm + +@@ -31,13 +39,15 @@ + .endm + + .macro busyuart,rd,rx +-1001: ldrb \rd, [\rx, #(0x5 << 2)] @ OMAP-1510 and friends ++1001: ldrb \rd, [\rx, #(0x5 << REGSHIFT)] @ OMAP-1510 and friends + and \rd, \rd, #0x60 + teq \rd, #0x60 ++#if (CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR != 0x10000000) + beq 1002f + ldrb \rd, [\rx, #(0x5 << 0)] @ OMAP-730 only + and \rd, \rd, #0x60 + teq \rd, #0x60 ++#endif + bne 1001b + 1002: + .endm +diff --git a/arch/arm/plat-omap/include/mach/io.h b/arch/arm/plat-omap/include/mach/io.h +index 8d32df3..97702e6 100644 +--- a/arch/arm/plat-omap/include/mach/io.h ++++ b/arch/arm/plat-omap/include/mach/io.h +@@ -169,6 +169,12 @@ + #define DSP_MMU_34XX_VIRT 0xe2000000 + #define DSP_MMU_34XX_SIZE SZ_4K + ++/* Map External Quad UART for Zoom2 board */ ++#define ZOOM2_EXT_QUART_PHYS 0x10000000 /* PHY address if fixed */ ++#define ZOOM2_EXT_QUART_PHY_TO_VIRT_OFF 0xeb000000 ++#define ZOOM2_EXT_QUART_VIRT 0xfb000000 ++#define ZOOM2_EXT_QUART_SIZE SZ_16 ++ + /* + * ---------------------------------------------------------------------------- + * Omap4 specific IO mapping +diff --git a/arch/arm/plat-omap/include/mach/uncompress.h b/arch/arm/plat-omap/include/mach/uncompress.h +index 0e21eb3..959195a 100644 +--- a/arch/arm/plat-omap/include/mach/uncompress.h ++++ b/arch/arm/plat-omap/include/mach/uncompress.h +@@ -41,6 +41,13 @@ static void putc(int c) + #if defined(CONFIG_DEBUG_LL) + uart = (volatile u8 *)(CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR); + ++#if (CONFIG_OMAP_DEBUG_LL_UART_PHY_ADDR == 0x10000000) ++ /* External UART has a shift=1 requirement ++ * Internal OMAP UARTs have shift=2 requirement ++ */ ++ shift = 1; ++#endif ++ + #ifdef CONFIG_ARCH_OMAP1 + /* Determine which serial port to use */ + do { +-- +1.6.3.2 + diff --git a/meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP3-Zoom2-Update-board-defconfig.patch b/meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP3-Zoom2-Update-board-defconfig.patch deleted file mode 100644 index a2e89e280a..0000000000 --- a/meta/packages/linux/linux-omap3-pm-git/zoom2/0003-OMAP3-Zoom2-Update-board-defconfig.patch +++ /dev/null @@ -1,1102 +0,0 @@ -From 6ee03ed1dc74b4e777d65c73b7ef9c0222fc98a8 Mon Sep 17 00:00:00 2001 -From: Vikram Pandita -Date: Fri, 12 Jun 2009 17:47:38 -0500 -Subject: [PATCH 3/8] OMAP3:Zoom2: Update board defconfig - -Update defconfig for Zoom2 to include -TWL4030 core -TWL4030 drivers (bci, gpio, keypad, usb, mmc) - -Also sync the defconfig after issuing a menuconfig - -Signed-off-by: Vikram Pandita ---- - arch/arm/configs/omap_zoom2_defconfig | 484 +++++++++++++++++++++++++++----- - 1 files changed, 408 insertions(+), 76 deletions(-) - -diff --git a/arch/arm/configs/omap_zoom2_defconfig b/arch/arm/configs/omap_zoom2_defconfig -index 213fe9c..f1739fa 100644 ---- a/arch/arm/configs/omap_zoom2_defconfig -+++ b/arch/arm/configs/omap_zoom2_defconfig -@@ -1,7 +1,7 @@ - # - # Automatically generated make config: don't edit --# Linux kernel version: 2.6.27-rc5 --# Fri Oct 10 11:49:41 2008 -+# Linux kernel version: 2.6.30-omap1 -+# Fri Jun 12 17:25:46 2009 - # - CONFIG_ARM=y - CONFIG_SYS_SUPPORTS_APM_EMULATION=y -@@ -22,8 +22,6 @@ CONFIG_RWSEM_GENERIC_SPINLOCK=y - # CONFIG_ARCH_HAS_ILOG2_U64 is not set - CONFIG_GENERIC_HWEIGHT=y - CONFIG_GENERIC_CALIBRATE_DELAY=y --CONFIG_ARCH_SUPPORTS_AOUT=y --CONFIG_ZONE_DMA=y - CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y - CONFIG_VECTORS_BASE=0xffff0000 - CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -@@ -39,44 +37,61 @@ CONFIG_LOCALVERSION_AUTO=y - CONFIG_SWAP=y - CONFIG_SYSVIPC=y - CONFIG_SYSVIPC_SYSCTL=y -+# CONFIG_POSIX_MQUEUE is not set - CONFIG_BSD_PROCESS_ACCT=y - # CONFIG_BSD_PROCESS_ACCT_V3 is not set -+# CONFIG_TASKSTATS is not set -+# CONFIG_AUDIT is not set -+ -+# -+# RCU Subsystem -+# -+CONFIG_CLASSIC_RCU=y -+# CONFIG_TREE_RCU is not set -+# CONFIG_PREEMPT_RCU is not set -+# CONFIG_TREE_RCU_TRACE is not set -+# CONFIG_PREEMPT_RCU_TRACE is not set - # CONFIG_IKCONFIG is not set - CONFIG_LOG_BUF_SHIFT=14 --# CONFIG_CGROUPS is not set - CONFIG_GROUP_SCHED=y - CONFIG_FAIR_GROUP_SCHED=y - # CONFIG_RT_GROUP_SCHED is not set - CONFIG_USER_SCHED=y - # CONFIG_CGROUP_SCHED is not set -+# CONFIG_CGROUPS is not set - CONFIG_SYSFS_DEPRECATED=y - CONFIG_SYSFS_DEPRECATED_V2=y - # CONFIG_RELAY is not set - # CONFIG_NAMESPACES is not set - CONFIG_BLK_DEV_INITRD=y - CONFIG_INITRAMFS_SOURCE="" -+CONFIG_RD_GZIP=y -+# CONFIG_RD_BZIP2 is not set -+# CONFIG_RD_LZMA is not set - CONFIG_CC_OPTIMIZE_FOR_SIZE=y - CONFIG_SYSCTL=y -+CONFIG_ANON_INODES=y - CONFIG_EMBEDDED=y - CONFIG_UID16=y - # CONFIG_SYSCTL_SYSCALL is not set - CONFIG_KALLSYMS=y - # CONFIG_KALLSYMS_ALL is not set - CONFIG_KALLSYMS_EXTRA_PASS=y -+# CONFIG_STRIP_ASM_SYMS is not set - CONFIG_HOTPLUG=y - CONFIG_PRINTK=y - CONFIG_BUG=y - CONFIG_ELF_CORE=y --CONFIG_COMPAT_BRK=y - CONFIG_BASE_FULL=y - CONFIG_FUTEX=y --CONFIG_ANON_INODES=y - CONFIG_EPOLL=y - CONFIG_SIGNALFD=y - CONFIG_TIMERFD=y - CONFIG_EVENTFD=y - CONFIG_SHMEM=y -+CONFIG_AIO=y - CONFIG_VM_EVENT_COUNTERS=y -+CONFIG_COMPAT_BRK=y - CONFIG_SLAB=y - # CONFIG_SLUB is not set - # CONFIG_SLOB is not set -@@ -84,19 +99,13 @@ CONFIG_SLAB=y - # CONFIG_MARKERS is not set - CONFIG_HAVE_OPROFILE=y - # CONFIG_KPROBES is not set --# CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS is not set --# CONFIG_HAVE_IOREMAP_PROT is not set - CONFIG_HAVE_KPROBES=y - CONFIG_HAVE_KRETPROBES=y --# CONFIG_HAVE_ARCH_TRACEHOOK is not set --# CONFIG_HAVE_DMA_ATTRS is not set --# CONFIG_USE_GENERIC_SMP_HELPERS is not set - CONFIG_HAVE_CLK=y --CONFIG_PROC_PAGE_MONITOR=y -+# CONFIG_SLOW_WORK is not set - CONFIG_HAVE_GENERIC_DMA_COHERENT=y - CONFIG_SLABINFO=y - CONFIG_RT_MUTEXES=y --# CONFIG_TINY_SHMEM is not set - CONFIG_BASE_SMALL=0 - CONFIG_MODULES=y - # CONFIG_MODULE_FORCE_LOAD is not set -@@ -104,11 +113,8 @@ CONFIG_MODULE_UNLOAD=y - # CONFIG_MODULE_FORCE_UNLOAD is not set - CONFIG_MODVERSIONS=y - CONFIG_MODULE_SRCVERSION_ALL=y --CONFIG_KMOD=y - CONFIG_BLOCK=y - # CONFIG_LBD is not set --# CONFIG_BLK_DEV_IO_TRACE is not set --# CONFIG_LSF is not set - # CONFIG_BLK_DEV_BSG is not set - # CONFIG_BLK_DEV_INTEGRITY is not set - -@@ -124,7 +130,7 @@ CONFIG_DEFAULT_AS=y - # CONFIG_DEFAULT_CFQ is not set - # CONFIG_DEFAULT_NOOP is not set - CONFIG_DEFAULT_IOSCHED="anticipatory" --CONFIG_CLASSIC_RCU=y -+CONFIG_FREEZER=y - - # - # System Type -@@ -134,10 +140,10 @@ CONFIG_CLASSIC_RCU=y - # CONFIG_ARCH_REALVIEW is not set - # CONFIG_ARCH_VERSATILE is not set - # CONFIG_ARCH_AT91 is not set --# CONFIG_ARCH_CLPS7500 is not set - # CONFIG_ARCH_CLPS711X is not set - # CONFIG_ARCH_EBSA110 is not set - # CONFIG_ARCH_EP93XX is not set -+# CONFIG_ARCH_GEMINI is not set - # CONFIG_ARCH_FOOTBRIDGE is not set - # CONFIG_ARCH_NETX is not set - # CONFIG_ARCH_H720X is not set -@@ -158,14 +164,17 @@ CONFIG_CLASSIC_RCU=y - # CONFIG_ARCH_ORION5X is not set - # CONFIG_ARCH_PNX4008 is not set - # CONFIG_ARCH_PXA is not set -+# CONFIG_ARCH_MMP is not set - # CONFIG_ARCH_RPC is not set - # CONFIG_ARCH_SA1100 is not set - # CONFIG_ARCH_S3C2410 is not set -+# CONFIG_ARCH_S3C64XX is not set - # CONFIG_ARCH_SHARK is not set - # CONFIG_ARCH_LH7A40X is not set - # CONFIG_ARCH_DAVINCI is not set - CONFIG_ARCH_OMAP=y --# CONFIG_ARCH_MSM7X00A is not set -+# CONFIG_ARCH_MSM is not set -+# CONFIG_ARCH_W90X900 is not set - - # - # TI OMAP Implementations -@@ -174,6 +183,7 @@ CONFIG_ARCH_OMAP_OTG=y - # CONFIG_ARCH_OMAP1 is not set - # CONFIG_ARCH_OMAP2 is not set - CONFIG_ARCH_OMAP3=y -+# CONFIG_ARCH_OMAP4 is not set - - # - # OMAP Feature Selections -@@ -185,6 +195,7 @@ CONFIG_OMAP_MUX=y - CONFIG_OMAP_MUX_DEBUG=y - CONFIG_OMAP_MUX_WARNINGS=y - CONFIG_OMAP_MCBSP=y -+# CONFIG_OMAP_MBOX_FWK is not set - # CONFIG_OMAP_MPU_TIMER is not set - CONFIG_OMAP_32K_TIMER=y - CONFIG_OMAP_32K_TIMER_HZ=128 -@@ -192,25 +203,20 @@ CONFIG_OMAP_DM_TIMER=y - # CONFIG_OMAP_LL_DEBUG_UART1 is not set - # CONFIG_OMAP_LL_DEBUG_UART2 is not set - CONFIG_OMAP_LL_DEBUG_UART3=y --CONFIG_OMAP_SERIAL_WAKE=y - CONFIG_ARCH_OMAP34XX=y - CONFIG_ARCH_OMAP3430=y - - # - # OMAP Board Type - # --# CONFIG_MACH_OMAP3_BEAGLE is not set -+# CONFIG_MACH_NOKIA_RX51 is not set - # CONFIG_MACH_OMAP_LDP is not set --CONFIG_MACH_OMAP_ZOOM2=y -+# CONFIG_MACH_OMAP_3430SDP is not set -+# CONFIG_MACH_OMAP3EVM is not set -+# CONFIG_MACH_OMAP3_BEAGLE is not set - # CONFIG_MACH_OVERO is not set -- --# --# Boot options --# -- --# --# Power management --# -+# CONFIG_MACH_OMAP3_PANDORA is not set -+CONFIG_MACH_OMAP_ZOOM2=y - - # - # Processor Type -@@ -239,6 +245,10 @@ CONFIG_ARM_THUMB=y - # CONFIG_CPU_BPREDICT_DISABLE is not set - CONFIG_HAS_TLS_REG=y - # CONFIG_OUTER_CACHE is not set -+# CONFIG_ARM_ERRATA_430973 is not set -+# CONFIG_ARM_ERRATA_458693 is not set -+# CONFIG_ARM_ERRATA_460075 is not set -+CONFIG_COMMON_CLKDEV=y - - # - # Bus support -@@ -254,26 +264,32 @@ CONFIG_TICK_ONESHOT=y - CONFIG_NO_HZ=y - CONFIG_HIGH_RES_TIMERS=y - CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -+CONFIG_VMSPLIT_3G=y -+# CONFIG_VMSPLIT_2G is not set -+# CONFIG_VMSPLIT_1G is not set -+CONFIG_PAGE_OFFSET=0xC0000000 - # CONFIG_PREEMPT is not set - CONFIG_HZ=128 - CONFIG_AEABI=y - CONFIG_OABI_COMPAT=y --CONFIG_ARCH_FLATMEM_HAS_HOLES=y --# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set -+# CONFIG_ARCH_HAS_HOLES_MEMORYMODEL is not set -+# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set -+# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set -+# CONFIG_HIGHMEM is not set - CONFIG_SELECT_MEMORY_MODEL=y - CONFIG_FLATMEM_MANUAL=y - # CONFIG_DISCONTIGMEM_MANUAL is not set - # CONFIG_SPARSEMEM_MANUAL is not set - CONFIG_FLATMEM=y - CONFIG_FLAT_NODE_MEM_MAP=y --# CONFIG_SPARSEMEM_STATIC is not set --# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set - CONFIG_PAGEFLAGS_EXTENDED=y - CONFIG_SPLIT_PTLOCK_CPUS=4 --# CONFIG_RESOURCES_64BIT is not set --CONFIG_ZONE_DMA_FLAG=1 --CONFIG_BOUNCE=y -+# CONFIG_PHYS_ADDR_T_64BIT is not set -+CONFIG_ZONE_DMA_FLAG=0 - CONFIG_VIRT_TO_BUS=y -+CONFIG_UNEVICTABLE_LRU=y -+CONFIG_HAVE_MLOCK=y -+CONFIG_HAVE_MLOCKED_PAGE_BIT=y - # CONFIG_LEDS is not set - CONFIG_ALIGNMENT_TRAP=y - -@@ -287,9 +303,10 @@ CONFIG_CMDLINE="root=/dev/nfs nfsroot=192.168.0.1:/home/user/buildroot ip=192.16 - # CONFIG_KEXEC is not set - - # --# CPU Frequency scaling -+# CPU Power Management - # - # CONFIG_CPU_FREQ is not set -+# CONFIG_CPU_IDLE is not set - - # - # Floating point emulation -@@ -309,13 +326,23 @@ CONFIG_VFPv3=y - # Userspace binary formats - # - CONFIG_BINFMT_ELF=y -+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set -+CONFIG_HAVE_AOUT=y - # CONFIG_BINFMT_AOUT is not set - CONFIG_BINFMT_MISC=y - - # - # Power management options - # --# CONFIG_PM is not set -+CONFIG_PM=y -+CONFIG_PM_DEBUG=y -+CONFIG_PM_VERBOSE=y -+CONFIG_CAN_PM_TRACE=y -+CONFIG_PM_SLEEP=y -+CONFIG_SUSPEND=y -+# CONFIG_PM_TEST_SUSPEND is not set -+CONFIG_SUSPEND_FREEZER=y -+# CONFIG_APM_EMULATION is not set - CONFIG_ARCH_SUSPEND_POSSIBLE=y - CONFIG_NET=y - -@@ -378,7 +405,9 @@ CONFIG_DEFAULT_TCP_CONG="cubic" - # CONFIG_LAPB is not set - # CONFIG_ECONET is not set - # CONFIG_WAN_ROUTER is not set -+# CONFIG_PHONET is not set - # CONFIG_NET_SCHED is not set -+# CONFIG_DCB is not set - - # - # Network testing -@@ -389,8 +418,8 @@ CONFIG_DEFAULT_TCP_CONG="cubic" - # CONFIG_IRDA is not set - # CONFIG_BT is not set - # CONFIG_AF_RXRPC is not set --# CONFIG_PHONET is not set - # CONFIG_WIRELESS is not set -+# CONFIG_WIMAX is not set - # CONFIG_RFKILL is not set - # CONFIG_NET_9P is not set - -@@ -416,14 +445,28 @@ CONFIG_BLK_DEV=y - # CONFIG_BLK_DEV_COW_COMMON is not set - CONFIG_BLK_DEV_LOOP=y - # CONFIG_BLK_DEV_CRYPTOLOOP is not set -+# CONFIG_BLK_DEV_NBD is not set -+# CONFIG_BLK_DEV_UB is not set - CONFIG_BLK_DEV_RAM=y - CONFIG_BLK_DEV_RAM_COUNT=16 - CONFIG_BLK_DEV_RAM_SIZE=16384 - # CONFIG_BLK_DEV_XIP is not set - # CONFIG_CDROM_PKTCDVD is not set -+# CONFIG_ATA_OVER_ETH is not set - CONFIG_MISC_DEVICES=y --# CONFIG_EEPROM_93CX6 is not set -+# CONFIG_ICS932S401 is not set -+# CONFIG_OMAP_STI is not set - # CONFIG_ENCLOSURE_SERVICES is not set -+# CONFIG_ISL29003 is not set -+# CONFIG_C2PORT is not set -+ -+# -+# EEPROM support -+# -+# CONFIG_EEPROM_AT24 is not set -+# CONFIG_EEPROM_AT25 is not set -+# CONFIG_EEPROM_LEGACY is not set -+# CONFIG_EEPROM_93CX6 is not set - CONFIG_HAVE_IDE=y - # CONFIG_IDE is not set - -@@ -461,14 +504,20 @@ CONFIG_SCSI_WAIT_SCAN=m - # - # CONFIG_SCSI_SPI_ATTRS is not set - # CONFIG_SCSI_FC_ATTRS is not set -+# CONFIG_SCSI_ISCSI_ATTRS is not set - # CONFIG_SCSI_SAS_LIBSAS is not set - # CONFIG_SCSI_SRP_ATTRS is not set - CONFIG_SCSI_LOWLEVEL=y -+# CONFIG_ISCSI_TCP is not set -+# CONFIG_LIBFC is not set -+# CONFIG_LIBFCOE is not set - # CONFIG_SCSI_DEBUG is not set - # CONFIG_SCSI_DH is not set -+# CONFIG_SCSI_OSD_INITIATOR is not set - # CONFIG_ATA is not set - # CONFIG_MD is not set - CONFIG_NETDEVICES=y -+CONFIG_COMPAT_NET_DEV_OPS=y - # CONFIG_DUMMY is not set - # CONFIG_BONDING is not set - # CONFIG_MACVLAN is not set -@@ -501,8 +550,10 @@ CONFIG_MII=y - # CONFIG_SMC91X is not set - # CONFIG_DM9000 is not set - # CONFIG_ENC28J60 is not set -+# CONFIG_ETHOC is not set - # CONFIG_SMC911X is not set - CONFIG_SMSC911X=y -+# CONFIG_DNET is not set - # CONFIG_IBM_NEW_EMAC_ZMII is not set - # CONFIG_IBM_NEW_EMAC_RGMII is not set - # CONFIG_IBM_NEW_EMAC_TAH is not set -@@ -519,7 +570,10 @@ CONFIG_NETDEV_10000=y - # - # CONFIG_WLAN_PRE80211 is not set - # CONFIG_WLAN_80211 is not set --# CONFIG_IWLWIFI_LEDS is not set -+ -+# -+# Enable WiMAX (Networking options) to see the WiMAX drivers -+# - - # - # USB Network Adapters -@@ -561,17 +615,25 @@ CONFIG_INPUT_EVDEV=y - # CONFIG_INPUT_TABLET is not set - CONFIG_INPUT_TOUCHSCREEN=y - CONFIG_TOUCHSCREEN_ADS7846=y -+# CONFIG_TOUCHSCREEN_AD7877 is not set -+# CONFIG_TOUCHSCREEN_AD7879_I2C is not set -+# CONFIG_TOUCHSCREEN_AD7879_SPI is not set -+# CONFIG_TOUCHSCREEN_AD7879 is not set - # CONFIG_TOUCHSCREEN_FUJITSU is not set - # CONFIG_TOUCHSCREEN_GUNZE is not set - # CONFIG_TOUCHSCREEN_ELO is not set -+# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set - # CONFIG_TOUCHSCREEN_MTOUCH is not set - # CONFIG_TOUCHSCREEN_INEXIO is not set - # CONFIG_TOUCHSCREEN_MK712 is not set - # CONFIG_TOUCHSCREEN_PENMOUNT is not set - # CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set - # CONFIG_TOUCHSCREEN_TOUCHWIN is not set --# CONFIG_TOUCHSCREEN_UCB1400 is not set -+# CONFIG_TOUCHSCREEN_TSC2005 is not set -+# CONFIG_TOUCHSCREEN_TSC210X is not set -+# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set - # CONFIG_TOUCHSCREEN_TOUCHIT213 is not set -+# CONFIG_TOUCHSCREEN_TSC2007 is not set - # CONFIG_INPUT_MISC is not set - - # -@@ -607,13 +669,15 @@ CONFIG_SERIAL_8250_RSA=y - # - # Non-8250 serial port support - # -+# CONFIG_SERIAL_MAX3100 is not set - CONFIG_SERIAL_CORE=y - CONFIG_SERIAL_CORE_CONSOLE=y - CONFIG_UNIX98_PTYS=y -+# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set - # CONFIG_LEGACY_PTYS is not set - # CONFIG_IPMI_HANDLER is not set - CONFIG_HW_RANDOM=y --# CONFIG_NVRAM is not set -+# CONFIG_HW_RANDOM_TIMERIOMEM is not set - # CONFIG_R3964 is not set - # CONFIG_RAW_DRIVER is not set - # CONFIG_TCG_TPM is not set -@@ -639,6 +703,7 @@ CONFIG_I2C_OMAP=y - # - # CONFIG_I2C_PARPORT_LIGHT is not set - # CONFIG_I2C_TAOS_EVM is not set -+# CONFIG_I2C_TINY_USB is not set - - # - # Other I2C/SMBus bus drivers -@@ -650,14 +715,11 @@ CONFIG_I2C_OMAP=y - # Miscellaneous I2C Chip support - # - # CONFIG_DS1682 is not set --# CONFIG_EEPROM_AT24 is not set --# CONFIG_EEPROM_LEGACY is not set - # CONFIG_SENSORS_PCF8574 is not set - # CONFIG_PCF8575 is not set - # CONFIG_SENSORS_PCA9539 is not set --# CONFIG_SENSORS_PCF8591 is not set --# CONFIG_ISP1301_OMAP is not set --# CONFIG_TPS65010 is not set -+# CONFIG_TWL4030_MADC is not set -+# CONFIG_TWL4030_POWEROFF is not set - # CONFIG_SENSORS_MAX6875 is not set - # CONFIG_SENSORS_TSL2550 is not set - # CONFIG_I2C_DEBUG_CORE is not set -@@ -672,12 +734,12 @@ CONFIG_SPI_MASTER=y - # SPI Master Controller Drivers - # - # CONFIG_SPI_BITBANG is not set -+# CONFIG_SPI_GPIO is not set - CONFIG_SPI_OMAP24XX=y - - # - # SPI Protocol Masters - # --# CONFIG_EEPROM_AT25 is not set - # CONFIG_SPI_SPIDEV is not set - # CONFIG_SPI_TLE62X0 is not set - CONFIG_ARCH_REQUIRE_GPIOLIB=y -@@ -686,11 +748,16 @@ CONFIG_GPIOLIB=y - # CONFIG_GPIO_SYSFS is not set - - # -+# Memory mapped GPIO expanders: -+# -+ -+# - # I2C GPIO expanders: - # - # CONFIG_GPIO_MAX732X is not set - # CONFIG_GPIO_PCA953X is not set - # CONFIG_GPIO_PCF857X is not set -+CONFIG_GPIO_TWL4030=y - - # - # PCI GPIO expanders: -@@ -702,26 +769,34 @@ CONFIG_GPIOLIB=y - # CONFIG_GPIO_MAX7301 is not set - # CONFIG_GPIO_MCP23S08 is not set - CONFIG_W1=y -+CONFIG_W1_CON=y - - # - # 1-wire Bus Masters - # -+# CONFIG_W1_MASTER_DS2490 is not set - # CONFIG_W1_MASTER_DS2482 is not set - # CONFIG_W1_MASTER_DS1WM is not set - # CONFIG_W1_MASTER_GPIO is not set -+# CONFIG_HDQ_MASTER_OMAP is not set - - # - # 1-wire Slaves - # - # CONFIG_W1_SLAVE_THERM is not set - # CONFIG_W1_SLAVE_SMEM is not set -+# CONFIG_W1_SLAVE_DS2431 is not set - # CONFIG_W1_SLAVE_DS2433 is not set - # CONFIG_W1_SLAVE_DS2760 is not set -+# CONFIG_W1_SLAVE_BQ27000 is not set - CONFIG_POWER_SUPPLY=y - # CONFIG_POWER_SUPPLY_DEBUG is not set - # CONFIG_PDA_POWER is not set - # CONFIG_BATTERY_DS2760 is not set -+# CONFIG_BATTERY_BQ27x00 is not set - # CONFIG_HWMON is not set -+# CONFIG_THERMAL is not set -+# CONFIG_THERMAL_HWMON is not set - CONFIG_WATCHDOG=y - CONFIG_WATCHDOG_NOWAYOUT=y - -@@ -729,11 +804,17 @@ CONFIG_WATCHDOG_NOWAYOUT=y - # Watchdog Device Drivers - # - # CONFIG_SOFT_WATCHDOG is not set -+# CONFIG_OMAP_WATCHDOG is not set - - # --# Sonics Silicon Backplane -+# USB-based Watchdog Cards - # -+# CONFIG_USBPCWATCHDOG is not set - CONFIG_SSB_POSSIBLE=y -+ -+# -+# Sonics Silicon Backplane -+# - # CONFIG_SSB is not set - - # -@@ -741,12 +822,19 @@ CONFIG_SSB_POSSIBLE=y - # - # CONFIG_MFD_CORE is not set - # CONFIG_MFD_SM501 is not set -+# CONFIG_MFD_ASIC3 is not set - # CONFIG_HTC_EGPIO is not set - # CONFIG_HTC_PASIC3 is not set -+# CONFIG_TPS65010 is not set -+CONFIG_TWL4030_CORE=y - # CONFIG_MFD_TMIO is not set - # CONFIG_MFD_T7L66XB is not set - # CONFIG_MFD_TC6387XB is not set - # CONFIG_MFD_TC6393XB is not set -+# CONFIG_PMIC_DA903X is not set -+# CONFIG_MFD_WM8400 is not set -+# CONFIG_MFD_WM8350_I2C is not set -+# CONFIG_MFD_PCF50633 is not set - - # - # Multimedia devices -@@ -756,12 +844,14 @@ CONFIG_SSB_POSSIBLE=y - # Multimedia core support - # - # CONFIG_VIDEO_DEV is not set -+# CONFIG_DVB_CORE is not set - # CONFIG_VIDEO_MEDIA is not set - - # - # Multimedia drivers - # - CONFIG_DAB=y -+# CONFIG_USB_DABUSB is not set - - # - # Graphics support -@@ -782,10 +872,12 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m - # CONFIG_VGA_CONSOLE is not set - CONFIG_DUMMY_CONSOLE=y - CONFIG_SOUND=y -+# CONFIG_SOUND_OSS_CORE is not set - CONFIG_SND=y - # CONFIG_SND_SEQUENCER is not set - # CONFIG_SND_MIXER_OSS is not set - # CONFIG_SND_PCM_OSS is not set -+# CONFIG_SND_HRTIMER is not set - # CONFIG_SND_DYNAMIC_MINORS is not set - CONFIG_SND_SUPPORT_OLD_API=y - CONFIG_SND_VERBOSE_PROCFS=y -@@ -798,19 +890,197 @@ CONFIG_SND_DRIVERS=y - # CONFIG_SND_MPU401 is not set - CONFIG_SND_ARM=y - CONFIG_SND_SPI=y -+CONFIG_SND_USB=y -+# CONFIG_SND_USB_AUDIO is not set -+# CONFIG_SND_USB_CAIAQ is not set - # CONFIG_SND_SOC is not set - # CONFIG_SOUND_PRIME is not set - CONFIG_HID_SUPPORT=y - CONFIG_HID=y - # CONFIG_HID_DEBUG is not set - # CONFIG_HIDRAW is not set --# CONFIG_USB_SUPPORT is not set -+ -+# -+# USB Input Devices -+# -+CONFIG_USB_HID=y -+# CONFIG_HID_PID is not set -+# CONFIG_USB_HIDDEV is not set -+ -+# -+# Special HID drivers -+# -+# CONFIG_HID_A4TECH is not set -+# CONFIG_HID_APPLE is not set -+# CONFIG_HID_BELKIN is not set -+# CONFIG_HID_CHERRY is not set -+# CONFIG_HID_CHICONY is not set -+# CONFIG_HID_CYPRESS is not set -+# CONFIG_DRAGONRISE_FF is not set -+# CONFIG_HID_EZKEY is not set -+# CONFIG_HID_KYE is not set -+# CONFIG_HID_GYRATION is not set -+# CONFIG_HID_KENSINGTON is not set -+# CONFIG_HID_LOGITECH is not set -+# CONFIG_HID_MICROSOFT is not set -+# CONFIG_HID_MONTEREY is not set -+# CONFIG_HID_NTRIG is not set -+# CONFIG_HID_PANTHERLORD is not set -+# CONFIG_HID_PETALYNX is not set -+# CONFIG_HID_SAMSUNG is not set -+# CONFIG_HID_SONY is not set -+# CONFIG_HID_SUNPLUS is not set -+# CONFIG_GREENASIA_FF is not set -+# CONFIG_HID_TOPSEED is not set -+# CONFIG_THRUSTMASTER_FF is not set -+# CONFIG_ZEROPLUS_FF is not set -+CONFIG_USB_SUPPORT=y -+CONFIG_USB_ARCH_HAS_HCD=y -+CONFIG_USB_ARCH_HAS_OHCI=y -+CONFIG_USB_ARCH_HAS_EHCI=y -+CONFIG_USB=y -+CONFIG_USB_DEBUG=y -+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y -+ -+# -+# Miscellaneous USB options -+# -+# CONFIG_USB_DEVICEFS is not set -+CONFIG_USB_DEVICE_CLASS=y -+# CONFIG_USB_DYNAMIC_MINORS is not set -+CONFIG_USB_SUSPEND=y -+CONFIG_USB_OTG=y -+# CONFIG_USB_OTG_WHITELIST is not set -+# CONFIG_USB_OTG_BLACKLIST_HUB is not set -+CONFIG_USB_MON=y -+# CONFIG_USB_WUSB is not set -+# CONFIG_USB_WUSB_CBAF is not set -+ -+# -+# USB Host Controller Drivers -+# -+# CONFIG_USB_C67X00_HCD is not set -+# CONFIG_USB_EHCI_HCD is not set -+# CONFIG_USB_OXU210HP_HCD is not set -+# CONFIG_USB_ISP116X_HCD is not set -+# CONFIG_USB_ISP1760_HCD is not set -+# CONFIG_USB_OHCI_HCD is not set -+# CONFIG_USB_SL811_HCD is not set -+# CONFIG_USB_R8A66597_HCD is not set -+# CONFIG_USB_HWA_HCD is not set -+CONFIG_USB_MUSB_HDRC=y -+CONFIG_USB_MUSB_SOC=y -+ -+# -+# OMAP 343x high speed USB support -+# -+# CONFIG_USB_MUSB_HOST is not set -+# CONFIG_USB_MUSB_PERIPHERAL is not set -+CONFIG_USB_MUSB_OTG=y -+CONFIG_USB_GADGET_MUSB_HDRC=y -+CONFIG_USB_MUSB_HDRC_HCD=y -+# CONFIG_MUSB_PIO_ONLY is not set -+CONFIG_USB_INVENTRA_DMA=y -+# CONFIG_USB_TI_CPPI_DMA is not set -+CONFIG_USB_MUSB_DEBUG=y -+ -+# -+# USB Device Class drivers -+# -+# CONFIG_USB_ACM is not set -+# CONFIG_USB_PRINTER is not set -+# CONFIG_USB_WDM is not set -+# CONFIG_USB_TMC is not set -+ -+# -+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may -+# -+ -+# -+# also be needed; see USB_STORAGE Help for more info -+# -+# CONFIG_USB_STORAGE is not set -+# CONFIG_USB_LIBUSUAL is not set -+ -+# -+# USB Imaging devices -+# -+# CONFIG_USB_MDC800 is not set -+# CONFIG_USB_MICROTEK is not set -+ -+# -+# USB port drivers -+# -+# CONFIG_USB_SERIAL is not set -+ -+# -+# USB Miscellaneous drivers -+# -+# CONFIG_USB_EMI62 is not set -+# CONFIG_USB_EMI26 is not set -+# CONFIG_USB_ADUTUX is not set -+# CONFIG_USB_SEVSEG is not set -+# CONFIG_USB_RIO500 is not set -+# CONFIG_USB_LEGOTOWER is not set -+# CONFIG_USB_LCD is not set -+# CONFIG_USB_BERRY_CHARGE is not set -+# CONFIG_USB_LED is not set -+# CONFIG_USB_CYPRESS_CY7C63 is not set -+# CONFIG_USB_CYTHERM is not set -+# CONFIG_USB_IDMOUSE is not set -+# CONFIG_USB_FTDI_ELAN is not set -+# CONFIG_USB_APPLEDISPLAY is not set -+# CONFIG_USB_LD is not set -+# CONFIG_USB_TRANCEVIBRATOR is not set -+# CONFIG_USB_IOWARRIOR is not set -+# CONFIG_USB_ISIGHTFW is not set -+# CONFIG_USB_VST is not set -+CONFIG_USB_GADGET=y -+CONFIG_USB_GADGET_DEBUG=y -+CONFIG_USB_GADGET_DEBUG_FILES=y -+CONFIG_USB_GADGET_VBUS_DRAW=2 -+CONFIG_USB_GADGET_SELECTED=y -+# CONFIG_USB_GADGET_AT91 is not set -+# CONFIG_USB_GADGET_ATMEL_USBA is not set -+# CONFIG_USB_GADGET_FSL_USB2 is not set -+# CONFIG_USB_GADGET_LH7A40X is not set -+# CONFIG_USB_GADGET_OMAP is not set -+# CONFIG_USB_GADGET_PXA25X is not set -+# CONFIG_USB_GADGET_PXA27X is not set -+# CONFIG_USB_GADGET_S3C2410 is not set -+# CONFIG_USB_GADGET_IMX is not set -+# CONFIG_USB_GADGET_M66592 is not set -+# CONFIG_USB_GADGET_AMD5536UDC is not set -+# CONFIG_USB_GADGET_FSL_QE is not set -+# CONFIG_USB_GADGET_CI13XXX is not set -+# CONFIG_USB_GADGET_NET2280 is not set -+# CONFIG_USB_GADGET_GOKU is not set -+# CONFIG_USB_GADGET_DUMMY_HCD is not set -+CONFIG_USB_GADGET_DUALSPEED=y -+CONFIG_USB_ZE