]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branch 'mfd/for-next'
authorStephen Rothwell <sfr@canb.auug.org.au>
Fri, 14 Oct 2011 03:00:21 +0000 (14:00 +1100)
committerStephen Rothwell <sfr@canb.auug.org.au>
Fri, 14 Oct 2011 03:00:21 +0000 (14:00 +1100)
Conflicts:
arch/arm/mach-imx/mach-mx31moboard.c
arch/arm/mach-u300/include/mach/irqs.h

19 files changed:
1  2 
arch/arm/mach-imx/mach-mx27_3ds.c
arch/arm/mach-imx/mach-mx31_3ds.c
arch/arm/mach-imx/mach-mx31lite.c
arch/arm/mach-imx/mach-mx31moboard.c
arch/arm/mach-imx/mach-pcm038.c
arch/arm/mach-mx5/mx51_efika.c
arch/arm/mach-omap2/Kconfig
arch/arm/mach-omap2/board-omap3beagle.c
arch/arm/mach-u300/include/mach/irqs.h
arch/arm/mach-ux500/board-u5500.c
arch/arm/mach-ux500/cpu.c
drivers/cpufreq/db8500-cpufreq.c
drivers/gpio/Kconfig
drivers/i2c/busses/Kconfig
drivers/input/misc/Kconfig
drivers/input/misc/Makefile
drivers/mfd/menelaus.c
drivers/mfd/wm8994-core.c
include/linux/mfd/wm8994/core.h

Simple merge
Simple merge
Simple merge
index fff7791b7e7c8731a3575ead8d2eb020d617bccc,f7e302d718b489d4564a154c0d073968f0ae6ba2..07034f44466a8c30f2c8ff3aaedca60513a61827
  #include <linux/spi/spi.h>
  #include <linux/types.h>
  #include <linux/memblock.h>
 +#include <linux/clk.h>
 +#include <linux/io.h>
 +#include <linux/err.h>
+ #include <linux/input.h>
  
  #include <linux/usb/otg.h>
  #include <linux/usb/ulpi.h>
Simple merge
Simple merge
Simple merge
index 3826493d1b2b1b47927d0a02fb9a334b28c76d84,9cc9fa9315d4bfa7f5fe653e36983fc188cba509..ac6de1d70887e568ee512a0c284ff174ff12c200
@@@ -447,8 -448,20 +448,13 @@@ static struct platform_device keys_gpi
  static void __init omap3_beagle_init_early(void)
  {
        omap2_init_common_infrastructure();
 -      omap2_init_common_devices(mt46h32m32lf6_sdrc_params,
 -                                mt46h32m32lf6_sdrc_params);
 -}
 -
 -static void __init omap3_beagle_init_irq(void)
 -{
 -      omap3_init_irq();
  }
  
+ static struct platform_device madc_hwmon = {
+       .name   = "twl4030_madc_hwmon",
+       .id     = -1,
+ };
  static struct platform_device *omap3_beagle_devices[] __initdata = {
        &leds_gpio,
        &keys_gpio,
index d270fea32926dcf7687013f4cb0fbe0bb4c70694,a6867b12773ed474d851d84d27511403d5f0fecc..db3fbfa1d6e97749e43ccb19d060c99a81fadb35
  #define IRQ_U300_NFIF                 45
  #define IRQ_U300_NFIF2                        46
  #define IRQ_U300_SYSCON_PLL_LOCK      47
 -#define U300_NR_IRQS                  48
 +#define U300_VIC_IRQS_END             48
  #endif
  
 -#define NR_IRQS U300_NR_IRQS
 +/* Maximum 8*7 GPIO lines */
 +#ifdef CONFIG_GPIO_U300
 +#define IRQ_U300_GPIO_BASE            (U300_VIC_IRQS_END)
 +#define IRQ_U300_GPIO_END             (IRQ_U300_GPIO_BASE + 56)
 +#else
 +#define IRQ_U300_GPIO_END             (U300_VIC_IRQS_END)
 +#endif
 +
- /* Optional AB3550 mixsig chip */
- #ifdef CONFIG_AB3550_CORE
- #define IRQ_AB3550_BASE                       (IRQ_U300_GPIO_END)
- #define IRQ_AB3550_END                        (IRQ_AB3550_BASE + 38)
- #else
- #define IRQ_AB3550_END                        (IRQ_U300_GPIO_END)
- #endif
- #define NR_IRQS                               (IRQ_AB3550_END)
++#define NR_IRQS                               (IRQ_U300_GPIO_END)
  
  #endif
index e014aa749b039e6ef7da7f9d34e7c7f6ea65c9b8,5c9e66502ebb8e367b5dc1f1cb760d7248e4b15f..82025ba70c0301b11326ac9f6ce3b2da6bcbefa4
@@@ -8,8 -8,10 +8,9 @@@
  #include <linux/init.h>
  #include <linux/platform_device.h>
  #include <linux/amba/bus.h>
 -#include <linux/gpio.h>
  #include <linux/irq.h>
  #include <linux/i2c.h>
+ #include <linux/mfd/ab5500/ab5500.h>
  
  #include <asm/mach/arch.h>
  #include <asm/mach-types.h>
index 1405d0eb7edb1ff11de52d87553c8346c6f638d1,bb5653993ca288e77d8c6ecb80dae13d99496def..f4185749437533f5acd930dcc612113f57556eef
@@@ -47,6 -53,96 +47,6 @@@ void __init ux500_init_irq(void
        if (cpu_is_u5500())
                db5500_prcmu_early_init();
        if (cpu_is_u8500())
-               prcmu_early_init();
+               db8500_prcmu_early_init();
        clk_init();
  }
 -
 -#ifdef CONFIG_CACHE_L2X0
 -static inline void ux500_cache_wait(void __iomem *reg, unsigned long mask)
 -{
 -      /* wait for the operation to complete */
 -      while (readl_relaxed(reg) & mask)
 -              ;
 -}
 -
 -static inline void ux500_cache_sync(void)
 -{
 -      void __iomem *base = l2x0_base;
 -
 -      writel_relaxed(0, base + L2X0_CACHE_SYNC);
 -      ux500_cache_wait(base + L2X0_CACHE_SYNC, 1);
 -}
 -
 -/*
 - * The L2 cache cannot be turned off in the non-secure world.
 - * Dummy until a secure service is in place.
 - */
 -static void ux500_l2x0_disable(void)
 -{
 -}
 -
 -/*
 - * This is only called when doing a kexec, just after turning off the L2
 - * and L1 cache, and it is surrounded by a spinlock in the generic version.
 - * However, we're not really turning off the L2 cache right now and the
 - * PL310 does not support exclusive accesses (used to implement the spinlock).
 - * So, the invalidation needs to be done without the spinlock.
 - */
 -static void ux500_l2x0_inv_all(void)
 -{
 -      void __iomem *base = l2x0_base;
 -      uint32_t l2x0_way_mask = (1<<16) - 1;   /* Bitmask of active ways */
 -
 -      /* invalidate all ways */
 -      writel_relaxed(l2x0_way_mask, base + L2X0_INV_WAY);
 -      ux500_cache_wait(base + L2X0_INV_WAY, l2x0_way_mask);
 -      ux500_cache_sync();
 -}
 -
 -static int ux500_l2x0_init(void)
 -{
 -      if (cpu_is_u5500())
 -              l2x0_base = __io_address(U5500_L2CC_BASE);
 -      else if (cpu_is_u8500())
 -              l2x0_base = __io_address(U8500_L2CC_BASE);
 -      else
 -              ux500_unknown_soc();
 -
 -      /* 64KB way size, 8 way associativity, force WA */
 -      l2x0_init(l2x0_base, 0x3e060000, 0xc0000fff);
 -
 -      /* Override invalidate function */
 -      outer_cache.disable = ux500_l2x0_disable;
 -      outer_cache.inv_all = ux500_l2x0_inv_all;
 -
 -      return 0;
 -}
 -early_initcall(ux500_l2x0_init);
 -#endif
 -
 -static void __init ux500_timer_init(void)
 -{
 -#ifdef CONFIG_LOCAL_TIMERS
 -      /* Setup the local timer base */
 -      if (cpu_is_u5500())
 -              twd_base = __io_address(U5500_TWD_BASE);
 -      else if (cpu_is_u8500())
 -              twd_base = __io_address(U8500_TWD_BASE);
 -      else
 -              ux500_unknown_soc();
 -#endif
 -      if (cpu_is_u5500())
 -              mtu_base = __io_address(U5500_MTU0_BASE);
 -      else if (cpu_is_u8500ed())
 -              mtu_base = __io_address(U8500_MTU0_BASE_ED);
 -      else if (cpu_is_u8500())
 -              mtu_base = __io_address(U8500_MTU0_BASE);
 -      else
 -              ux500_unknown_soc();
 -
 -      nmdk_timer_init();
 -}
 -
 -struct sys_timer ux500_timer = {
 -      .init   = ux500_timer_init,
 -};
Simple merge
index 4ab5d6614ffa3e63a90dd47d9a0e6364a90b4291,fbc5fd449a047d51f9cb1df3fa9be5fe01048e66..646503036227b2c98c2f32461c47deddf1d3d4c1
@@@ -170,18 -178,9 +170,18 @@@ config GPIO_SC
          The Intel Tunnel Creek processor has 5 GPIOs powered by the
          core power rail and 9 from suspend power supply.
  
 +config GPIO_U300
 +      bool "ST-Ericsson U300 COH 901 335/571 GPIO"
 +      depends on GPIOLIB && ARCH_U300
 +      help
 +        Say yes here to support GPIO interface on ST-Ericsson U300.
 +        The names of the two IP block variants supported are
 +        COH 901 335 and COH 901 571/3. They contain 3, 5 or 7
 +        ports of 8 GPIO pins each.
 +
  config GPIO_VX855
        tristate "VIA VX855/VX875 GPIO"
-       depends on MFD_SUPPORT && PCI
+       depends on PCI
        select MFD_CORE
        select MFD_VX855
        help
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge