Merge tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm...
authorLinus Torvalds <torvalds@linux-foundation.org>
Fri, 24 Jan 2014 02:36:01 +0000 (18:36 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 24 Jan 2014 02:36:01 +0000 (18:36 -0800)
Pull ARM SoC non-critical fixes from Olof Johansson:
 "As usual, we have a batch of fixes that weren't considered significant
  enough to warrant going into the later -rcs for previous release, so
  they are queued up on this branch.

  A handful of these are for various DT fixups for Samsung platforms,
  and a handful of other minor things.

  There are also a couple of stable-marked patches for mvebu -- they
  came in quite late and we decided to keep them deferred until the
  first -stable release to get more coverage instead of squeezing them
  into 3.13"

* tag 'fixes-nc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (32 commits)
  ARM: at91: smc: bug fix in sam9_smc_cs_read()
  i2c: mv64xxx: Document the newly introduced Armada XP A0 compatible
  i2c: mv64xxx: Fix bus hang on A0 version of the Armada XP SoCs
  ARM: mvebu: Add quirk for i2c for the OpenBlocks AX3-4 board
  ARM: mvebu: Add support to get the ID and the revision of a SoC
  ARM: dts: msm: Fix gpio interrupt and reg length
  irqchip: sirf: set IRQ_LEVEL status_flags
  ARM: OMAP2+: gpmc: Move legacy GPMC width setting
  ARM: OMAP2+: gpmc: Introduce gpmc_set_legacy()
  ARM: OMAP2+: gpmc: Move initialization outside the gpmc_t condition
  ARM: OMAP2+: board-generic: update SoC compatibility strings
  Documentation: dt: OMAP: explicitly state SoC compatible strings
  ARM: OMAP2+: enable AM33xx SOC EVM audio
  ARM: OMAP2+: Select USB PHY for AM335x SoC
  ARM: bcm2835: Fix grammar in help message
  ARM: msm: trout: fix uninit var warning
  ARM: dts: Use MSHC controller for eMMC memory for exynos4412-trats2
  ARM: dts: Fix definition of MSHC device tree nodes for exynos4x12
  ARM: dts: add clock provider for mshc node for Exynos4412 SOC
  clk: samsung: exynos4: Fix definition of div_mmc_pre4 divider
  ...

1  2 
arch/arm/boot/dts/exynos5250.dtsi
arch/arm/mach-s3c64xx/mach-mini6410.c
drivers/clk/samsung/clk-exynos4.c

index 177becde7a268bdcee91be7b049567d17daf9809,d871e6241d8ad81c8ece319cb9aee2b4633edba8..6feaa1c454fae8783b7fe320a3d5a5b5d0ab5444
                        device_type = "cpu";
                        compatible = "arm,cortex-a15";
                        reg = <0>;
+                       clock-frequency = <1700000000>;
                };
                cpu@1 {
                        device_type = "cpu";
                        compatible = "arm,cortex-a15";
                        reg = <1>;
+                       clock-frequency = <1700000000>;
                };
        };
  
                        compatible = "arm,pl330", "arm,primecell";
                        reg = <0x10800000 0x1000>;
                        interrupts = <0 33 0>;
 -                      clocks = <&clock 271>;
 +                      clocks = <&clock 346>;
                        clock-names = "apb_pclk";
                        #dma-cells = <1>;
                        #dma-channels = <8>;
index 8c84d3448dac2c8820e2a46a961fb07e4671c7e4,97ae4703cb784ee607981081c72522f7f16b1e4f..8d553a418e1c9076898878d0a8039f5597804112
  
  #include <mach/map.h>
  #include <mach/regs-gpio.h>
 +#include <mach/gpio-samsung.h>
  
  #include <plat/adc.h>
  #include <plat/cpu.h>
  #include <plat/devs.h>
  #include <plat/fb.h>
  #include <linux/platform_data/mtd-nand-s3c2410.h>
+ #include <linux/platform_data/mmc-sdhci-s3c.h>
  #include <plat/regs-serial.h>
+ #include <plat/sdhci.h>
  #include <linux/platform_data/touchscreen-s3c2410.h>
  
  #include <video/platform_lcd.h>
@@@ -215,6 -216,13 +217,13 @@@ static struct platform_device mini6410_
        .dev.platform_data      = &mini6410_lcd_power_data,
  };
  
+ static struct s3c_sdhci_platdata mini6410_hsmmc1_pdata = {
+       .max_width              = 4,
+       .cd_type                = S3C_SDHCI_CD_GPIO,
+       .ext_cd_gpio            = S3C64XX_GPN(10),
+       .ext_cd_gpio_invert     = true,
+ };
  static struct platform_device *mini6410_devices[] __initdata = {
        &mini6410_device_eth,
        &s3c_device_hsmmc0,
@@@ -322,6 -330,7 +331,7 @@@ static void __init mini6410_machine_ini
  
        s3c_nand_set_platdata(&mini6410_nand_info);
        s3c_fb_set_platdata(&mini6410_lcd_pdata[features.lcd_index]);
+       s3c_sdhci1_set_platdata(&mini6410_hsmmc1_pdata);
        s3c24xx_ts_set_platdata(NULL);
  
        /* configure nCS1 width to 16 bits */
index 1a7c1b929c690b03b2b24a1423da55a97b66aa00,d967571d305ee6d32f80d32ec401fb86fb50d7e8..3852e44db0f83e75c6d87676118ba82e2071a777
@@@ -39,7 -39,7 +39,7 @@@
  #define SRC_TOP1              0xc214
  #define SRC_CAM                       0xc220
  #define SRC_TV                        0xc224
 -#define SRC_MFC                       0xcc28
 +#define SRC_MFC                       0xc228
  #define SRC_G3D                       0xc22c
  #define E4210_SRC_IMAGE               0xc230
  #define SRC_LCD0              0xc234
@@@ -530,7 -530,8 +530,8 @@@ static struct samsung_div_clock exynos4
        DIV(sclk_i2s1, "sclk_i2s1", "sclk_audio1", DIV_PERIL5, 0, 6),
        DIV(sclk_i2s2, "sclk_i2s2", "sclk_audio2", DIV_PERIL5, 8, 6),
        DIV(none, "div_mmc4", "mout_mmc4", DIV_FSYS3, 0, 4),
-       DIV(none, "div_mmc_pre4", "div_mmc4", DIV_FSYS3, 8, 8),
+       DIV_F(none, "div_mmc_pre4", "div_mmc4", DIV_FSYS3, 8, 8,
+                       CLK_SET_RATE_PARENT, 0),
        DIV(none, "div_uart0", "mout_uart0", DIV_PERIL0, 0, 4),
        DIV(none, "div_uart1", "mout_uart1", DIV_PERIL0, 4, 4),
        DIV(none, "div_uart2", "mout_uart2", DIV_PERIL0, 8, 4),