Merge tag 'multiplatform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Thu, 2 May 2013 16:38:16 +0000 (09:38 -0700)]
Pull ARM SoC multiplatform updates from Olof Johansson:
 "More multiplatform enablement for ARM platforms.  The ones converted
  in this branch are:

   - bcm2835
   - cns3xxx
   - sirf
   - nomadik
   - msx
   - spear
   - tegra
   - ux500

  We're getting close to having most of them converted!

  One of the larger platforms remaining is Samsung Exynos, and there are
  a bunch of supporting patches in this merge window for it.  There was
  a patch in this branch to a early version of multiplatform conversion,
  but it ended up being reverted due to need of more bake time.  The
  revert commit is part of the branch since it would have required
  rebasing multiple dependent branches and they were stable by then"

* tag 'multiplatform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (70 commits)
  mmc: sdhci-s3c: Fix operation on non-single image Samsung platforms
  clocksource: nomadik-mtu: fix up clocksource/timer
  Revert "ARM: exynos: enable multiplatform support"
  ARM: SPEAr13xx: Fix typo "ARCH_HAVE_CPUFREQ"
  ARM: exynos: enable multiplatform support
  rtc: s3c: make header file local
  mtd: onenand/samsung: make regs-onenand.h file local
  thermal/exynos: remove unnecessary header inclusions
  mmc: sdhci-s3c: remove platform dependencies
  ARM: samsung: move mfc device definition to s5p-dev-mfc.c
  ARM: exynos: move debug-macro.S to include/debug/
  ARM: exynos: prepare for sparse IRQ
  ARM: exynos: introduce EXYNOS_ATAGS symbol
  ARM: tegra: build assembly files with -march=armv7-a
  ARM: Push selects for TWD/SCU into machine entries
  ARM: ux500: build hotplug.o for ARMv7-a
  ARM: ux500: move to multiplatform
  ARM: ux500: make remaining headers local
  ARM: ux500: make irqs.h local to platform
  ARM: ux500: get rid of <mach/[hardware|db8500-regs].h>
  ...

36 files changed:
1  2 
arch/arm/Kconfig
arch/arm/Makefile
arch/arm/configs/bcm2835_defconfig
arch/arm/configs/mxs_defconfig
arch/arm/mach-cns3xxx/cns3xxx.h
arch/arm/mach-cns3xxx/core.c
arch/arm/mach-exynos/Kconfig
arch/arm/mach-exynos/mach-origen.c
arch/arm/mach-exynos/mach-smdkv310.c
arch/arm/mach-imx/Kconfig
arch/arm/mach-mxs/Kconfig
arch/arm/mach-omap2/Kconfig
arch/arm/mach-prima2/platsmp.c
arch/arm/mach-spear/platsmp.c
arch/arm/mach-tegra/Kconfig
arch/arm/mach-tegra/Makefile
arch/arm/mach-tegra/powergate.c
arch/arm/mach-ux500/board-mop500-sdi.c
arch/arm/mach-ux500/board-mop500.c
arch/arm/mach-ux500/board-mop500.h
arch/arm/mach-ux500/cache-l2x0.c
arch/arm/mach-ux500/cpu-db8500.c
arch/arm/mach-ux500/cpuidle.c
arch/arm/mach-ux500/platsmp.c
arch/arm/mach-vexpress/Kconfig
arch/arm/plat-samsung/devs.c
arch/arm/plat-samsung/include/plat/sdhci.h
arch/arm/plat-samsung/irq-vic-timer.c
drivers/clk/spear/spear1340_clock.c
drivers/clk/ux500/u8500_clk.c
drivers/clocksource/Makefile
drivers/crypto/ux500/cryp/cryp_core.c
drivers/irqchip/Makefile
drivers/pinctrl/pinctrl-sirf.c
drivers/rtc/rtc-s3c.c
drivers/staging/ste_rmi4/synaptics_i2c_rmi4.c

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -663,9 -565,7 +606,8 @@@ static struct platform_device *snowball
        &snowball_key_dev,
        &snowball_sbnet_dev,
        &snowball_gpio_en_3v3_regulator_dev,
-       &u8500_thsens_device,
        &u8500_cpufreq_cooling_device,
 +      &sdi0_regulator,
  };
  
  static void __init mop500_init_machine(void)
Simple merge
Simple merge
Simple merge
  #include <asm/cpuidle.h>
  #include <asm/proc-fns.h>
  
+ #include "db8500-regs.h"
  static atomic_t master = ATOMIC_INIT(0);
  static DEFINE_SPINLOCK(master_lock);
 -static DEFINE_PER_CPU(struct cpuidle_device, ux500_cpuidle_device);
  
  static inline int ux500_enter_idle(struct cpuidle_device *dev,
                                   struct cpuidle_driver *drv, int index)
@@@ -109,9 -118,22 +112,9 @@@ static struct cpuidle_driver ux500_idle
        .state_count = 2,
  };
  
 -/*
 - * For each cpu, setup the broadcast timer because we will
 - * need to migrate the timers for the states >= ApIdle.
 - */
 -static void ux500_setup_broadcast_timer(void *arg)
 -{
 -      int cpu = smp_processor_id();
 -      clockevents_notify(CLOCK_EVT_NOTIFY_BROADCAST_ON, &cpu);
 -}
 -
  int __init ux500_idle_init(void)
  {
-         /* Configure wake up reasons */
 -      int ret, cpu;
 -      struct cpuidle_device *device;
 -
+       /* Configure wake up reasons */
        prcmu_enable_wakeups(PRCMU_WAKEUP(ARM) | PRCMU_WAKEUP(RTC) |
                             PRCMU_WAKEUP(ABB));
  
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -319,15 -319,14 +319,15 @@@ void u8500_clk_init(u32 clkrst1_base, u
        clk_register_clkdev(clk, NULL, "gpio.7");
        clk_register_clkdev(clk, NULL, "gpioblock1");
  
-       clk = clk_reg_prcc_pclk("p2_pclk12", "per2clk", U8500_CLKRST2_BASE,
+       clk = clk_reg_prcc_pclk("p2_pclk12", "per2clk", clkrst2_base,
                                BIT(12), 0);
  
-       clk = clk_reg_prcc_pclk("p3_pclk0", "per3clk", U8500_CLKRST3_BASE,
+       clk = clk_reg_prcc_pclk("p3_pclk0", "per3clk", clkrst3_base,
                                BIT(0), 0);
 -      clk_register_clkdev(clk, NULL, "fsmc");
 +      clk_register_clkdev(clk, "fsmc", NULL);
 +      clk_register_clkdev(clk, NULL, "smsc911x");
  
-       clk = clk_reg_prcc_pclk("p3_pclk1", "per3clk", U8500_CLKRST3_BASE,
+       clk = clk_reg_prcc_pclk("p3_pclk1", "per3clk", clkrst3_base,
                                BIT(1), 0);
        clk_register_clkdev(clk, "apb_pclk", "ssp0");
  
@@@ -16,11 -16,12 +16,13 @@@ obj-$(CONFIG_CLKSRC_NOMADIK_MTU)   += nom
  obj-$(CONFIG_CLKSRC_DBX500_PRCMU)     += clksrc-dbx500-prcmu.o
  obj-$(CONFIG_ARMADA_370_XP_TIMER)     += time-armada-370-xp.o
  obj-$(CONFIG_ARCH_BCM2835)    += bcm2835_timer.o
+ obj-$(CONFIG_ARCH_MARCO)      += timer-marco.o
  obj-$(CONFIG_ARCH_MXS)                += mxs_timer.o
+ obj-$(CONFIG_ARCH_PRIMA2)     += timer-prima2.o
 -obj-$(CONFIG_SUNXI_TIMER)     += sunxi_timer.o
 +obj-$(CONFIG_SUN4I_TIMER)     += sun4i_timer.o
  obj-$(CONFIG_ARCH_TEGRA)      += tegra20_timer.o
  obj-$(CONFIG_VT8500_TIMER)    += vt8500_timer.o
 +obj-$(CONFIG_ARCH_BCM)                += bcm_kona_timer.o
  
  obj-$(CONFIG_ARM_ARCH_TIMER)          += arm_arch_timer.o
  obj-$(CONFIG_CLKSRC_METAG_GENERIC)    += metag_generic.o
Simple merge
Simple merge
Simple merge
Simple merge