From: Mark Brown Date: Mon, 16 Aug 2010 17:42:58 +0000 (+0100) Subject: Merge branch 'for-2.6.36' into for-2.6.37 X-Git-Tag: v2.6.37-rc1~82^2~8^2~159 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e4862f2f6f5653dfb67f3ba2b6f0bc74516ed51a;p=platform%2Fupstream%2Fkernel-adaptation-pc.git Merge branch 'for-2.6.36' into for-2.6.37 Fairly simple conflicts, the most serious ones are the i.MX ones which I suspect now need another rename. Conflicts: arch/arm/mach-mx2/clock_imx27.c arch/arm/mach-mx2/devices.c arch/arm/mach-omap2/board-rx51-peripherals.c arch/arm/mach-omap2/board-zoom2.c sound/soc/fsl/mpc5200_dma.c sound/soc/fsl/mpc5200_dma.h sound/soc/fsl/mpc8610_hpcd.c sound/soc/pxa/spitz.c --- e4862f2f6f5653dfb67f3ba2b6f0bc74516ed51a diff --cc arch/arm/mach-omap1/devices.c index eb98eb8,aa07256..b583121 --- a/arch/arm/mach-omap1/devices.c +++ b/arch/arm/mach-omap1/devices.c @@@ -231,67 -193,8 +194,32 @@@ static inline void omap_init_spi100k(vo /*-------------------------------------------------------------------------*/ - #if defined(CONFIG_OMAP_STI) - - #define OMAP1_STI_BASE 0xfffea000 - #define OMAP1_STI_CHANNEL_BASE (OMAP1_STI_BASE + 0x400) - - static struct resource sti_resources[] = { - { - .start = OMAP1_STI_BASE, - .end = OMAP1_STI_BASE + SZ_1K - 1, - .flags = IORESOURCE_MEM, - }, - { - .start = OMAP1_STI_CHANNEL_BASE, - .end = OMAP1_STI_CHANNEL_BASE + SZ_1K - 1, - .flags = IORESOURCE_MEM, - }, - { - .start = INT_1610_STI, - .flags = IORESOURCE_IRQ, - } - }; - - static struct platform_device sti_device = { - .name = "sti", - .id = -1, - .num_resources = ARRAY_SIZE(sti_resources), - .resource = sti_resources, - }; - - static inline void omap_init_sti(void) - { - platform_device_register(&sti_device); - } - #else static inline void omap_init_sti(void) {} - #endif +#if defined(CONFIG_SND_SOC) || defined(CONFIG_SND_SOC_MODULE) + +static struct platform_device omap_pcm = { + .name = "omap-pcm-audio", + .id = -1, +}; + +OMAP_MCBSP_PLATFORM_DEVICE(1); +OMAP_MCBSP_PLATFORM_DEVICE(2); +OMAP_MCBSP_PLATFORM_DEVICE(3); + +static void omap_init_audio(void) +{ + platform_device_register(&omap_mcbsp1); + platform_device_register(&omap_mcbsp2); + if (!cpu_is_omap7xx()) + platform_device_register(&omap_mcbsp3); + platform_device_register(&omap_pcm); +} + +#else +static inline void omap_init_audio(void) {} +#endif + /*-------------------------------------------------------------------------*/ /* diff --cc arch/arm/mach-omap2/board-rx51-peripherals.c index 28978c0,9a5eb87..897d960 --- a/arch/arm/mach-omap2/board-rx51-peripherals.c +++ b/arch/arm/mach-omap2/board-rx51-peripherals.c @@@ -23,10 -23,8 +23,9 @@@ #include #include #include +#include #include - #include #include #include #include @@@ -716,17 -728,6 +728,17 @@@ static struct i2c_board_info __initdat }, }; +/* Audio setup data */ +static struct aic3x_setup_data rx51_aic34_setup = { + .gpio_func[0] = AIC3X_GPIO1_FUNC_DISABLED, + .gpio_func[1] = AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT, +}; + - static struct aic3x_pdata rx51_aic34_data = { ++static struct aic3x_pdata rx51_aic3x_data = { + .setup = &rx51_aic34_setup, + .gpio_reset = 60, +}; + static struct i2c_board_info __initdata rx51_peripherals_i2c_board_info_2[] = { { I2C_BOARD_INFO("tlv320aic3x", 0x18), diff --cc arch/arm/mach-omap2/board-zoom2.c index 410fe00,3ad9ecf..efbcd8f --- a/arch/arm/mach-omap2/board-zoom2.c +++ b/arch/arm/mach-omap2/board-zoom2.c @@@ -102,7 -135,8 +156,9 @@@ static void __init omap_zoom2_init(void { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); zoom_peripherals_init(); + omap3_zoom2_i2c_init(); + board_nand_init(zoom_nand_partitions, + ARRAY_SIZE(zoom_nand_partitions), ZOOM_NAND_CS); zoom_debugboard_init(); } diff --cc arch/arm/mach-omap2/devices.c index f9a5961,2dbb265..08e1ad5 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c @@@ -231,102 -233,8 +234,45 @@@ static inline void omap_init_mbox(void static inline void omap_init_mbox(void) { } #endif /* CONFIG_OMAP_MBOX_FWK */ - #if defined(CONFIG_OMAP_STI) - - #if defined(CONFIG_ARCH_OMAP2) - - #define OMAP2_STI_BASE 0x48068000 - #define OMAP2_STI_CHANNEL_BASE 0x54000000 - #define OMAP2_STI_IRQ 4 - - static struct resource sti_resources[] = { - { - .start = OMAP2_STI_BASE, - .end = OMAP2_STI_BASE + 0x7ff, - .flags = IORESOURCE_MEM, - }, - { - .start = OMAP2_STI_CHANNEL_BASE, - .end = OMAP2_STI_CHANNEL_BASE + SZ_64K - 1, - .flags = IORESOURCE_MEM, - }, - { - .start = OMAP2_STI_IRQ, - .flags = IORESOURCE_IRQ, - } - }; - #elif defined(CONFIG_ARCH_OMAP3) - - #define OMAP3_SDTI_BASE 0x54500000 - #define OMAP3_SDTI_CHANNEL_BASE 0x54600000 - - static struct resource sti_resources[] = { - { - .start = OMAP3_SDTI_BASE, - .end = OMAP3_SDTI_BASE + 0xFFF, - .flags = IORESOURCE_MEM, - }, - { - .start = OMAP3_SDTI_CHANNEL_BASE, - .end = OMAP3_SDTI_CHANNEL_BASE + SZ_1M - 1, - .flags = IORESOURCE_MEM, - } - }; - - #endif - - static struct platform_device sti_device = { - .name = "sti", - .id = -1, - .num_resources = ARRAY_SIZE(sti_resources), - .resource = sti_resources, - }; - - static inline void omap_init_sti(void) - { - platform_device_register(&sti_device); - } - #else static inline void omap_init_sti(void) {} - #endif +#if defined(CONFIG_SND_SOC) || defined(CONFIG_SND_SOC_MODULE) + +static struct platform_device omap_pcm = { + .name = "omap-pcm-audio", + .id = -1, +}; + +/* + * OMAP2420 has 2 McBSP ports + * OMAP2430 has 5 McBSP ports + * OMAP3 has 5 McBSP ports + * OMAP4 has 4 McBSP ports + */ +OMAP_MCBSP_PLATFORM_DEVICE(1); +OMAP_MCBSP_PLATFORM_DEVICE(2); +OMAP_MCBSP_PLATFORM_DEVICE(3); +OMAP_MCBSP_PLATFORM_DEVICE(4); +OMAP_MCBSP_PLATFORM_DEVICE(5); + +static void omap_init_audio(void) +{ + platform_device_register(&omap_mcbsp1); + platform_device_register(&omap_mcbsp2); + if (cpu_is_omap243x() || cpu_is_omap34xx() || cpu_is_omap44xx()) { + platform_device_register(&omap_mcbsp3); + platform_device_register(&omap_mcbsp4); + } + if (cpu_is_omap243x() || cpu_is_omap34xx()) + platform_device_register(&omap_mcbsp5); + + platform_device_register(&omap_pcm); +} + +#else +static inline void omap_init_audio(void) {} +#endif + #if defined(CONFIG_SPI_OMAP24XX) || defined(CONFIG_SPI_OMAP24XX_MODULE) #include diff --cc arch/arm/mach-omap2/include/mach/board-zoom.h index b6a010f,3af69d2..80591fd --- a/arch/arm/mach-omap2/include/mach/board-zoom.h +++ b/arch/arm/mach-omap2/include/mach/board-zoom.h @@@ -1,7 -1,11 +1,13 @@@ /* * Defines for zoom boards */ + #include + #include + + #define ZOOM_NAND_CS 0 + + extern void __init board_nand_init(struct mtd_partition *, u8 nr_parts, u8 cs); extern int __init zoom_debugboard_init(void); extern void __init zoom_peripherals_init(void); + +#define ZOOM2_HEADSET_EXTMUTE_GPIO 153 diff --cc arch/arm/mach-pxa/pxa27x.c index 4650082,12e5b9f..d1fbf29 --- a/arch/arm/mach-pxa/pxa27x.c +++ b/arch/arm/mach-pxa/pxa27x.c @@@ -383,11 -383,8 +383,12 @@@ void __init pxa27x_set_i2c_power_info(s static struct platform_device *devices[] __initdata = { &pxa27x_device_udc, + &pxa_device_pmu, &pxa_device_i2s, + &pxa_device_asoc_ssp1, + &pxa_device_asoc_ssp2, + &pxa_device_asoc_ssp3, + &pxa_device_asoc_platform, &sa1100_device_rtc, &pxa_device_rtc, &pxa27x_device_ssp1, diff --cc arch/arm/mach-pxa/pxa3xx.c index f7a3b15,fa001484..90974e6 --- a/arch/arm/mach-pxa/pxa3xx.c +++ b/arch/arm/mach-pxa/pxa3xx.c @@@ -596,12 -608,8 +608,13 @@@ void __init pxa3xx_set_i2c_power_info(s static struct platform_device *devices[] __initdata = { &pxa27x_device_udc, + &pxa_device_pmu, &pxa_device_i2s, + &pxa_device_asoc_ssp1, + &pxa_device_asoc_ssp2, + &pxa_device_asoc_ssp3, + &pxa_device_asoc_ssp4, + &pxa_device_asoc_platform, &sa1100_device_rtc, &pxa_device_rtc, &pxa27x_device_ssp1, diff --cc arch/arm/mach-s3c64xx/mach-smdk6410.c index 362fc76,d498219..ecbddd3 --- a/arch/arm/mach-s3c64xx/mach-smdk6410.c +++ b/arch/arm/mach-s3c64xx/mach-smdk6410.c @@@ -256,8 -283,8 +283,9 @@@ static struct platform_device *smdk6410 &s3c_device_fb, &s3c_device_ohci, &s3c_device_usb_hsotg, + &s3c_device_pcm, &s3c64xx_device_iisv4, + &samsung_device_keypad, #ifdef CONFIG_REGULATOR &smdk6410_b_pwr_5v, diff --cc sound/soc/fsl/mpc5200_psc_ac97.c index 11706c1,a956023..40acc8e --- a/sound/soc/fsl/mpc5200_psc_ac97.c +++ b/sound/soc/fsl/mpc5200_psc_ac97.c @@@ -258,10 -277,10 +272,10 @@@ static struct snd_soc_dai_driver psc_ac * - Probe/remove operations * - OF device match table */ - static int __devinit psc_ac97_of_probe(struct of_device *op, + static int __devinit psc_ac97_of_probe(struct platform_device *op, const struct of_device_id *match) { - int rc, i; + int rc; struct snd_ac97 ac97; struct mpc52xx_psc __iomem *regs; @@@ -288,10 -317,9 +302,10 @@@ return 0; } - static int __devexit psc_ac97_of_remove(struct of_device *op) + static int __devexit psc_ac97_of_remove(struct platform_device *op) { - return mpc5200_audio_dma_destroy(op); + snd_soc_unregister_dais(&op->dev, ARRAY_SIZE(psc_ac97_dai)); + return 0; } /* Match table for of_platform binding */ diff --cc sound/soc/fsl/mpc5200_psc_i2s.c index 5b9f2c7,534f04cb..74ffed4 --- a/sound/soc/fsl/mpc5200_psc_i2s.c +++ b/sound/soc/fsl/mpc5200_psc_i2s.c @@@ -199,10 -205,9 +199,10 @@@ static int __devinit psc_i2s_of_probe(s } - static int __devexit psc_i2s_of_remove(struct of_device *op) + static int __devexit psc_i2s_of_remove(struct platform_device *op) { - return mpc5200_audio_dma_destroy(op); + snd_soc_unregister_dais(&op->dev, ARRAY_SIZE(psc_i2s_dai)); + return 0; } /* Match table for of_platform binding */