From: Linus Torvalds Date: Wed, 2 Nov 2011 03:11:00 +0000 (-0700) Subject: Merge branch 'next/cleanup' of git://git.linaro.org/people/arnd/arm-soc X-Git-Tag: v3.2-rc1~98 X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=commitdiff_plain;h=952414505f55afe5cd6dc004765076aa22b3ed7e Merge branch 'next/cleanup' of git://git.linaro.org/people/arnd/arm-soc * 'next/cleanup' of git://git.linaro.org/people/arnd/arm-soc: (125 commits) ARM: mach-mxs: fix machines' initializers order mmc: mxcmmc: explicitly includes mach/hardware.h arm/imx: explicitly includes mach/hardware.h in pm-imx27.c arm/imx: remove mx27_setup_weimcs() from mx27.h arm/imx: explicitly includes mach/hardware.h in mach-kzm_arm11_01.c arm/imx: remove mx31_setup_weimcs() from mx31.h ARM: tegra: devices.c should include devices.h ARM: tegra: cpu-tegra: unexport two functions ARM: tegra: cpu-tegra: sparse type fix ARM: tegra: dma: staticify some tables and functions ARM: tegra: tegra2_clocks: don't export some tables ARM: tegra: tegra_powergate_is_powered should be static ARM: tegra: tegra_rtc_read_ms should be static ARM: tegra: tegra_init_cache should be static ARM: tegra: pcie: 0 -> NULL changes ARM: tegra: pcie: include board.h ARM: tegra: pcie: don't cast __iomem pointers ARM: tegra: tegra2_clocks: 0 -> NULL changes ARM: tegra: tegra2_clocks: don't cast __iomem pointers ARM: tegra: timer: don't cast __iomem pointers ... Fix up trivial conflicts in arch/arm/mach-omap2/Makefile, arch/arm/mach-u300/{Makefile.boot,core.c} arch/arm/plat-{mxc,omap}/devices.c --- 952414505f55afe5cd6dc004765076aa22b3ed7e diff --cc arch/arm/include/asm/device.h index 6615f03f56a5,b5c9f5b1f6a3..7aa368003b05 --- a/arch/arm/include/asm/device.h +++ b/arch/arm/include/asm/device.h @@@ -10,12 -10,14 +10,17 @@@ struct dev_archdata #ifdef CONFIG_DMABOUNCE struct dmabounce_device_info *dmabounce; #endif +#ifdef CONFIG_IOMMU_API + void *iommu; /* private IOMMU data */ +#endif }; + struct omap_device; + struct pdev_archdata { + #ifdef CONFIG_ARCH_OMAP + struct omap_device *od; + #endif }; #endif diff --cc arch/arm/mach-omap2/Makefile index 7317a2b39dd1,cd45c045ab8c..d7e25379a4b4 --- a/arch/arm/mach-omap2/Makefile +++ b/arch/arm/mach-omap2/Makefile @@@ -229,24 -217,21 +217,17 @@@ obj-$(CONFIG_MACH_OMAP_ZOOM3) += board board-zoom-debugboard.o obj-$(CONFIG_MACH_OMAP_3630SDP) += board-3630sdp.o \ board-zoom-peripherals.o \ - board-zoom-display.o \ - board-flash.o \ - hsmmc.o - obj-$(CONFIG_MACH_CM_T35) += board-cm-t35.o \ - hsmmc.o + board-zoom-display.o + obj-$(CONFIG_MACH_CM_T35) += board-cm-t35.o obj-$(CONFIG_MACH_CM_T3517) += board-cm-t3517.o - obj-$(CONFIG_MACH_IGEP0020) += board-igep0020.o \ - hsmmc.o - obj-$(CONFIG_MACH_OMAP3_TOUCHBOOK) += board-omap3touchbook.o \ - hsmmc.o - obj-$(CONFIG_MACH_OMAP_4430SDP) += board-4430sdp.o \ - hsmmc.o - obj-$(CONFIG_MACH_OMAP4_PANDA) += board-omap4panda.o \ - hsmmc.o + obj-$(CONFIG_MACH_IGEP0020) += board-igep0020.o + obj-$(CONFIG_MACH_OMAP3_TOUCHBOOK) += board-omap3touchbook.o -obj-$(CONFIG_MACH_OMAP_4430SDP) += board-4430sdp.o \ - omap_phy_internal.o -obj-$(CONFIG_MACH_OMAP4_PANDA) += board-omap4panda.o \ - omap_phy_internal.o ++obj-$(CONFIG_MACH_OMAP_4430SDP) += board-4430sdp.o ++obj-$(CONFIG_MACH_OMAP4_PANDA) += board-omap4panda.o + -obj-$(CONFIG_MACH_PCM049) += board-omap4pcm049.o \ - omap_phy_internal.o ++obj-$(CONFIG_MACH_PCM049) += board-omap4pcm049.o -obj-$(CONFIG_MACH_OMAP3517EVM) += board-am3517evm.o \ - omap_phy_internal.o +obj-$(CONFIG_MACH_OMAP3517EVM) += board-am3517evm.o obj-$(CONFIG_MACH_CRANEBOARD) += board-am3517crane.o diff --cc arch/arm/mach-u300/Makefile.boot index 69357affbd77,a06bb0deadfe..87811de0bd94 --- a/arch/arm/mach-u300/Makefile.boot +++ b/arch/arm/mach-u300/Makefile.boot @@@ -1,15 -1,4 +1,4 @@@ - # Note: the following conditions must always be true: - # ZRELADDR == virt_to_phys(TEXTADDR) - # PARAMS_PHYS must be within 4MB of ZRELADDR - # INITRD_PHYS must be in RAM - - ifdef CONFIG_MACH_U300_SINGLE_RAM - zreladdr-y += 0x28E08000 - params_phys-y := 0x28E00100 - else - zreladdr-y += 0x48008000 - params_phys-y := 0x48000100 - endif - - zreladdr-y := 0x48008000 ++ zreladdr-y += 0x48008000 + params_phys-y := 0x48000100 # This isn't used. - #initrd_phys-y := 0x29800000 + #initrd_phys-y := 0x48800000 diff --cc arch/arm/mach-u300/core.c index f4ad6d2e26f3,2f1d758133a7..ac0791e924bc --- a/arch/arm/mach-u300/core.c +++ b/arch/arm/mach-u300/core.c @@@ -1747,8 -1600,6 +1676,7 @@@ static struct platform_device *platform &gpio_device, &nand_device, &wdog_device, - &ave_device, + &pinmux_device, }; /* diff --cc arch/arm/plat-mxc/devices.c index a34b2ae895f2,5aaa8c5f3420..4d55a7a26e98 --- a/arch/arm/plat-mxc/devices.c +++ b/arch/arm/plat-mxc/devices.c @@@ -23,20 -23,59 +23,6 @@@ #include #include - int __init mxc_register_device(struct platform_device *pdev, void *data) -struct platform_device *__init imx_add_platform_device_dmamask( - const char *name, int id, - const struct resource *res, unsigned int num_resources, - const void *data, size_t size_data, u64 dmamask) --{ - int ret; - int ret = -ENOMEM; - struct platform_device *pdev; -- - pdev->dev.platform_data = data; - pdev = platform_device_alloc(name, id); - if (!pdev) - goto err; -- - ret = platform_device_register(pdev); - if (ret) - pr_debug("Unable to register platform device '%s': %d\n", - pdev->name, ret); - if (dmamask) { - /* - * This memory isn't freed when the device is put, - * I don't have a nice idea for that though. Conceptually - * dma_mask in struct device should not be a pointer. - * See http://thread.gmane.org/gmane.linux.kernel.pci/9081 - */ - pdev->dev.dma_mask = - kmalloc(sizeof(*pdev->dev.dma_mask), GFP_KERNEL); - if (!pdev->dev.dma_mask) - /* ret is still -ENOMEM; */ - goto err; -- - return ret; - *pdev->dev.dma_mask = dmamask; - pdev->dev.coherent_dma_mask = dmamask; - } - - if (res) { - ret = platform_device_add_resources(pdev, res, num_resources); - if (ret) - goto err; - } - - if (data) { - ret = platform_device_add_data(pdev, data, size_data); - if (ret) - goto err; - } - - ret = platform_device_add(pdev); - if (ret) { -err: - if (dmamask) - kfree(pdev->dev.dma_mask); - platform_device_put(pdev); - return ERR_PTR(ret); - } - - return pdev; --} -- struct device mxc_aips_bus = { .init_name = "mxc_aips", .parent = &platform_bus, diff --cc arch/arm/plat-omap/devices.c index c46c47afa090,acd132c29647..19719329a47b --- a/arch/arm/plat-omap/devices.c +++ b/arch/arm/plat-omap/devices.c @@@ -25,54 -25,43 +25,8 @@@ #include #include #include - #include #include - /*-------------------------------------------------------------------------*/ -#if defined(CONFIG_SND_OMAP_SOC_MCPDM) || \ - defined(CONFIG_SND_OMAP_SOC_MCPDM_MODULE) -- - #if defined(CONFIG_OMAP_MCBSP) || defined(CONFIG_OMAP_MCBSP_MODULE) -static struct resource mcpdm_resources[] = { - { - .name = "mcpdm_mem", - .start = OMAP44XX_MCPDM_BASE, - .end = OMAP44XX_MCPDM_BASE + SZ_4K, - .flags = IORESOURCE_MEM, - }, - { - .name = "mcpdm_irq", - .start = OMAP44XX_IRQ_MCPDM, - .end = OMAP44XX_IRQ_MCPDM, - .flags = IORESOURCE_IRQ, - }, -}; -- - static struct platform_device **omap_mcbsp_devices; -static struct platform_device omap_mcpdm_device = { - .name = "omap-mcpdm", - .id = -1, - .num_resources = ARRAY_SIZE(mcpdm_resources), - .resource = mcpdm_resources, -}; -- - void omap_mcbsp_register_board_cfg(struct resource *res, int res_count, - struct omap_mcbsp_platform_data *config, int size) -static void omap_init_mcpdm(void) --{ - int i; - - omap_mcbsp_devices = kzalloc(size * sizeof(struct platform_device *), - GFP_KERNEL); - if (!omap_mcbsp_devices) { - printk(KERN_ERR "Could not register McBSP devices\n"); - return; - } - - for (i = 0; i < size; i++) { - struct platform_device *new_mcbsp; - int ret; - - new_mcbsp = platform_device_alloc("omap-mcbsp", i + 1); - if (!new_mcbsp) - continue; - platform_device_add_resources(new_mcbsp, &res[i * res_count], - res_count); - new_mcbsp->dev.platform_data = &config[i]; - ret = platform_device_add(new_mcbsp); - if (ret) { - platform_device_put(new_mcbsp); - continue; - } - omap_mcbsp_devices[i] = new_mcbsp; - } - (void) platform_device_register(&omap_mcpdm_device); --} - --#else - void omap_mcbsp_register_board_cfg(struct resource *res, int res_count, - struct omap_mcbsp_platform_data *config, int size) - { } -static inline void omap_init_mcpdm(void) {} --#endif -- --/*-------------------------------------------------------------------------*/ -- #if defined(CONFIG_MMC_OMAP) || defined(CONFIG_MMC_OMAP_MODULE) || \ defined(CONFIG_MMC_OMAP_HS) || defined(CONFIG_MMC_OMAP_HS_MODULE) diff --cc arch/arm/plat-omap/i2c.c index 2388b8eebaaa,0c7caf2458b4..a162b2c2ae15 --- a/arch/arm/plat-omap/i2c.c +++ b/arch/arm/plat-omap/i2c.c @@@ -151,10 -135,9 +151,10 @@@ static inline int omap2_i2c_add_bus(in { int l; struct omap_hwmod *oh; - struct omap_device *od; + struct platform_device *pdev; char oh_name[MAX_OMAP_I2C_HWMOD_NAME_LEN]; struct omap_i2c_bus_platform_data *pdata; + struct omap_i2c_dev_attr *dev_attr; omap2_i2c_mux_pins(bus_id); diff --cc drivers/gpio/gpio-mxc.c index 82f7b65baf72,b588f8a41e60..b81c98992114 --- a/drivers/gpio/gpio-mxc.c +++ b/drivers/gpio/gpio-mxc.c @@@ -30,8 -30,9 +30,10 @@@ #include #include #include +#include + #define irq_to_gpio(irq) ((irq) - MXC_GPIO_IRQ_START) + enum mxc_gpio_hwtype { IMX1_GPIO, /* runs on i.mx1 */ IMX21_GPIO, /* runs on i.mx21 and i.mx27 */