X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=target%2Flinux%2Fomap35xx%2Fpatches-2.6.32%2F002-OMAP.patch;h=e2c9056d78ac2e767d073881ae25f6577ad8edb3;hb=6ff3e61cf7d3d88eaa57304847d625197423012e;hp=925d7a869a24c7943d7edeb7676c930e5ce0fac9;hpb=b5bc4523087c81a5f36fdc5ecec36788ee62b9ba;p=openwrt%2Fstaging%2Fchunkeey.git diff --git a/target/linux/omap35xx/patches-2.6.32/002-OMAP.patch b/target/linux/omap35xx/patches-2.6.32/002-OMAP.patch index 925d7a869a..e2c9056d78 100644 --- a/target/linux/omap35xx/patches-2.6.32/002-OMAP.patch +++ b/target/linux/omap35xx/patches-2.6.32/002-OMAP.patch @@ -1,8 +1,6 @@ -diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig -index 1c4119c..e861e32 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig -@@ -1508,6 +1508,10 @@ source "net/Kconfig" +@@ -1511,6 +1511,10 @@ source "net/Kconfig" source "drivers/Kconfig" @@ -13,24 +11,9 @@ index 1c4119c..e861e32 100644 source "fs/Kconfig" source "arch/arm/Kconfig.debug" -diff --git a/arch/arm/configs/n8x0_defconfig b/arch/arm/configs/n8x0_defconfig -index 8da75de..264f52b 100644 ---- a/arch/arm/configs/n8x0_defconfig -+++ b/arch/arm/configs/n8x0_defconfig -@@ -304,7 +304,7 @@ CONFIG_ALIGNMENT_TRAP=y - CONFIG_ZBOOT_ROM_TEXT=0x10C08000 - CONFIG_ZBOOT_ROM_BSS=0x10200000 - # CONFIG_ZBOOT_ROM is not set --CONFIG_CMDLINE="root=1f03 rootfstype=jffs2 console=ttyS0,115200n8" -+CONFIG_CMDLINE="root=1f03 rootfstype=jffs2 console=ttyS2,115200n8" - # CONFIG_XIP_KERNEL is not set - # CONFIG_KEXEC is not set - -diff --git a/arch/arm/mach-omap1/board-fsample.c b/arch/arm/mach-omap1/board-fsample.c -index a7ead1b..74720e6 100644 --- a/arch/arm/mach-omap1/board-fsample.c +++ b/arch/arm/mach-omap1/board-fsample.c -@@ -107,7 +107,7 @@ static struct resource smc91x_resources[] = { +@@ -107,7 +107,7 @@ static struct resource smc91x_resources[ .flags = IORESOURCE_MEM, }, [1] = { @@ -39,7 +22,7 @@ index a7ead1b..74720e6 100644 .end = 0, .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE, }, -@@ -196,8 +196,8 @@ static struct platform_device smc91x_device = { +@@ -196,8 +196,8 @@ static struct platform_device smc91x_dev static struct resource kp_resources[] = { [0] = { @@ -50,7 +33,7 @@ index a7ead1b..74720e6 100644 .flags = IORESOURCE_IRQ, }, }; -@@ -309,7 +309,7 @@ static void __init omap_fsample_map_io(void) +@@ -309,7 +309,7 @@ static void __init omap_fsample_map_io(v /* * Hold GSM Reset until needed */ @@ -59,7 +42,7 @@ index a7ead1b..74720e6 100644 /* * UARTs -> done automagically by 8250 driver -@@ -320,21 +320,21 @@ static void __init omap_fsample_map_io(void) +@@ -320,21 +320,21 @@ static void __init omap_fsample_map_io(v */ /* Flash: CS0 timings setup */ @@ -86,11 +69,9 @@ index a7ead1b..74720e6 100644 } MACHINE_START(OMAP_FSAMPLE, "OMAP730 F-Sample") -diff --git a/arch/arm/mach-omap1/board-perseus2.c b/arch/arm/mach-omap1/board-perseus2.c -index 8340669..2f897cf 100644 --- a/arch/arm/mach-omap1/board-perseus2.c +++ b/arch/arm/mach-omap1/board-perseus2.c -@@ -74,7 +74,7 @@ static struct resource smc91x_resources[] = { +@@ -74,7 +74,7 @@ static struct resource smc91x_resources[ .flags = IORESOURCE_MEM, }, [1] = { @@ -99,7 +80,7 @@ index 8340669..2f897cf 100644 .end = 0, .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE, }, -@@ -163,8 +163,8 @@ static struct platform_device smc91x_device = { +@@ -163,8 +163,8 @@ static struct platform_device smc91x_dev static struct resource kp_resources[] = { [0] = { @@ -110,7 +91,7 @@ index 8340669..2f897cf 100644 .flags = IORESOURCE_IRQ, }, }; -@@ -270,7 +270,7 @@ static void __init omap_perseus2_map_io(void) +@@ -270,7 +270,7 @@ static void __init omap_perseus2_map_io( /* * Hold GSM Reset until needed */ @@ -119,7 +100,7 @@ index 8340669..2f897cf 100644 /* * UARTs -> done automagically by 8250 driver -@@ -281,21 +281,21 @@ static void __init omap_perseus2_map_io(void) +@@ -281,21 +281,21 @@ static void __init omap_perseus2_map_io( */ /* Flash: CS0 timings setup */ @@ -146,8 +127,6 @@ index 8340669..2f897cf 100644 } MACHINE_START(OMAP_PERSEUS2, "OMAP730 Perseus2") -diff --git a/arch/arm/mach-omap1/clock.c b/arch/arm/mach-omap1/clock.c -index 436eed2..5f77b83 100644 --- a/arch/arm/mach-omap1/clock.c +++ b/arch/arm/mach-omap1/clock.c @@ -69,13 +69,13 @@ struct omap_clk { @@ -193,7 +172,7 @@ index 436eed2..5f77b83 100644 CLK(NULL, "lcd_ck", &lcd_ck_1510.clk, CK_1510 | CK_310), /* ULPD clocks */ CLK(NULL, "uart1_ck", &uart1_1510, CK_1510 | CK_310), -@@ -398,7 +398,7 @@ static int omap1_select_table_rate(struct clk * clk, unsigned long rate) +@@ -398,7 +398,7 @@ static int omap1_select_table_rate(struc * Reprogramming the DPLL is tricky, it must be done from SRAM. * (on 730, bit 13 must always be 1) */ @@ -249,11 +228,9 @@ index 436eed2..5f77b83 100644 omap_writew(omap_readw(ARM_CKCTL) & 0x2fff, ARM_CKCTL); else omap_writew(omap_readw(ARM_CKCTL) & 0x0fff, ARM_CKCTL); -diff --git a/arch/arm/mach-omap1/io.c b/arch/arm/mach-omap1/io.c -index 7030f92..a27df2c 100644 --- a/arch/arm/mach-omap1/io.c +++ b/arch/arm/mach-omap1/io.c -@@ -36,33 +36,17 @@ static struct map_desc omap_io_desc[] __initdata = { +@@ -36,33 +36,17 @@ static struct map_desc omap_io_desc[] __ } }; @@ -317,11 +294,9 @@ index 7030f92..a27df2c 100644 #ifdef CONFIG_ARCH_OMAP15XX if (cpu_is_omap15xx()) { iotable_init(omap1510_io_desc, ARRAY_SIZE(omap1510_io_desc)); -diff --git a/arch/arm/mach-omap1/irq.c b/arch/arm/mach-omap1/irq.c -index de03c84..8f98b58 100644 --- a/arch/arm/mach-omap1/irq.c +++ b/arch/arm/mach-omap1/irq.c -@@ -137,16 +137,8 @@ static void omap_irq_set_cfg(int irq, int fiq, int priority, int trigger) +@@ -137,16 +137,8 @@ static void omap_irq_set_cfg(int irq, in irq_bank_writel(val, bank, offset); } @@ -374,11 +349,9 @@ index de03c84..8f98b58 100644 else if (cpu_is_omap15xx()) omap_unmask_irq(INT_1510_IH2_IRQ); else if (cpu_is_omap16xx()) -diff --git a/arch/arm/mach-omap1/mcbsp.c b/arch/arm/mach-omap1/mcbsp.c -index 505d98c..3a51cb2 100644 --- a/arch/arm/mach-omap1/mcbsp.c +++ b/arch/arm/mach-omap1/mcbsp.c -@@ -79,29 +79,29 @@ static struct omap_mcbsp_ops omap1_mcbsp_ops = { +@@ -79,29 +79,29 @@ static struct omap_mcbsp_ops omap1_mcbsp .free = omap1_mcbsp_free, }; @@ -419,7 +392,7 @@ index 505d98c..3a51cb2 100644 #endif #ifdef CONFIG_ARCH_OMAP15XX -@@ -172,8 +172,8 @@ static struct omap_mcbsp_platform_data omap16xx_mcbsp_pdata[] = { +@@ -172,8 +172,8 @@ static struct omap_mcbsp_platform_data o int __init omap1_mcbsp_init(void) { @@ -443,8 +416,6 @@ index 505d98c..3a51cb2 100644 if (cpu_is_omap15xx()) omap_mcbsp_register_board_cfg(omap15xx_mcbsp_pdata, -diff --git a/arch/arm/mach-omap1/mux.c b/arch/arm/mach-omap1/mux.c -index 721e0d9..d59899d 100644 --- a/arch/arm/mach-omap1/mux.c +++ b/arch/arm/mach-omap1/mux.c @@ -35,47 +35,28 @@ @@ -515,7 +486,7 @@ index 721e0d9..d59899d 100644 #if defined(CONFIG_ARCH_OMAP15XX) || defined(CONFIG_ARCH_OMAP16XX) static struct pin_config __initdata_or_module omap1xxx_pins[] = { -@@ -438,11 +419,6 @@ int __init_or_module omap1_cfg_reg(const struct pin_config *cfg) +@@ -438,11 +419,6 @@ int __init_or_module omap1_cfg_reg(const printk(" %s (0x%08x) = 0x%08x -> 0x%08x\n", cfg->pull_name, cfg->pull_reg, pull_orig, pull); } @@ -527,7 +498,7 @@ index 721e0d9..d59899d 100644 #endif #ifdef CONFIG_OMAP_MUX_ERRORS -@@ -454,9 +430,9 @@ int __init_or_module omap1_cfg_reg(const struct pin_config *cfg) +@@ -454,9 +430,9 @@ int __init_or_module omap1_cfg_reg(const int __init omap1_mux_init(void) { @@ -540,8 +511,6 @@ index 721e0d9..d59899d 100644 arch_mux_cfg.cfg_reg = omap1_cfg_reg; } -diff --git a/arch/arm/mach-omap1/pm.c b/arch/arm/mach-omap1/pm.c -index 5218943..10f4e4a 100644 --- a/arch/arm/mach-omap1/pm.c +++ b/arch/arm/mach-omap1/pm.c @@ -62,7 +62,7 @@ @@ -723,8 +692,6 @@ index 5218943..10f4e4a 100644 else if (cpu_is_omap16xx()) omap_writel(OMAP1610_IDLECT3_VAL, OMAP1610_IDLECT3); -diff --git a/arch/arm/mach-omap1/pm.h b/arch/arm/mach-omap1/pm.h -index c4f05bd..56a6479 100644 --- a/arch/arm/mach-omap1/pm.h +++ b/arch/arm/mach-omap1/pm.h @@ -98,13 +98,14 @@ @@ -769,7 +736,7 @@ index c4f05bd..56a6479 100644 extern unsigned int omap1510_idle_loop_suspend_sz; extern unsigned int omap1610_idle_loop_suspend_sz; -@@ -155,9 +156,9 @@ extern void omap_serial_wake_trigger(int enable); +@@ -155,9 +156,9 @@ extern void omap_serial_wake_trigger(int #define ULPD_RESTORE(x) omap_writew((ulpd_sleep_save[ULPD_SLEEP_SAVE_##x]), (x)) #define ULPD_SHOW(x) ulpd_sleep_save[ULPD_SLEEP_SAVE_##x] @@ -821,11 +788,9 @@ index c4f05bd..56a6479 100644 #endif }; -diff --git a/arch/arm/mach-omap1/serial.c b/arch/arm/mach-omap1/serial.c -index d496e50..332c516 100644 --- a/arch/arm/mach-omap1/serial.c +++ b/arch/arm/mach-omap1/serial.c -@@ -64,7 +64,6 @@ static void __init omap_serial_reset(struct plat_serial8250_port *p) +@@ -64,7 +64,6 @@ static void __init omap_serial_reset(str static struct plat_serial8250_port serial_platform_data[] = { { @@ -833,7 +798,7 @@ index d496e50..332c516 100644 .mapbase = OMAP_UART1_BASE, .irq = INT_UART1, .flags = UPF_BOOT_AUTOCONF, -@@ -73,7 +72,6 @@ static struct plat_serial8250_port serial_platform_data[] = { +@@ -73,7 +72,6 @@ static struct plat_serial8250_port seria .uartclk = OMAP16XX_BASE_BAUD * 16, }, { @@ -841,7 +806,7 @@ index d496e50..332c516 100644 .mapbase = OMAP_UART2_BASE, .irq = INT_UART2, .flags = UPF_BOOT_AUTOCONF, -@@ -82,7 +80,6 @@ static struct plat_serial8250_port serial_platform_data[] = { +@@ -82,7 +80,6 @@ static struct plat_serial8250_port seria .uartclk = OMAP16XX_BASE_BAUD * 16, }, { @@ -849,7 +814,7 @@ index d496e50..332c516 100644 .mapbase = OMAP_UART3_BASE, .irq = INT_UART3, .flags = UPF_BOOT_AUTOCONF, -@@ -90,7 +87,6 @@ static struct plat_serial8250_port serial_platform_data[] = { +@@ -90,7 +87,6 @@ static struct plat_serial8250_port seria .regshift = 2, .uartclk = OMAP16XX_BASE_BAUD * 16, }, @@ -879,27 +844,6 @@ index d496e50..332c516 100644 } if (cpu_is_omap15xx()) { -@@ -130,9 +119,17 @@ void __init omap_serial_init(void) - serial_platform_data[2].uartclk = OMAP1510_BASE_BAUD * 16; - } - -- for (i = 0; i < OMAP_MAX_NR_PORTS; i++) { -+ for (i = 0; i < ARRAY_SIZE(serial_platform_data); i++) { - unsigned char reg; - -+ /* Static mapping, never released */ -+ serial_platform_data[i].membase = -+ ioremap(serial_platform_data[i].mapbase, SZ_2K); -+ if (!serial_platform_data[i].membase) { -+ printk(KERN_ERR "Could not ioremap uart%i\n", i); -+ continue; -+ } -+ - switch (i) { - case 0: - uart1_ck = clk_get(NULL, "uart1_ck"); -diff --git a/arch/arm/mach-omap1/sleep.S b/arch/arm/mach-omap1/sleep.S -index 22e8568..ef771ce 100644 --- a/arch/arm/mach-omap1/sleep.S +++ b/arch/arm/mach-omap1/sleep.S @@ -1,7 +1,7 @@ @@ -962,11 +906,9 @@ index 22e8568..ef771ce 100644 #ifdef CONFIG_ARCH_OMAP15XX ENTRY(omap1510_cpu_suspend) -diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile -index 8cb1677..6b7702f 100644 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile -@@ -80,6 +80,7 @@ obj-$(CONFIG_MACH_OMAP_4430SDP) += board-4430sdp.o +@@ -80,6 +80,7 @@ obj-$(CONFIG_MACH_OMAP_4430SDP) += boar # Platform specific device init code obj-y += usb-musb.o obj-$(CONFIG_MACH_OMAP2_TUSB6010) += usb-tusb6010.o @@ -974,11 +916,9 @@ index 8cb1677..6b7702f 100644 onenand-$(CONFIG_MTD_ONENAND_OMAP2) := gpmc-onenand.o obj-y += $(onenand-m) $(onenand-y) -diff --git a/arch/arm/mach-omap2/board-2430sdp.c b/arch/arm/mach-omap2/board-2430sdp.c -index 42217b3..e032a33 100644 --- a/arch/arm/mach-omap2/board-2430sdp.c +++ b/arch/arm/mach-omap2/board-2430sdp.c -@@ -221,7 +221,7 @@ static void __init omap_2430sdp_map_io(void) +@@ -221,7 +221,7 @@ static void __init omap_2430sdp_map_io(v MACHINE_START(OMAP_2430SDP, "OMAP2430 sdp2430 board") /* Maintainer: Syed Khasim - Texas Instruments Inc */ .phys_io = 0x48000000, @@ -987,11 +927,9 @@ index 42217b3..e032a33 100644 .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 efaf053..81aabac 100644 --- a/arch/arm/mach-omap2/board-3430sdp.c +++ b/arch/arm/mach-omap2/board-3430sdp.c -@@ -484,6 +484,18 @@ static void enable_board_wakeup_source(void) +@@ -618,6 +618,18 @@ static void enable_board_wakeup_source(v omap_cfg_reg(AF26_34XX_SYS_NIRQ); /* T2 interrupt line (keypad) */ } @@ -1010,15 +948,15 @@ index efaf053..81aabac 100644 static void __init omap_3430sdp_init(void) { omap3430_i2c_init(); -@@ -500,6 +512,7 @@ static void __init omap_3430sdp_init(void) - usb_musb_init(); +@@ -635,6 +647,7 @@ static void __init omap_3430sdp_init(voi board_smc91x_init(); + sdp3430_display_init(); enable_board_wakeup_source(); + usb_ehci_init(&ehci_pdata); } static void __init omap_3430sdp_map_io(void) -@@ -511,7 +524,7 @@ static void __init omap_3430sdp_map_io(void) +@@ -646,7 +659,7 @@ static void __init omap_3430sdp_map_io(v MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board") /* Maintainer: Syed Khasim - Texas Instruments Inc */ .phys_io = 0x48000000, @@ -1027,11 +965,9 @@ index efaf053..81aabac 100644 .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 eb37c40..50a62f2 100644 --- a/arch/arm/mach-omap2/board-4430sdp.c +++ b/arch/arm/mach-omap2/board-4430sdp.c -@@ -52,8 +52,17 @@ static struct omap_board_config_kernel sdp4430_config[] __initdata = { +@@ -52,8 +52,17 @@ static struct omap_board_config_kernel s static void __init gic_init_irq(void) { @@ -1051,7 +987,7 @@ index eb37c40..50a62f2 100644 } static void __init omap_4430sdp_init_irq(void) -@@ -84,7 +93,7 @@ static void __init omap_4430sdp_map_io(void) +@@ -84,7 +93,7 @@ static void __init omap_4430sdp_map_io(v MACHINE_START(OMAP_4430SDP, "OMAP4430 4430SDP board") /* Maintainer: Santosh Shilimkar - Texas Instruments Inc */ .phys_io = 0x48000000, @@ -1060,11 +996,9 @@ index eb37c40..50a62f2 100644 .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 a113228..e8a0e56 100644 --- a/arch/arm/mach-omap2/board-apollon.c +++ b/arch/arm/mach-omap2/board-apollon.c -@@ -333,7 +333,7 @@ static void __init omap_apollon_map_io(void) +@@ -333,7 +333,7 @@ static void __init omap_apollon_map_io(v MACHINE_START(OMAP_APOLLON, "OMAP24xx Apollon") /* Maintainer: Kyungmin Park */ .phys_io = 0x48000000, @@ -1073,11 +1007,9 @@ index a113228..e8a0e56 100644 .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 2e09a1c..1a139c0 100644 --- a/arch/arm/mach-omap2/board-generic.c +++ b/arch/arm/mach-omap2/board-generic.c -@@ -56,7 +56,7 @@ static void __init omap_generic_map_io(void) +@@ -56,7 +56,7 @@ static void __init omap_generic_map_io(v MACHINE_START(OMAP_GENERIC, "Generic OMAP24xx") /* Maintainer: Paul Mundt */ .phys_io = 0x48000000, @@ -1086,8 +1018,6 @@ index 2e09a1c..1a139c0 100644 .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 eaa02d0..86f78f3 100644 --- a/arch/arm/mach-omap2/board-h4.c +++ b/arch/arm/mach-omap2/board-h4.c @@ -376,7 +376,7 @@ static void __init omap_h4_map_io(void) @@ -1099,8 +1029,6 @@ index eaa02d0..86f78f3 100644 .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 d110a7f..4ccc01a 100644 --- a/arch/arm/mach-omap2/board-ldp.c +++ b/arch/arm/mach-omap2/board-ldp.c @@ -399,7 +399,7 @@ static void __init omap_ldp_map_io(void) @@ -1112,11 +1040,9 @@ index d110a7f..4ccc01a 100644 .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 8341632..2f6ccba 100644 --- a/arch/arm/mach-omap2/board-n8x0.c +++ b/arch/arm/mach-omap2/board-n8x0.c -@@ -121,7 +121,7 @@ static void __init n8x0_init_machine(void) +@@ -121,7 +121,7 @@ static void __init n8x0_init_machine(voi MACHINE_START(NOKIA_N800, "Nokia N800") .phys_io = 0x48000000, @@ -1143,11 +1069,9 @@ index 8341632..2f6ccba 100644 .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 70df6b4..9824073 100644 --- a/arch/arm/mach-omap2/board-omap3beagle.c +++ b/arch/arm/mach-omap2/board-omap3beagle.c -@@ -400,6 +400,18 @@ static void __init omap3beagle_flash_init(void) +@@ -400,6 +400,18 @@ static void __init omap3beagle_flash_ini } } @@ -1166,7 +1090,7 @@ index 70df6b4..9824073 100644 static void __init omap3_beagle_init(void) { omap3_beagle_i2c_init(); -@@ -413,6 +425,7 @@ static void __init omap3_beagle_init(void) +@@ -413,6 +425,7 @@ static void __init omap3_beagle_init(voi gpio_direction_output(170, true); usb_musb_init(); @@ -1174,7 +1098,7 @@ index 70df6b4..9824073 100644 omap3beagle_flash_init(); /* Ensure SDRC pins are mux'd for self-refresh */ -@@ -429,7 +442,7 @@ static void __init omap3_beagle_map_io(void) +@@ -429,7 +442,7 @@ static void __init omap3_beagle_map_io(v MACHINE_START(OMAP3_BEAGLE, "OMAP3 Beagle Board") /* Maintainer: Syed Mohammed Khasim - http://beagleboard.org */ .phys_io = 0x48000000, @@ -1183,11 +1107,9 @@ index 70df6b4..9824073 100644 .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 e4ec0c5..9e0b6e6 100644 --- a/arch/arm/mach-omap2/board-omap3evm.c +++ b/arch/arm/mach-omap2/board-omap3evm.c -@@ -297,6 +297,18 @@ static struct platform_device *omap3_evm_devices[] __initdata = { +@@ -297,6 +297,18 @@ static struct platform_device *omap3_evm &omap3evm_smc911x_device, }; @@ -1216,7 +1138,7 @@ index e4ec0c5..9e0b6e6 100644 ads7846_dev_init(); } -@@ -324,7 +339,7 @@ static void __init omap3_evm_map_io(void) +@@ -324,7 +339,7 @@ static void __init omap3_evm_map_io(void MACHINE_START(OMAP3EVM, "OMAP3 EVM") /* Maintainer: Syed Mohammed Khasim - Texas Instruments */ .phys_io = 0x48000000, @@ -1225,11 +1147,9 @@ index e4ec0c5..9e0b6e6 100644 .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 7f6bf87..82b2486 100644 --- a/arch/arm/mach-omap2/board-omap3pandora.c +++ b/arch/arm/mach-omap2/board-omap3pandora.c -@@ -387,6 +387,18 @@ static struct platform_device *omap3pandora_devices[] __initdata = { +@@ -387,6 +387,18 @@ static struct platform_device *omap3pand &pandora_keys_gpio, }; @@ -1248,7 +1168,7 @@ index 7f6bf87..82b2486 100644 static void __init omap3pandora_init(void) { omap3pandora_i2c_init(); -@@ -396,6 +408,7 @@ static void __init omap3pandora_init(void) +@@ -396,6 +408,7 @@ static void __init omap3pandora_init(voi spi_register_board_info(omap3pandora_spi_board_info, ARRAY_SIZE(omap3pandora_spi_board_info)); omap3pandora_ads7846_init(); @@ -1256,7 +1176,7 @@ index 7f6bf87..82b2486 100644 pandora_keys_gpio_init(); usb_musb_init(); -@@ -412,7 +425,7 @@ static void __init omap3pandora_map_io(void) +@@ -412,7 +425,7 @@ static void __init omap3pandora_map_io(v MACHINE_START(OMAP3_PANDORA, "Pandora Handheld Console") .phys_io = 0x48000000, @@ -1265,11 +1185,9 @@ index 7f6bf87..82b2486 100644 .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 9917d2f..d50a3f0 100644 --- a/arch/arm/mach-omap2/board-overo.c +++ b/arch/arm/mach-omap2/board-overo.c -@@ -384,6 +384,18 @@ static struct platform_device *overo_devices[] __initdata = { +@@ -384,6 +384,18 @@ static struct platform_device *overo_dev &overo_lcd_device, }; @@ -1320,11 +1238,9 @@ index 9917d2f..d50a3f0 100644 .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 f9196c3..c973812 100644 --- a/arch/arm/mach-omap2/board-rx51.c +++ b/arch/arm/mach-omap2/board-rx51.c -@@ -85,7 +85,7 @@ static void __init rx51_map_io(void) +@@ -84,7 +84,7 @@ static void __init rx51_map_io(void) MACHINE_START(NOKIA_RX51, "Nokia RX-51 board") /* Maintainer: Lauri Leukkunen */ .phys_io = 0x48000000, @@ -1333,11 +1249,9 @@ index f9196c3..c973812 100644 .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 fd3369d..48bd2af 100644 --- a/arch/arm/mach-omap2/board-zoom2.c +++ b/arch/arm/mach-omap2/board-zoom2.c -@@ -283,7 +283,7 @@ static void __init omap_zoom2_map_io(void) +@@ -282,7 +282,7 @@ static void __init omap_zoom2_map_io(voi MACHINE_START(OMAP_ZOOM2, "OMAP Zoom2 board") .phys_io = 0x48000000, @@ -1346,8 +1260,6 @@ index fd3369d..48bd2af 100644 .boot_params = 0x80000100, .map_io = omap_zoom2_map_io, .init_irq = omap_zoom2_init_irq, -diff --git a/arch/arm/mach-omap2/cm.h b/arch/arm/mach-omap2/cm.h -index cfd0b72..a2fcfcc 100644 --- a/arch/arm/mach-omap2/cm.h +++ b/arch/arm/mach-omap2/cm.h @@ -17,11 +17,11 @@ @@ -1365,8 +1277,6 @@ index cfd0b72..a2fcfcc 100644 /* * Architecture-specific global CM registers -diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c -index a98201c..71d5568 100644 --- a/arch/arm/mach-omap2/id.c +++ b/arch/arm/mach-omap2/id.c @@ -28,6 +28,7 @@ @@ -1377,7 +1287,7 @@ index a98201c..71d5568 100644 unsigned int omap_rev(void) { -@@ -155,12 +156,37 @@ void __init omap24xx_check_revision(void) +@@ -155,12 +156,37 @@ void __init omap24xx_check_revision(void pr_info("\n"); } @@ -1417,7 +1327,7 @@ index a98201c..71d5568 100644 /* * We cannot access revision registers on ES1.0. -@@ -170,7 +196,7 @@ void __init omap34xx_check_revision(void) +@@ -170,7 +196,7 @@ void __init omap34xx_check_revision(void cpuid = read_cpuid(CPUID_ID); if ((((cpuid >> 4) & 0xfff) == 0xc08) && ((cpuid & 0xf) == 0x0)) { omap_revision = OMAP3430_REV_ES1_0; @@ -1426,7 +1336,7 @@ index a98201c..71d5568 100644 } /* -@@ -183,33 +209,111 @@ void __init omap34xx_check_revision(void) +@@ -183,33 +209,111 @@ void __init omap34xx_check_revision(void hawkeye = (idcode >> 12) & 0xffff; rev = (idcode >> 28) & 0xff; @@ -1561,11 +1471,9 @@ index a98201c..71d5568 100644 else if (cpu_is_omap44xx()) { printk(KERN_INFO "FIXME: CPU revision = OMAP4430\n"); return; -diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c -index e3a3bad..fc62953 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c -@@ -203,6 +203,24 @@ static struct map_desc omap44xx_io_desc[] __initdata = { +@@ -204,6 +204,24 @@ static struct map_desc omap44xx_io_desc[ .type = MT_DEVICE, }, { @@ -1590,8 +1498,6 @@ index e3a3bad..fc62953 100644 .virtual = L4_PER_44XX_VIRT, .pfn = __phys_to_pfn(L4_PER_44XX_PHYS), .length = L4_PER_44XX_SIZE, -diff --git a/arch/arm/mach-omap2/irq.c b/arch/arm/mach-omap2/irq.c -index b828638..1db121f 100644 --- a/arch/arm/mach-omap2/irq.c +++ b/arch/arm/mach-omap2/irq.c @@ -178,12 +178,20 @@ void __init omap_init_irq(void) @@ -1617,8 +1523,6 @@ index b828638..1db121f 100644 omap_irq_bank_init_one(bank); -diff --git a/arch/arm/mach-omap2/omap-smp.c b/arch/arm/mach-omap2/omap-smp.c -index 48ee295..a1b618c 100644 --- a/arch/arm/mach-omap2/omap-smp.c +++ b/arch/arm/mach-omap2/omap-smp.c @@ -26,11 +26,11 @@ @@ -1645,7 +1549,7 @@ index 48ee295..a1b618c 100644 trace_hardirqs_off(); /* -@@ -54,7 +56,10 @@ void __cpuinit platform_secondary_init(unsigned int cpu) +@@ -54,7 +56,10 @@ void __cpuinit platform_secondary_init(u * for us: do so */ @@ -1657,7 +1561,7 @@ index 48ee295..a1b618c 100644 /* * Synchronise with the boot thread. -@@ -79,7 +84,7 @@ int __cpuinit boot_secondary(unsigned int cpu, struct task_struct *idle) +@@ -79,7 +84,7 @@ int __cpuinit boot_secondary(unsigned in * the AuxCoreBoot1 register is updated with cpu state * A barrier is added to ensure that write buffer is drained */ @@ -1666,7 +1570,7 @@ index 48ee295..a1b618c 100644 smp_wmb(); timeout = jiffies + (1 * HZ); -@@ -104,7 +109,7 @@ static void __init wakeup_secondary(void) +@@ -104,7 +109,7 @@ static void __init wakeup_secondary(void * A barrier is added to ensure that write buffer is drained */ __raw_writel(virt_to_phys(omap_secondary_startup), \ @@ -1675,7 +1579,7 @@ index 48ee295..a1b618c 100644 smp_wmb(); /* -@@ -130,6 +135,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus) +@@ -130,6 +135,7 @@ void __init smp_prepare_cpus(unsigned in { unsigned int ncores = get_core_count(); unsigned int cpu = smp_processor_id(); @@ -1683,7 +1587,7 @@ index 48ee295..a1b618c 100644 int i; /* sanity check */ -@@ -161,6 +167,16 @@ void __init smp_prepare_cpus(unsigned int max_cpus) +@@ -161,6 +167,16 @@ void __init smp_prepare_cpus(unsigned in for (i = 0; i < max_cpus; i++) set_cpu_present(i, true); @@ -1700,11 +1604,9 @@ index 48ee295..a1b618c 100644 if (max_cpus > 1) { /* * Enable the local timer or broadcast device for the -diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c -index d2e0f1c..8ac8798 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c -@@ -496,6 +496,7 @@ static void __iomem *_find_mpu_rt_base(struct omap_hwmod *oh, u8 index) +@@ -496,6 +496,7 @@ static void __iomem *_find_mpu_rt_base(s struct omap_hwmod_addr_space *mem; int i; int found = 0; @@ -1712,7 +1614,7 @@ index d2e0f1c..8ac8798 100644 if (!oh || oh->slaves_cnt == 0) return NULL; -@@ -509,16 +510,20 @@ static void __iomem *_find_mpu_rt_base(struct omap_hwmod *oh, u8 index) +@@ -509,16 +510,20 @@ static void __iomem *_find_mpu_rt_base(s } } @@ -1739,7 +1641,7 @@ index d2e0f1c..8ac8798 100644 } /** -@@ -1148,6 +1153,7 @@ int omap_hwmod_unregister(struct omap_hwmod *oh) +@@ -1148,6 +1153,7 @@ int omap_hwmod_unregister(struct omap_hw pr_debug("omap_hwmod: %s: unregistering\n", oh->name); mutex_lock(&omap_hwmod_mutex); @@ -1747,8 +1649,6 @@ index d2e0f1c..8ac8798 100644 list_del(&oh->node); mutex_unlock(&omap_hwmod_mutex); -diff --git a/arch/arm/mach-omap2/pm-debug.c b/arch/arm/mach-omap2/pm-debug.c -index 2fc4d6a..deed1dd 100644 --- a/arch/arm/mach-omap2/pm-debug.c +++ b/arch/arm/mach-omap2/pm-debug.c @@ -51,7 +51,8 @@ int omap2_pm_debug; @@ -1761,8 +1661,6 @@ index 2fc4d6a..deed1dd 100644 static int __init pm_dbg_init(void); -diff --git a/arch/arm/mach-omap2/prm.h b/arch/arm/mach-omap2/prm.h -index 03c467c..a117f85 100644 --- a/arch/arm/mach-omap2/prm.h +++ b/arch/arm/mach-omap2/prm.h @@ -17,11 +17,11 @@ @@ -1780,8 +1678,6 @@ index 03c467c..a117f85 100644 /* * Architecture-specific global PRM registers -diff --git a/arch/arm/mach-omap2/sdrc.h b/arch/arm/mach-omap2/sdrc.h -index 0837eda..345183d 100644 --- a/arch/arm/mach-omap2/sdrc.h +++ b/arch/arm/mach-omap2/sdrc.h @@ -48,9 +48,12 @@ static inline u32 sms_read_reg(u16 reg) @@ -1800,8 +1696,6 @@ index 0837eda..345183d 100644 #endif /* __ASSEMBLER__ */ #endif -diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c -index ae21868..7f722a7 100644 --- a/arch/arm/mach-omap2/serial.c +++ b/arch/arm/mach-omap2/serial.c @@ -73,7 +73,6 @@ static LIST_HEAD(uart_list); @@ -1812,7 +1706,7 @@ index ae21868..7f722a7 100644 .mapbase = OMAP_UART1_BASE, .irq = 72, .flags = UPF_BOOT_AUTOCONF, -@@ -87,7 +86,6 @@ static struct plat_serial8250_port serial_platform_data0[] = { +@@ -87,7 +86,6 @@ static struct plat_serial8250_port seria static struct plat_serial8250_port serial_platform_data1[] = { { @@ -1820,7 +1714,7 @@ index ae21868..7f722a7 100644 .mapbase = OMAP_UART2_BASE, .irq = 73, .flags = UPF_BOOT_AUTOCONF, -@@ -101,7 +99,6 @@ static struct plat_serial8250_port serial_platform_data1[] = { +@@ -101,7 +99,6 @@ static struct plat_serial8250_port seria static struct plat_serial8250_port serial_platform_data2[] = { { @@ -1828,15 +1722,7 @@ index ae21868..7f722a7 100644 .mapbase = OMAP_UART3_BASE, .irq = 74, .flags = UPF_BOOT_AUTOCONF, -@@ -110,7 +107,6 @@ static struct plat_serial8250_port serial_platform_data2[] = { - .uartclk = OMAP24XX_BASE_BAUD * 16, - }, { - #ifdef CONFIG_ARCH_OMAP4 -- .membase = OMAP2_IO_ADDRESS(OMAP_UART4_BASE), - .mapbase = OMAP_UART4_BASE, - .irq = 70, - .flags = UPF_BOOT_AUTOCONF, -@@ -126,7 +122,6 @@ static struct plat_serial8250_port serial_platform_data2[] = { +@@ -116,7 +113,6 @@ static struct plat_serial8250_port seria #ifdef CONFIG_ARCH_OMAP4 static struct plat_serial8250_port serial_platform_data3[] = { { @@ -1844,7 +1730,7 @@ index ae21868..7f722a7 100644 .mapbase = OMAP_UART4_BASE, .irq = 70, .flags = UPF_BOOT_AUTOCONF, -@@ -549,7 +544,7 @@ static inline void omap_uart_idle_init(struct omap_uart_state *uart) {} +@@ -539,7 +535,7 @@ static inline void omap_uart_idle_init(s #define DEV_CREATE_FILE(dev, attr) #endif /* CONFIG_PM */ @@ -1853,7 +1739,7 @@ index ae21868..7f722a7 100644 { .pdev = { .name = "serial8250", -@@ -599,12 +594,22 @@ void __init omap_serial_early_init(void) +@@ -589,12 +585,22 @@ void __init omap_serial_early_init(void) * if not needed. */ @@ -1877,7 +1763,7 @@ index ae21868..7f722a7 100644 sprintf(name, "uart%d_ick", i+1); uart->ick = clk_get(NULL, name); if (IS_ERR(uart->ick)) { -@@ -641,7 +646,7 @@ void __init omap_serial_init(void) +@@ -631,7 +637,7 @@ void __init omap_serial_init(void) { int i; @@ -1886,8 +1772,6 @@ index ae21868..7f722a7 100644 struct omap_uart_state *uart = &omap_uart[i]; struct platform_device *pdev = &uart->pdev; struct device *dev = &pdev->dev; -diff --git a/arch/arm/mach-omap2/sram242x.S b/arch/arm/mach-omap2/sram242x.S -index 9b62208..92e6e1a 100644 --- a/arch/arm/mach-omap2/sram242x.S +++ b/arch/arm/mach-omap2/sram242x.S @@ -128,7 +128,7 @@ omap242x_sdi_prcm_voltctrl: @@ -1908,8 +1792,6 @@ index 9b62208..92e6e1a 100644 ENTRY(omap242x_sram_reprogram_sdrc_sz) .word . - omap242x_sram_reprogram_sdrc -diff --git a/arch/arm/mach-omap2/sram243x.S b/arch/arm/mach-omap2/sram243x.S -index df2cd92..ab49736 100644 --- a/arch/arm/mach-omap2/sram243x.S +++ b/arch/arm/mach-omap2/sram243x.S @@ -128,7 +128,7 @@ omap243x_sdi_prcm_voltctrl: @@ -1930,11 +1812,9 @@ index df2cd92..ab49736 100644 ENTRY(omap243x_sram_reprogram_sdrc_sz) .word . - omap243x_sram_reprogram_sdrc -diff --git a/arch/arm/mach-omap2/timer-gp.c b/arch/arm/mach-omap2/timer-gp.c -index e2338c0..cd72970 100644 --- a/arch/arm/mach-omap2/timer-gp.c +++ b/arch/arm/mach-omap2/timer-gp.c -@@ -231,7 +231,8 @@ static void __init omap2_gp_clocksource_init(void) +@@ -231,7 +231,8 @@ static void __init omap2_gp_clocksource_ static void __init omap2_gp_timer_init(void) { #ifdef CONFIG_LOCAL_TIMERS @@ -1944,9 +1824,6 @@ index e2338c0..cd72970 100644 #endif omap_dm_timer_init(); -diff --git a/arch/arm/mach-omap2/usb-ehci.c b/arch/arm/mach-omap2/usb-ehci.c -new file mode 100644 -index 0000000..a29c8ca --- /dev/null +++ b/arch/arm/mach-omap2/usb-ehci.c @@ -0,0 +1,192 @@ @@ -2142,11 +2019,9 @@ index 0000000..a29c8ca + +#endif /* CONFIG_USB_EHCI_HCD */ + -diff --git a/arch/arm/plat-omap/common.c b/arch/arm/plat-omap/common.c -index 3a4768d..1aa58d2 100644 --- a/arch/arm/plat-omap/common.c +++ b/arch/arm/plat-omap/common.c -@@ -224,12 +224,12 @@ static void __init __omap2_set_globals(struct omap_globals *omap2_globals) +@@ -224,12 +224,12 @@ static void __init __omap2_set_globals(s static struct omap_globals omap242x_globals = { .class = OMAP242X_CLASS, @@ -2218,8 +2093,6 @@ index 3a4768d..1aa58d2 100644 }; void __init omap2_set_globals_443x(void) -diff --git a/arch/arm/plat-omap/devices.c b/arch/arm/plat-omap/devices.c -index a64b692..d2f5475 100644 --- a/arch/arm/plat-omap/devices.c +++ b/arch/arm/plat-omap/devices.c @@ -113,17 +113,17 @@ static void omap_init_kp(void) @@ -2251,11 +2124,9 @@ index a64b692..d2f5475 100644 } else if (machine_is_omap_h4()) { omap_cfg_reg(T19_24XX_KBR0); omap_cfg_reg(R19_24XX_KBR1); -diff --git a/arch/arm/plat-omap/dma.c b/arch/arm/plat-omap/dma.c -index 0eb676d..034686d 100644 --- a/arch/arm/plat-omap/dma.c +++ b/arch/arm/plat-omap/dma.c -@@ -2347,40 +2347,46 @@ EXPORT_SYMBOL(omap_stop_lcd_dma); +@@ -2359,40 +2359,46 @@ EXPORT_SYMBOL(omap_stop_lcd_dma); static int __init omap_init_dma(void) { @@ -2310,7 +2181,7 @@ index 0eb676d..034686d 100644 } } -@@ -2454,7 +2460,7 @@ static int __init omap_init_dma(void) +@@ -2466,7 +2472,7 @@ static int __init omap_init_dma(void) for (i = 0; i < ch; i++) free_irq(omap1_dma_irq[i], (void *) (i + 1)); @@ -2319,7 +2190,7 @@ index 0eb676d..034686d 100644 } } } -@@ -2496,11 +2502,19 @@ static int __init omap_init_dma(void) +@@ -2508,11 +2514,19 @@ static int __init omap_init_dma(void) "(error %d)\n", r); for (i = 0; i < dma_chan_count; i++) free_irq(omap1_dma_irq[i], (void *) (i + 1)); @@ -2340,11 +2211,9 @@ index 0eb676d..034686d 100644 } arch_initcall(omap_init_dma); -diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c -index d325b54..e4e848e 100644 --- a/arch/arm/plat-omap/dmtimer.c +++ b/arch/arm/plat-omap/dmtimer.c -@@ -742,16 +742,17 @@ EXPORT_SYMBOL_GPL(omap_dm_timers_active); +@@ -742,16 +742,17 @@ EXPORT_SYMBOL_GPL(omap_dm_timers_active) int __init omap_dm_timer_init(void) { struct omap_dm_timer *timer; @@ -2381,8 +2250,6 @@ index d325b54..e4e848e 100644 #if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3) || \ defined(CONFIG_ARCH_OMAP4) if (cpu_class_is_omap2()) { -diff --git a/arch/arm/plat-omap/gpio.c b/arch/arm/plat-omap/gpio.c -index 71ebd7f..14c3506 100644 --- a/arch/arm/plat-omap/gpio.c +++ b/arch/arm/plat-omap/gpio.c @@ -31,7 +31,7 @@ @@ -2428,7 +2295,19 @@ index 71ebd7f..14c3506 100644 -#define OMAP730_GPIO_INT_CONTROL 0x0c -#define OMAP730_GPIO_INT_MASK 0x10 -#define OMAP730_GPIO_INT_STATUS 0x14 -- ++#define OMAP7XX_GPIO1_BASE 0xfffbc000 ++#define OMAP7XX_GPIO2_BASE 0xfffbc800 ++#define OMAP7XX_GPIO3_BASE 0xfffbd000 ++#define OMAP7XX_GPIO4_BASE 0xfffbd800 ++#define OMAP7XX_GPIO5_BASE 0xfffbe000 ++#define OMAP7XX_GPIO6_BASE 0xfffbe800 ++#define OMAP7XX_GPIO_DATA_INPUT 0x00 ++#define OMAP7XX_GPIO_DATA_OUTPUT 0x04 ++#define OMAP7XX_GPIO_DIR_CONTROL 0x08 ++#define OMAP7XX_GPIO_INT_CONTROL 0x0c ++#define OMAP7XX_GPIO_INT_MASK 0x10 ++#define OMAP7XX_GPIO_INT_STATUS 0x14 + -/* - * OMAP850 specific GPIO registers - */ @@ -2446,19 +2325,6 @@ index 71ebd7f..14c3506 100644 -#define OMAP850_GPIO_INT_STATUS 0x14 - -#define OMAP1_MPUIO_VBASE OMAP1_IO_ADDRESS(OMAP1_MPUIO_BASE) -+#define OMAP7XX_GPIO1_BASE 0xfffbc000 -+#define OMAP7XX_GPIO2_BASE 0xfffbc800 -+#define OMAP7XX_GPIO3_BASE 0xfffbd000 -+#define OMAP7XX_GPIO4_BASE 0xfffbd800 -+#define OMAP7XX_GPIO5_BASE 0xfffbe000 -+#define OMAP7XX_GPIO6_BASE 0xfffbe800 -+#define OMAP7XX_GPIO_DATA_INPUT 0x00 -+#define OMAP7XX_GPIO_DATA_OUTPUT 0x04 -+#define OMAP7XX_GPIO_DIR_CONTROL 0x08 -+#define OMAP7XX_GPIO_INT_CONTROL 0x0c -+#define OMAP7XX_GPIO_INT_MASK 0x10 -+#define OMAP7XX_GPIO_INT_STATUS 0x14 -+ +#define OMAP1_MPUIO_VBASE OMAP1_MPUIO_BASE /* @@ -2468,16 +2334,17 @@ index 71ebd7f..14c3506 100644 -#define OMAP242X_GPIO2_BASE OMAP2_IO_ADDRESS(0x4801a000) -#define OMAP242X_GPIO3_BASE OMAP2_IO_ADDRESS(0x4801c000) -#define OMAP242X_GPIO4_BASE OMAP2_IO_ADDRESS(0x4801e000) -+#define OMAP242X_GPIO1_BASE 0x48018000 -+#define OMAP242X_GPIO2_BASE 0x4801a000 -+#define OMAP242X_GPIO3_BASE 0x4801c000 -+#define OMAP242X_GPIO4_BASE 0x4801e000 - +- -#define OMAP243X_GPIO1_BASE OMAP2_IO_ADDRESS(0x4900C000) -#define OMAP243X_GPIO2_BASE OMAP2_IO_ADDRESS(0x4900E000) -#define OMAP243X_GPIO3_BASE OMAP2_IO_ADDRESS(0x49010000) -#define OMAP243X_GPIO4_BASE OMAP2_IO_ADDRESS(0x49012000) -#define OMAP243X_GPIO5_BASE OMAP2_IO_ADDRESS(0x480B6000) ++#define OMAP242X_GPIO1_BASE 0x48018000 ++#define OMAP242X_GPIO2_BASE 0x4801a000 ++#define OMAP242X_GPIO3_BASE 0x4801c000 ++#define OMAP242X_GPIO4_BASE 0x4801e000 ++ +#define OMAP243X_GPIO1_BASE 0x4900C000 +#define OMAP243X_GPIO2_BASE 0x4900E000 +#define OMAP243X_GPIO3_BASE 0x49010000 @@ -2688,16 +2555,7 @@ index 71ebd7f..14c3506 100644 METHOD_GPIO_24XX }, }; -@@ -373,7 +373,7 @@ static inline int gpio_valid(int gpio) - - static int check_gpio(int gpio) - { -- if (unlikely(gpio_valid(gpio)) < 0) { -+ if (unlikely(gpio_valid(gpio) < 0)) { - printk(KERN_ERR "omap-gpio: invalid GPIO %d\n", gpio); - dump_stack(); - return -1; -@@ -402,14 +402,9 @@ static void _set_gpio_direction(struct gpio_bank *bank, int gpio, int is_input) +@@ -402,14 +402,9 @@ static void _set_gpio_direction(struct g reg += OMAP1610_GPIO_DIRECTION; break; #endif @@ -2715,7 +2573,7 @@ index 71ebd7f..14c3506 100644 break; #endif #if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) -@@ -469,19 +464,9 @@ static void _set_gpio_dataout(struct gpio_bank *bank, int gpio, int enable) +@@ -469,19 +464,9 @@ static void _set_gpio_dataout(struct gpi l = 1 << gpio; break; #endif @@ -2738,7 +2596,7 @@ index 71ebd7f..14c3506 100644 l = __raw_readl(reg); if (enable) l |= 1 << gpio; -@@ -537,14 +522,9 @@ static int _get_gpio_datain(struct gpio_bank *bank, int gpio) +@@ -537,14 +522,9 @@ static int _get_gpio_datain(struct gpio_ reg += OMAP1610_GPIO_DATAIN; break; #endif @@ -2756,7 +2614,7 @@ index 71ebd7f..14c3506 100644 break; #endif #if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) -@@ -588,14 +568,9 @@ static int _get_gpio_dataout(struct gpio_bank *bank, int gpio) +@@ -588,14 +568,9 @@ static int _get_gpio_dataout(struct gpio reg += OMAP1610_GPIO_DATAOUT; break; #endif @@ -2774,7 +2632,7 @@ index 71ebd7f..14c3506 100644 break; #endif #if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) || \ -@@ -797,21 +772,9 @@ static int _set_gpio_triggering(struct gpio_bank *bank, int gpio, int trigger) +@@ -797,21 +772,9 @@ static int _set_gpio_triggering(struct g __raw_writel(1 << gpio, bank->base + OMAP1610_GPIO_CLEAR_WAKEUPENA); break; #endif @@ -2799,7 +2657,7 @@ index 71ebd7f..14c3506 100644 l = __raw_readl(reg); if (trigger & IRQ_TYPE_EDGE_RISING) l |= 1 << gpio; -@@ -897,14 +860,9 @@ static void _clear_gpio_irqbank(struct gpio_bank *bank, int gpio_mask) +@@ -897,14 +860,9 @@ static void _clear_gpio_irqbank(struct g reg += OMAP1610_GPIO_IRQSTATUS1; break; #endif @@ -2817,7 +2675,7 @@ index 71ebd7f..14c3506 100644 break; #endif #if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) -@@ -971,16 +929,9 @@ static u32 _get_gpio_irqbank_mask(struct gpio_bank *bank) +@@ -971,16 +929,9 @@ static u32 _get_gpio_irqbank_mask(struct mask = 0xffff; break; #endif @@ -2837,7 +2695,7 @@ index 71ebd7f..14c3506 100644 mask = 0xffffffff; inv = 1; break; -@@ -1044,19 +995,9 @@ static void _enable_gpio_irqbank(struct gpio_bank *bank, int gpio_mask, int enab +@@ -1044,19 +995,9 @@ static void _enable_gpio_irqbank(struct l = gpio_mask; break; #endif @@ -2860,7 +2718,7 @@ index 71ebd7f..14c3506 100644 l = __raw_readl(reg); if (enable) l &= ~(gpio_mask); -@@ -1249,13 +1190,9 @@ static void gpio_irq_handler(unsigned int irq, struct irq_desc *desc) +@@ -1249,13 +1190,9 @@ static void gpio_irq_handler(unsigned in if (bank->method == METHOD_GPIO_1610) isr_reg = bank->base + OMAP1610_GPIO_IRQSTATUS1; #endif @@ -2877,7 +2735,7 @@ index 71ebd7f..14c3506 100644 #endif #if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) if (bank->method == METHOD_GPIO_24XX) -@@ -1524,11 +1461,8 @@ static int gpio_is_input(struct gpio_bank *bank, int mask) +@@ -1524,11 +1461,8 @@ static int gpio_is_input(struct gpio_ban case METHOD_GPIO_1610: reg += OMAP1610_GPIO_DIRECTION; break; @@ -3047,7 +2905,7 @@ index 71ebd7f..14c3506 100644 return 0; } -@@ -2160,8 +2090,7 @@ static int dbg_gpio_show(struct seq_file *s, void *unused) +@@ -2160,8 +2090,7 @@ static int dbg_gpio_show(struct seq_file if (bank_is_mpuio(bank)) gpio = OMAP_MPUIO(0); @@ -3057,8 +2915,6 @@ index 71ebd7f..14c3506 100644 bankwidth = 32; for (j = 0; j < bankwidth; j++, gpio++, mask <<= 1) { -diff --git a/arch/arm/plat-omap/include/mach/control.h b/arch/arm/plat-omap/include/mach/control.h -index 826d317..fdb6300 100644 --- a/arch/arm/plat-omap/include/mach/control.h +++ b/arch/arm/plat-omap/include/mach/control.h @@ -20,15 +20,18 @@ @@ -3127,8 +2983,6 @@ index 826d317..fdb6300 100644 #ifndef __ASSEMBLY__ #if defined(CONFIG_ARCH_OMAP2) || defined(CONFIG_ARCH_OMAP3) || \ defined(CONFIG_ARCH_OMAP4) -diff --git a/arch/arm/plat-omap/include/mach/cpu.h b/arch/arm/plat-omap/include/mach/cpu.h -index f129efb..7cb0556 100644 --- a/arch/arm/plat-omap/include/mach/cpu.h +++ b/arch/arm/plat-omap/include/mach/cpu.h @@ -30,6 +30,8 @@ @@ -3252,8 +3106,6 @@ index f129efb..7cb0556 100644 +OMAP3_HAS_FEATURE(isp, ISP) + #endif -diff --git a/arch/arm/plat-omap/include/mach/debug-macro.S b/arch/arm/plat-omap/include/mach/debug-macro.S -index ac24050..63bb06d 100644 --- a/arch/arm/plat-omap/include/mach/debug-macro.S +++ b/arch/arm/plat-omap/include/mach/debug-macro.S @@ -27,7 +27,7 @@ @@ -3274,8 +3126,6 @@ index ac24050..63bb06d 100644 orr \rx, \rx, #0x0006a000 #ifdef CONFIG_OMAP_LL_DEBUG_UART2 add \rx, \rx, #0x00002000 @ UART 2 -diff --git a/arch/arm/plat-omap/include/mach/entry-macro.S b/arch/arm/plat-omap/include/mach/entry-macro.S -index a559299..2aea566 100644 --- a/arch/arm/plat-omap/include/mach/entry-macro.S +++ b/arch/arm/plat-omap/include/mach/entry-macro.S @@ -17,11 +17,11 @@ @@ -3315,8 +3165,6 @@ index a559299..2aea566 100644 /* * The interrupt numbering scheme is defined in the * interrupt controller spec. To wit: -diff --git a/arch/arm/plat-omap/include/mach/hardware.h b/arch/arm/plat-omap/include/mach/hardware.h -index 26c1fbf..99c4241 100644 --- a/arch/arm/plat-omap/include/mach/hardware.h +++ b/arch/arm/plat-omap/include/mach/hardware.h @@ -280,7 +280,7 @@ @@ -3328,8 +3176,6 @@ index 26c1fbf..99c4241 100644 #include "omap1510.h" #include "omap16xx.h" #include "omap24xx.h" -diff --git a/arch/arm/plat-omap/include/mach/io.h b/arch/arm/plat-omap/include/mach/io.h -index 8d32df3..7e5319f 100644 --- a/arch/arm/plat-omap/include/mach/io.h +++ b/arch/arm/plat-omap/include/mach/io.h @@ -63,8 +63,24 @@ @@ -3434,13 +3280,14 @@ index 8d32df3..7e5319f 100644 -#define L4_EMU_34XX_PHYS L4_EMU_34XX_BASE /* 0x54000000 */ -#define L4_EMU_34XX_VIRT 0xe4000000 -#define L4_EMU_34XX_SIZE SZ_64M +- +-#define OMAP34XX_GPMC_PHYS OMAP34XX_GPMC_BASE /* 0x6E000000 */ +-#define OMAP34XX_GPMC_VIRT 0xFE000000 +#define L4_EMU_34XX_PHYS L4_EMU_34XX_BASE + /* 0x54000000 --> 0xfe800000 */ +#define L4_EMU_34XX_VIRT (L4_EMU_34XX_PHYS + OMAP2_EMU_IO_OFFSET) +#define L4_EMU_34XX_SIZE SZ_8M - --#define OMAP34XX_GPMC_PHYS OMAP34XX_GPMC_BASE /* 0x6E000000 */ --#define OMAP34XX_GPMC_VIRT 0xFE000000 ++ +#define OMAP34XX_GPMC_PHYS OMAP34XX_GPMC_BASE + /* 0x6e000000 --> 0xfe000000 */ +#define OMAP34XX_GPMC_VIRT (OMAP34XX_GPMC_PHYS + OMAP2_L3_IO_OFFSET) @@ -3526,8 +3373,6 @@ index 8d32df3..7e5319f 100644 /* * ---------------------------------------------------------------------------- * Omap specific register access -diff --git a/arch/arm/plat-omap/include/mach/irqs.h b/arch/arm/plat-omap/include/mach/irqs.h -index 28a1650..6a6d028 100644 --- a/arch/arm/plat-omap/include/mach/irqs.h +++ b/arch/arm/plat-omap/include/mach/irqs.h @@ -86,49 +86,26 @@ @@ -3775,8 +3620,6 @@ index 28a1650..6a6d028 100644 #define INT_24XX_SYS_NIRQ 7 #define INT_24XX_SDMA_IRQ0 12 -diff --git a/arch/arm/plat-omap/include/mach/mcbsp.h b/arch/arm/plat-omap/include/mach/mcbsp.h -index e0d6eca..7e9cae3 100644 --- a/arch/arm/plat-omap/include/mach/mcbsp.h +++ b/arch/arm/plat-omap/include/mach/mcbsp.h @@ -30,8 +30,8 @@ @@ -3799,8 +3642,6 @@ index e0d6eca..7e9cae3 100644 #define OMAP_MCBSP_REG_DRR2 0x00 #define OMAP_MCBSP_REG_DRR1 0x02 -diff --git a/arch/arm/plat-omap/include/mach/mux.h b/arch/arm/plat-omap/include/mach/mux.h -index 0f49d2d..f3c1d8a 100644 --- a/arch/arm/plat-omap/include/mach/mux.h +++ b/arch/arm/plat-omap/include/mach/mux.h @@ -51,23 +51,13 @@ @@ -3953,8 +3794,6 @@ index 0f49d2d..f3c1d8a 100644 enum omap1xxx_index { /* UART1 (BT_UART_GATING)*/ UART1_TX = 0, -diff --git a/arch/arm/plat-omap/include/mach/omap34xx.h b/arch/arm/plat-omap/include/mach/omap34xx.h -index f8d186a..4655707 100644 --- a/arch/arm/plat-omap/include/mach/omap34xx.h +++ b/arch/arm/plat-omap/include/mach/omap34xx.h @@ -74,8 +74,12 @@ @@ -3971,8 +3810,6 @@ index f8d186a..4655707 100644 #define OMAP34XX_MAILBOX_BASE (L4_34XX_BASE + 0x94000) -diff --git a/arch/arm/plat-omap/include/mach/omap44xx.h b/arch/arm/plat-omap/include/mach/omap44xx.h -index b3ba5ac..3361897 100644 --- a/arch/arm/plat-omap/include/mach/omap44xx.h +++ b/arch/arm/plat-omap/include/mach/omap44xx.h @@ -22,6 +22,9 @@ @@ -4000,9 +3837,6 @@ index b3ba5ac..3361897 100644 #endif /* __ASM_ARCH_OMAP44XX_H */ -diff --git a/arch/arm/plat-omap/include/mach/omap7xx.h b/arch/arm/plat-omap/include/mach/omap7xx.h -new file mode 100644 -index 0000000..53f5241 --- /dev/null +++ b/arch/arm/plat-omap/include/mach/omap7xx.h @@ -0,0 +1,104 @@ @@ -4110,8 +3944,6 @@ index 0000000..53f5241 + +#endif /* __ASM_ARCH_OMAP7XX_H */ + -diff --git a/arch/arm/plat-omap/include/mach/sdrc.h b/arch/arm/plat-omap/include/mach/sdrc.h -index 1c09c78..7b58a5f 100644 --- a/arch/arm/plat-omap/include/mach/sdrc.h +++ b/arch/arm/plat-omap/include/mach/sdrc.h @@ -80,11 +80,11 @@ @@ -4129,8 +3961,6 @@ index 1c09c78..7b58a5f 100644 /* SMS register offsets - read/write with sms_{read,write}_reg() */ -diff --git a/arch/arm/plat-omap/include/mach/serial.h b/arch/arm/plat-omap/include/mach/serial.h -index e249186..9951345 100644 --- a/arch/arm/plat-omap/include/mach/serial.h +++ b/arch/arm/plat-omap/include/mach/serial.h @@ -20,26 +20,22 @@ @@ -4160,8 +3990,6 @@ index e249186..9951345 100644 #endif #define OMAP1510_BASE_BAUD (12000000/16) -diff --git a/arch/arm/plat-omap/include/mach/uncompress.h b/arch/arm/plat-omap/include/mach/uncompress.h -index 0814c5f..ddf7b88 100644 --- a/arch/arm/plat-omap/include/mach/uncompress.h +++ b/arch/arm/plat-omap/include/mach/uncompress.h @@ -25,6 +25,7 @@ unsigned int system_rev; @@ -4181,8 +4009,6 @@ index 0814c5f..ddf7b88 100644 shift = 0; if (check_port(uart, shift)) -diff --git a/arch/arm/plat-omap/include/mach/usb.h b/arch/arm/plat-omap/include/mach/usb.h -index f337e17..a4068a4 100644 --- a/arch/arm/plat-omap/include/mach/usb.h +++ b/arch/arm/plat-omap/include/mach/usb.h @@ -5,6 +5,21 @@ @@ -4216,8 +4042,6 @@ index f337e17..a4068a4 100644 #endif void omap_usb_init(struct omap_usb_config *pdata); -diff --git a/arch/arm/plat-omap/include/mach/vmalloc.h b/arch/arm/plat-omap/include/mach/vmalloc.h -index b97dfaf..9eebf62 100644 --- a/arch/arm/plat-omap/include/mach/vmalloc.h +++ b/arch/arm/plat-omap/include/mach/vmalloc.h @@ -17,5 +17,5 @@ @@ -4227,8 +4051,6 @@ index b97dfaf..9eebf62 100644 -#define VMALLOC_END (PAGE_OFFSET + 0x18000000) +#define VMALLOC_END (PAGE_OFFSET + 0x38000000) -diff --git a/arch/arm/plat-omap/io.c b/arch/arm/plat-omap/io.c -index b6defa2..93c1d53 100644 --- a/arch/arm/plat-omap/io.c +++ b/arch/arm/plat-omap/io.c @@ -13,7 +13,7 @@ @@ -4240,27 +4062,28 @@ index b6defa2..93c1d53 100644 #include #include #include -@@ -33,13 +33,13 @@ void __iomem *omap_ioremap(unsigned long p, size_t size, unsigned int type) +@@ -33,13 +33,13 @@ void __iomem *omap_ioremap(unsigned long if (BETWEEN(p, OMAP1_IO_PHYS, OMAP1_IO_SIZE)) return XLATE(p, OMAP1_IO_PHYS, OMAP1_IO_VIRT); } - if (cpu_is_omap730()) { - if (BETWEEN(p, OMAP730_DSP_BASE, OMAP730_DSP_SIZE)) - return XLATE(p, OMAP730_DSP_BASE, OMAP730_DSP_START); -+ if (cpu_is_omap7xx()) { -+ if (BETWEEN(p, OMAP7XX_DSP_BASE, OMAP7XX_DSP_SIZE)) -+ return XLATE(p, OMAP7XX_DSP_BASE, OMAP7XX_DSP_START); - +- - if (BETWEEN(p, OMAP730_DSPREG_BASE, OMAP730_DSPREG_SIZE)) - return XLATE(p, OMAP730_DSPREG_BASE, - OMAP730_DSPREG_START); ++ if (cpu_is_omap7xx()) { ++ if (BETWEEN(p, OMAP7XX_DSP_BASE, OMAP7XX_DSP_SIZE)) ++ return XLATE(p, OMAP7XX_DSP_BASE, OMAP7XX_DSP_START); ++ + if (BETWEEN(p, OMAP7XX_DSPREG_BASE, OMAP7XX_DSPREG_SIZE)) + return XLATE(p, OMAP7XX_DSPREG_BASE, + OMAP7XX_DSPREG_START); } if (cpu_is_omap15xx()) { if (BETWEEN(p, OMAP1510_DSP_BASE, OMAP1510_DSP_SIZE)) -@@ -114,6 +114,14 @@ void __iomem *omap_ioremap(unsigned long p, size_t size, unsigned int type) +@@ -114,6 +114,14 @@ void __iomem *omap_ioremap(unsigned long return XLATE(p, L4_WK_44XX_PHYS, L4_WK_44XX_VIRT); if (BETWEEN(p, OMAP44XX_GPMC_PHYS, OMAP44XX_GPMC_SIZE)) return XLATE(p, OMAP44XX_GPMC_PHYS, OMAP44XX_GPMC_VIRT); @@ -4328,8 +4151,6 @@ index b6defa2..93c1d53 100644 + __raw_writel(v, OMAP2_L4_IO_ADDRESS(pa)); } EXPORT_SYMBOL(omap_writel); -diff --git a/arch/arm/plat-omap/omap_device.c b/arch/arm/plat-omap/omap_device.c -index 2c409fc..12513f4 100644 --- a/arch/arm/plat-omap/omap_device.c +++ b/arch/arm/plat-omap/omap_device.c @@ -103,21 +103,6 @@ @@ -4370,7 +4191,7 @@ index 2c409fc..12513f4 100644 od->pm_lat_level--; -@@ -149,20 +134,22 @@ static int _omap_device_activate(struct omap_device *od, u8 ignore_lat) +@@ -149,20 +134,22 @@ static int _omap_device_activate(struct (od->dev_wakeup_lat <= od->_dev_wakeup_lat_limit)) break; @@ -4398,7 +4219,7 @@ index 2c409fc..12513f4 100644 od->pdev.name, od->pdev.id, od->pm_lat_level, act_lat, odpl->activate_lat); -@@ -188,13 +175,13 @@ static int _omap_device_activate(struct omap_device *od, u8 ignore_lat) +@@ -188,13 +175,13 @@ static int _omap_device_activate(struct */ static int _omap_device_deactivate(struct omap_device *od, u8 ignore_lat) { @@ -4414,7 +4235,7 @@ index 2c409fc..12513f4 100644 odpl = od->pm_lats + od->pm_lat_level; -@@ -203,23 +190,24 @@ static int _omap_device_deactivate(struct omap_device *od, u8 ignore_lat) +@@ -203,23 +190,24 @@ static int _omap_device_deactivate(struc od->_dev_wakeup_lat_limit)) break; @@ -4446,11 +4267,9 @@ index 2c409fc..12513f4 100644 od->dev_wakeup_lat += odpl->activate_lat; -diff --git a/arch/arm/plat-omap/sram.c b/arch/arm/plat-omap/sram.c -index 75d1f26..4144f81 100644 --- a/arch/arm/plat-omap/sram.c +++ b/arch/arm/plat-omap/sram.c -@@ -41,14 +41,14 @@ +@@ -42,14 +42,14 @@ #define OMAP1_SRAM_VA VMALLOC_END #define OMAP2_SRAM_PA 0x40200000 #define OMAP2_SRAM_PUB_PA 0x4020f800 @@ -4468,23 +4287,24 @@ index 75d1f26..4144f81 100644 #if defined(CONFIG_ARCH_OMAP24XX) || defined(CONFIG_ARCH_OMAP34XX) #define SRAM_BOOTLOADER_SZ 0x00 -@@ -56,16 +56,16 @@ +@@ -57,16 +57,16 @@ #define SRAM_BOOTLOADER_SZ 0x80 #endif -#define OMAP24XX_VA_REQINFOPERM0 OMAP2_IO_ADDRESS(0x68005048) -#define OMAP24XX_VA_READPERM0 OMAP2_IO_ADDRESS(0x68005050) -#define OMAP24XX_VA_WRITEPERM0 OMAP2_IO_ADDRESS(0x68005058) -+#define OMAP24XX_VA_REQINFOPERM0 OMAP2_L3_IO_ADDRESS(0x68005048) -+#define OMAP24XX_VA_READPERM0 OMAP2_L3_IO_ADDRESS(0x68005050) -+#define OMAP24XX_VA_WRITEPERM0 OMAP2_L3_IO_ADDRESS(0x68005058) - +- -#define OMAP34XX_VA_REQINFOPERM0 OMAP2_IO_ADDRESS(0x68012848) -#define OMAP34XX_VA_READPERM0 OMAP2_IO_ADDRESS(0x68012850) -#define OMAP34XX_VA_WRITEPERM0 OMAP2_IO_ADDRESS(0x68012858) -#define OMAP34XX_VA_ADDR_MATCH2 OMAP2_IO_ADDRESS(0x68012880) -#define OMAP34XX_VA_SMS_RG_ATT0 OMAP2_IO_ADDRESS(0x6C000048) -#define OMAP34XX_VA_CONTROL_STAT OMAP2_IO_ADDRESS(0x480022F0) ++#define OMAP24XX_VA_REQINFOPERM0 OMAP2_L3_IO_ADDRESS(0x68005048) ++#define OMAP24XX_VA_READPERM0 OMAP2_L3_IO_ADDRESS(0x68005050) ++#define OMAP24XX_VA_WRITEPERM0 OMAP2_L3_IO_ADDRESS(0x68005058) ++ +#define OMAP34XX_VA_REQINFOPERM0 OMAP2_L3_IO_ADDRESS(0x68012848) +#define OMAP34XX_VA_READPERM0 OMAP2_L3_IO_ADDRESS(0x68012850) +#define OMAP34XX_VA_WRITEPERM0 OMAP2_L3_IO_ADDRESS(0x68012858) @@ -4494,11 +4314,9 @@ index 75d1f26..4144f81 100644 #define GP_DEVICE 0x300 -diff --git a/arch/arm/plat-omap/usb.c b/arch/arm/plat-omap/usb.c -index 509f2ed..3c40b85 100644 --- a/arch/arm/plat-omap/usb.c +++ b/arch/arm/plat-omap/usb.c -@@ -614,8 +614,8 @@ omap_otg_init(struct omap_usb_config *config) +@@ -614,8 +614,8 @@ omap_otg_init(struct omap_usb_config *co if (config->otg || config->register_host) { syscon &= ~HST_IDLE_EN; ohci_device.dev.platform_data = config; @@ -4509,7 +4327,7 @@ index 509f2ed..3c40b85 100644 status = platform_device_register(&ohci_device); if (status) pr_debug("can't register OHCI device, %d\n", status); -@@ -626,8 +626,8 @@ omap_otg_init(struct omap_usb_config *config) +@@ -626,8 +626,8 @@ omap_otg_init(struct omap_usb_config *co if (config->otg) { syscon &= ~OTG_IDLE_EN; otg_device.dev.platform_data = config; @@ -4520,7 +4338,7 @@ index 509f2ed..3c40b85 100644 status = platform_device_register(&otg_device); if (status) pr_debug("can't register OTG device, %d\n", status); -@@ -731,7 +731,7 @@ static inline void omap_1510_usb_init(struct omap_usb_config *config) {} +@@ -731,7 +731,7 @@ static inline void omap_1510_usb_init(st void __init omap_usb_init(struct omap_usb_config *pdata) { @@ -4529,11 +4347,9 @@ index 509f2ed..3c40b85 100644 omap_otg_init(pdata); else if (cpu_is_omap15xx()) omap_1510_usb_init(pdata); -diff --git a/drivers/Makefile b/drivers/Makefile -index 6ee53c7..086857c 100644 --- a/drivers/Makefile +++ b/drivers/Makefile -@@ -72,7 +72,7 @@ obj-$(CONFIG_GAMEPORT) += input/gameport/ +@@ -72,7 +72,7 @@ obj-$(CONFIG_GAMEPORT) += input/gamepor obj-$(CONFIG_INPUT) += input/ obj-$(CONFIG_I2O) += message/ obj-$(CONFIG_RTC_LIB) += rtc/ @@ -4542,9 +4358,6 @@ index 6ee53c7..086857c 100644 obj-$(CONFIG_PPS) += pps/ obj-$(CONFIG_W1) += w1/ obj-$(CONFIG_POWER_SUPPLY) += power/ -diff --git a/drivers/cbus/Kconfig b/drivers/cbus/Kconfig -new file mode 100644 -index 0000000..25f8039 --- /dev/null +++ b/drivers/cbus/Kconfig @@ -0,0 +1,89 @@ @@ -4637,9 +4450,6 @@ index 0000000..25f8039 + sysfs. + +endmenu -diff --git a/drivers/cbus/Makefile b/drivers/cbus/Makefile -new file mode 100644 -index 0000000..347c2a4 --- /dev/null +++ b/drivers/cbus/Makefile @@ -0,0 +1,14 @@ @@ -4657,9 +4467,6 @@ index 0000000..347c2a4 +obj-$(CONFIG_CBUS_TAHVO_USER) += tahvo-user.o +obj-$(CONFIG_CBUS_RETU_USER) += retu-user.o +obj-$(CONFIG_CBUS_RETU_HEADSET) += retu-headset.o -diff --git a/drivers/cbus/cbus.c b/drivers/cbus/cbus.c -new file mode 100644 -index 0000000..774acce --- /dev/null +++ b/drivers/cbus/cbus.c @@ -0,0 +1,293 @@ @@ -4956,9 +4763,6 @@ index 0000000..774acce +MODULE_DESCRIPTION("CBUS serial protocol"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Juha Yrjölä, David Weinehall, and Mikko Ylinen"); -diff --git a/drivers/cbus/cbus.h b/drivers/cbus/cbus.h -new file mode 100644 -index 0000000..957224c --- /dev/null +++ b/drivers/cbus/cbus.h @@ -0,0 +1,36 @@ @@ -4998,9 +4802,6 @@ index 0000000..957224c +extern int cbus_write_reg(struct cbus_host *host, int dev, int reg, u16 val); + +#endif /* __DRIVERS_CBUS_CBUS_H */ -diff --git a/drivers/cbus/retu-headset.c b/drivers/cbus/retu-headset.c -new file mode 100644 -index 0000000..e798bc2 --- /dev/null +++ b/drivers/cbus/retu-headset.c @@ -0,0 +1,355 @@ @@ -5359,9 +5160,6 @@ index 0000000..e798bc2 +MODULE_DESCRIPTION("Retu/Vilma headset detection"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Juha Yrjölä"); -diff --git a/drivers/cbus/retu-pwrbutton.c b/drivers/cbus/retu-pwrbutton.c -new file mode 100644 -index 0000000..38d7aa4 --- /dev/null +++ b/drivers/cbus/retu-pwrbutton.c @@ -0,0 +1,118 @@ @@ -5483,9 +5281,6 @@ index 0000000..38d7aa4 +MODULE_DESCRIPTION("Retu Power Button"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Ari Saastamoinen"); -diff --git a/drivers/cbus/retu-rtc.c b/drivers/cbus/retu-rtc.c -new file mode 100644 -index 0000000..1ebc33b --- /dev/null +++ b/drivers/cbus/retu-rtc.c @@ -0,0 +1,477 @@ @@ -5966,9 +5761,6 @@ index 0000000..1ebc33b +MODULE_DESCRIPTION("Retu RTC"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Paul Mundt and Igor Stoppa"); -diff --git a/drivers/cbus/retu-user.c b/drivers/cbus/retu-user.c -new file mode 100644 -index 0000000..74a7d61 --- /dev/null +++ b/drivers/cbus/retu-user.c @@ -0,0 +1,423 @@ @@ -6395,9 +6187,6 @@ index 0000000..74a7d61 +MODULE_DESCRIPTION("Retu ASIC user space functions"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Mikko Ylinen"); -diff --git a/drivers/cbus/retu-wdt.c b/drivers/cbus/retu-wdt.c -new file mode 100644 -index 0000000..b7b20b7 --- /dev/null +++ b/drivers/cbus/retu-wdt.c @@ -0,0 +1,202 @@ @@ -6603,9 +6392,6 @@ index 0000000..b7b20b7 +MODULE_AUTHOR("Amit Kucheria"); +MODULE_LICENSE("GPL"); + -diff --git a/drivers/cbus/retu.c b/drivers/cbus/retu.c -new file mode 100644 -index 0000000..84d7840 --- /dev/null +++ b/drivers/cbus/retu.c @@ -0,0 +1,467 @@ @@ -7076,9 +6862,6 @@ index 0000000..84d7840 +MODULE_DESCRIPTION("Retu ASIC control"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Juha Yrjölä, David Weinehall, and Mikko Ylinen"); -diff --git a/drivers/cbus/retu.h b/drivers/cbus/retu.h -new file mode 100644 -index 0000000..c9e044c --- /dev/null +++ b/drivers/cbus/retu.h @@ -0,0 +1,77 @@ @@ -7159,9 +6942,6 @@ index 0000000..c9e044c +extern spinlock_t retu_lock; + +#endif /* __DRIVERS_CBUS_RETU_H */ -diff --git a/drivers/cbus/tahvo-usb.c b/drivers/cbus/tahvo-usb.c -new file mode 100644 -index 0000000..d8ad836 --- /dev/null +++ b/drivers/cbus/tahvo-usb.c @@ -0,0 +1,777 @@ @@ -7942,9 +7722,6 @@ index 0000000..d8ad836 +MODULE_DESCRIPTION("Tahvo USB OTG Transceiver Driver"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Juha Yrjölä, Tony Lindgren, and Timo Teräs"); -diff --git a/drivers/cbus/tahvo-user.c b/drivers/cbus/tahvo-user.c -new file mode 100644 -index 0000000..873d648 --- /dev/null +++ b/drivers/cbus/tahvo-user.c @@ -0,0 +1,405 @@ @@ -8353,9 +8130,6 @@ index 0000000..873d648 +MODULE_DESCRIPTION("Tahvo ASIC user space functions"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Mikko Ylinen"); -diff --git a/drivers/cbus/tahvo.c b/drivers/cbus/tahvo.c -new file mode 100644 -index 0000000..e734c4c --- /dev/null +++ b/drivers/cbus/tahvo.c @@ -0,0 +1,442 @@ @@ -8801,9 +8575,6 @@ index 0000000..e734c4c +MODULE_DESCRIPTION("Tahvo ASIC control"); +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Juha Yrjölä, David Weinehall, and Mikko Ylinen"); -diff --git a/drivers/cbus/tahvo.h b/drivers/cbus/tahvo.h -new file mode 100644 -index 0000000..b7a8ee1 --- /dev/null +++ b/drivers/cbus/tahvo.h @@ -0,0 +1,61 @@ @@ -8868,9 +8639,6 @@ index 0000000..b7a8ee1 +extern spinlock_t tahvo_lock; + +#endif /* __DRIVERS_CBUS_TAHVO_H */ -diff --git a/drivers/cbus/user_retu_tahvo.h b/drivers/cbus/user_retu_tahvo.h -new file mode 100644 -index 0000000..a5c2190 --- /dev/null +++ b/drivers/cbus/user_retu_tahvo.h @@ -0,0 +1,75 @@ @@ -8949,21 +8717,6 @@ index 0000000..a5c2190 +}; + +#endif -diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c -index 4487cc0..0aecaae 100644 ---- a/drivers/mmc/host/omap_hsmmc.c -+++ b/drivers/mmc/host/omap_hsmmc.c -@@ -2013,7 +2013,7 @@ static struct platform_driver omap_hsmmc_driver = { - static int __init omap_hsmmc_init(void) - { - /* Register the MMC driver */ -- return platform_driver_register(&omap_hsmmc_driver); -+ return platform_driver_probe(&omap_hsmmc_driver, omap_hsmmc_probe); - } - - static void __exit omap_hsmmc_cleanup(void) -diff --git a/drivers/spi/omap_uwire.c b/drivers/spi/omap_uwire.c -index e75ba9b..7bcf409 100644 --- a/drivers/spi/omap_uwire.c +++ b/drivers/spi/omap_uwire.c @@ -52,7 +52,7 @@ @@ -8975,7 +8728,7 @@ index e75ba9b..7bcf409 100644 /* FIXME address is now a platform device resource, -@@ -504,7 +504,7 @@ static int __init uwire_probe(struct platform_device *pdev) +@@ -504,7 +504,7 @@ static int __init uwire_probe(struct pla } clk_enable(uwire->ck); @@ -8995,8 +8748,6 @@ index e75ba9b..7bcf409 100644 } return platform_driver_probe(&uwire_driver, uwire_probe); -diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig -index 2407508..5620e92 100644 --- a/drivers/usb/Kconfig +++ b/drivers/usb/Kconfig @@ -60,6 +60,7 @@ config USB_ARCH_HAS_EHCI @@ -9007,11 +8758,9 @@ index 2407508..5620e92 100644 default PCI # ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. -diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c -index 9835e07..44c208c 100644 --- a/drivers/usb/host/ehci-hcd.c +++ b/drivers/usb/host/ehci-hcd.c -@@ -1108,6 +1108,11 @@ MODULE_LICENSE ("GPL"); +@@ -1111,6 +1111,11 @@ MODULE_LICENSE ("GPL"); #define PLATFORM_DRIVER ehci_hcd_au1xxx_driver #endif @@ -9023,9 +8772,6 @@ index 9835e07..44c208c 100644 #ifdef CONFIG_PPC_PS3 #include "ehci-ps3.c" #define PS3_SYSTEM_BUS_DRIVER ps3_ehci_driver -diff --git a/drivers/usb/host/ehci-omap.c b/drivers/usb/host/ehci-omap.c -new file mode 100644 -index 0000000..7ba8df3 --- /dev/null +++ b/drivers/usb/host/ehci-omap.c @@ -0,0 +1,755 @@ @@ -9784,11 +9530,9 @@ index 0000000..7ba8df3 +MODULE_AUTHOR("Texas Instruments, Inc."); +MODULE_AUTHOR("Felipe Balbi "); + -diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c -index f16e421..6f957ce 100644 --- a/drivers/video/omap/dispc.c +++ b/drivers/video/omap/dispc.c -@@ -204,6 +204,7 @@ static u32 inline dispc_read_reg(int idx) +@@ -210,6 +210,7 @@ static u32 inline dispc_read_reg(int idx /* Select RFBI or bypass mode */ static void enable_rfbi_mode(int enable) { @@ -9796,7 +9540,7 @@ index f16e421..6f957ce 100644 u32 l; l = dispc_read_reg(DISPC_CONTROL); -@@ -216,9 +217,15 @@ static void enable_rfbi_mode(int enable) +@@ -222,9 +223,15 @@ static void enable_rfbi_mode(int enable) dispc_write_reg(DISPC_CONTROL, l); /* Set bypass mode in RFBI module */ @@ -9814,7 +9558,7 @@ index f16e421..6f957ce 100644 } static void set_lcd_data_lines(int data_lines) -@@ -1367,6 +1374,7 @@ static int omap_dispc_init(struct omapfb_device *fbdev, int ext_mode, +@@ -1373,6 +1380,7 @@ static int omap_dispc_init(struct omapfb int r; u32 l; struct lcd_panel *panel = fbdev->panel; @@ -9822,7 +9566,7 @@ index f16e421..6f957ce 100644 int tmo = 10000; int skip_init = 0; int i; -@@ -1441,7 +1449,13 @@ static int omap_dispc_init(struct omapfb_device *fbdev, int ext_mode, +@@ -1453,7 +1461,13 @@ static int omap_dispc_init(struct omapfb } /* L3 firewall setting: enable access to OCM RAM */