aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt12
-rw-r--r--arch/arm/boot/dts/at91sam9x5.dtsi4
-rw-r--r--arch/arm/boot/dts/dove.dtsi2
-rw-r--r--arch/arm/boot/dts/exynos4210.dtsi6
-rw-r--r--arch/arm/boot/dts/exynos4x12.dtsi8
-rw-r--r--arch/arm/boot/dts/exynos5440.dtsi4
-rw-r--r--arch/arm/boot/dts/imx6q.dtsi2
-rw-r--r--arch/arm/configs/mvebu_defconfig2
-rw-r--r--arch/arm/configs/u8500_defconfig6
-rw-r--r--arch/arm/include/asm/smp_scu.h8
-rw-r--r--arch/arm/kernel/smp_scu.c2
-rw-r--r--arch/arm/mach-exynos/common.c10
-rw-r--r--arch/arm/mach-highbank/highbank.c3
-rw-r--r--arch/arm/mach-highbank/sysregs.h4
-rw-r--r--arch/arm/mach-s3c24xx/common.c2
-rw-r--r--arch/arm/mach-ux500/cpu.c6
-rw-r--r--arch/arm/mach-ux500/cpuidle.c4
-rw-r--r--arch/arm/plat-orion/mpp.c2
-rw-r--r--drivers/gpio/gpio-samsung.c6
-rw-r--r--drivers/mfd/vexpress-sysreg.c2
-rw-r--r--drivers/pinctrl/pinctrl-samsung.c4
21 files changed, 56 insertions, 43 deletions
diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
index e97a27856b21..4598a47aa0cd 100644
--- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
+++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
@@ -7,9 +7,9 @@ on-chip controllers onto these pads.
7 7
8Required Properties: 8Required Properties:
9- compatible: should be one of the following. 9- compatible: should be one of the following.
10 - "samsung,pinctrl-exynos4210": for Exynos4210 compatible pin-controller. 10 - "samsung,exynos4210-pinctrl": for Exynos4210 compatible pin-controller.
11 - "samsung,pinctrl-exynos4x12": for Exynos4x12 compatible pin-controller. 11 - "samsung,exynos4x12-pinctrl": for Exynos4x12 compatible pin-controller.
12 - "samsung,pinctrl-exynos5250": for Exynos5250 compatible pin-controller. 12 - "samsung,exynos5250-pinctrl": for Exynos5250 compatible pin-controller.
13 13
14- reg: Base address of the pin controller hardware module and length of 14- reg: Base address of the pin controller hardware module and length of
15 the address space it occupies. 15 the address space it occupies.
@@ -142,7 +142,7 @@ the following format 'pinctrl{n}' where n is a unique number for the alias.
142Example: A pin-controller node with pin banks: 142Example: A pin-controller node with pin banks:
143 143
144 pinctrl_0: pinctrl@11400000 { 144 pinctrl_0: pinctrl@11400000 {
145 compatible = "samsung,pinctrl-exynos4210"; 145 compatible = "samsung,exynos4210-pinctrl";
146 reg = <0x11400000 0x1000>; 146 reg = <0x11400000 0x1000>;
147 interrupts = <0 47 0>; 147 interrupts = <0 47 0>;
148 148
@@ -185,7 +185,7 @@ Example: A pin-controller node with pin banks:
185Example 1: A pin-controller node with pin groups. 185Example 1: A pin-controller node with pin groups.
186 186
187 pinctrl_0: pinctrl@11400000 { 187 pinctrl_0: pinctrl@11400000 {
188 compatible = "samsung,pinctrl-exynos4210"; 188 compatible = "samsung,exynos4210-pinctrl";
189 reg = <0x11400000 0x1000>; 189 reg = <0x11400000 0x1000>;
190 interrupts = <0 47 0>; 190 interrupts = <0 47 0>;
191 191
@@ -230,7 +230,7 @@ Example 1: A pin-controller node with pin groups.
230Example 2: A pin-controller node with external wakeup interrupt controller node. 230Example 2: A pin-controller node with external wakeup interrupt controller node.
231 231
232 pinctrl_1: pinctrl@11000000 { 232 pinctrl_1: pinctrl@11000000 {
233 compatible = "samsung,pinctrl-exynos4210"; 233 compatible = "samsung,exynos4210-pinctrl";
234 reg = <0x11000000 0x1000>; 234 reg = <0x11000000 0x1000>;
235 interrupts = <0 46 0> 235 interrupts = <0 46 0>
236 236
diff --git a/arch/arm/boot/dts/at91sam9x5.dtsi b/arch/arm/boot/dts/at91sam9x5.dtsi
index 8ecca6948d81..0c6009080b88 100644
--- a/arch/arm/boot/dts/at91sam9x5.dtsi
+++ b/arch/arm/boot/dts/at91sam9x5.dtsi
@@ -197,9 +197,9 @@
197 }; 197 };
198 198
199 usart3 { 199 usart3 {
200 pinctrl_uart3: usart3-0 { 200 pinctrl_usart3: usart3-0 {
201 atmel,pins = 201 atmel,pins =
202 <2 23 0x2 0x1 /* PC22 periph B with pullup */ 202 <2 22 0x2 0x1 /* PC22 periph B with pullup */
203 2 23 0x2 0x0>; /* PC23 periph B */ 203 2 23 0x2 0x0>; /* PC23 periph B */
204 }; 204 };
205 205
diff --git a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi
index 42eac1ff3cc8..740630f9cd65 100644
--- a/arch/arm/boot/dts/dove.dtsi
+++ b/arch/arm/boot/dts/dove.dtsi
@@ -93,6 +93,7 @@
93 reg = <0xd0400 0x20>; 93 reg = <0xd0400 0x20>;
94 ngpios = <32>; 94 ngpios = <32>;
95 interrupt-controller; 95 interrupt-controller;
96 #interrupt-cells = <2>;
96 interrupts = <12>, <13>, <14>, <60>; 97 interrupts = <12>, <13>, <14>, <60>;
97 }; 98 };
98 99
@@ -103,6 +104,7 @@
103 reg = <0xd0420 0x20>; 104 reg = <0xd0420 0x20>;
104 ngpios = <32>; 105 ngpios = <32>;
105 interrupt-controller; 106 interrupt-controller;
107 #interrupt-cells = <2>;
106 interrupts = <61>; 108 interrupts = <61>;
107 }; 109 };
108 110
diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi
index e31bfc4a6f09..2feffc70814c 100644
--- a/arch/arm/boot/dts/exynos4210.dtsi
+++ b/arch/arm/boot/dts/exynos4210.dtsi
@@ -48,13 +48,13 @@
48 }; 48 };
49 49
50 pinctrl_0: pinctrl@11400000 { 50 pinctrl_0: pinctrl@11400000 {
51 compatible = "samsung,pinctrl-exynos4210"; 51 compatible = "samsung,exynos4210-pinctrl";
52 reg = <0x11400000 0x1000>; 52 reg = <0x11400000 0x1000>;
53 interrupts = <0 47 0>; 53 interrupts = <0 47 0>;
54 }; 54 };
55 55
56 pinctrl_1: pinctrl@11000000 { 56 pinctrl_1: pinctrl@11000000 {
57 compatible = "samsung,pinctrl-exynos4210"; 57 compatible = "samsung,exynos4210-pinctrl";
58 reg = <0x11000000 0x1000>; 58 reg = <0x11000000 0x1000>;
59 interrupts = <0 46 0>; 59 interrupts = <0 46 0>;
60 60
@@ -66,7 +66,7 @@
66 }; 66 };
67 67
68 pinctrl_2: pinctrl@03860000 { 68 pinctrl_2: pinctrl@03860000 {
69 compatible = "samsung,pinctrl-exynos4210"; 69 compatible = "samsung,exynos4210-pinctrl";
70 reg = <0x03860000 0x1000>; 70 reg = <0x03860000 0x1000>;
71 }; 71 };
72 72
diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi
index 179a62e46c9d..9a8780694909 100644
--- a/arch/arm/boot/dts/exynos4x12.dtsi
+++ b/arch/arm/boot/dts/exynos4x12.dtsi
@@ -37,13 +37,13 @@
37 }; 37 };
38 38
39 pinctrl_0: pinctrl@11400000 { 39 pinctrl_0: pinctrl@11400000 {
40 compatible = "samsung,pinctrl-exynos4x12"; 40 compatible = "samsung,exynos4x12-pinctrl";
41 reg = <0x11400000 0x1000>; 41 reg = <0x11400000 0x1000>;
42 interrupts = <0 47 0>; 42 interrupts = <0 47 0>;
43 }; 43 };
44 44
45 pinctrl_1: pinctrl@11000000 { 45 pinctrl_1: pinctrl@11000000 {
46 compatible = "samsung,pinctrl-exynos4x12"; 46 compatible = "samsung,exynos4x12-pinctrl";
47 reg = <0x11000000 0x1000>; 47 reg = <0x11000000 0x1000>;
48 interrupts = <0 46 0>; 48 interrupts = <0 46 0>;
49 49
@@ -55,14 +55,14 @@
55 }; 55 };
56 56
57 pinctrl_2: pinctrl@03860000 { 57 pinctrl_2: pinctrl@03860000 {
58 compatible = "samsung,pinctrl-exynos4x12"; 58 compatible = "samsung,exynos4x12-pinctrl";
59 reg = <0x03860000 0x1000>; 59 reg = <0x03860000 0x1000>;
60 interrupt-parent = <&combiner>; 60 interrupt-parent = <&combiner>;
61 interrupts = <10 0>; 61 interrupts = <10 0>;
62 }; 62 };
63 63
64 pinctrl_3: pinctrl@106E0000 { 64 pinctrl_3: pinctrl@106E0000 {
65 compatible = "samsung,pinctrl-exynos4x12"; 65 compatible = "samsung,exynos4x12-pinctrl";
66 reg = <0x106E0000 0x1000>; 66 reg = <0x106E0000 0x1000>;
67 interrupts = <0 72 0>; 67 interrupts = <0 72 0>;
68 }; 68 };
diff --git a/arch/arm/boot/dts/exynos5440.dtsi b/arch/arm/boot/dts/exynos5440.dtsi
index 024269de8ee5..5f3562ad6746 100644
--- a/arch/arm/boot/dts/exynos5440.dtsi
+++ b/arch/arm/boot/dts/exynos5440.dtsi
@@ -86,7 +86,7 @@
86 }; 86 };
87 87
88 pinctrl { 88 pinctrl {
89 compatible = "samsung,pinctrl-exynos5440"; 89 compatible = "samsung,exynos5440-pinctrl";
90 reg = <0xE0000 0x1000>; 90 reg = <0xE0000 0x1000>;
91 interrupt-controller; 91 interrupt-controller;
92 #interrupt-cells = <2>; 92 #interrupt-cells = <2>;
@@ -154,6 +154,6 @@
154 rtc { 154 rtc {
155 compatible = "samsung,s3c6410-rtc"; 155 compatible = "samsung,s3c6410-rtc";
156 reg = <0x130000 0x1000>; 156 reg = <0x130000 0x1000>;
157 interrupts = <0 16 0>, <0 17 0>; 157 interrupts = <0 17 0>, <0 16 0>;
158 }; 158 };
159}; 159};
diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
index d6265ca97119..ff1205ea5719 100644
--- a/arch/arm/boot/dts/imx6q.dtsi
+++ b/arch/arm/boot/dts/imx6q.dtsi
@@ -866,7 +866,7 @@
866 compatible = "fsl,imx6q-fec"; 866 compatible = "fsl,imx6q-fec";
867 reg = <0x02188000 0x4000>; 867 reg = <0x02188000 0x4000>;
868 interrupts = <0 118 0x04 0 119 0x04>; 868 interrupts = <0 118 0x04 0 119 0x04>;
869 clocks = <&clks 117>, <&clks 117>, <&clks 177>; 869 clocks = <&clks 117>, <&clks 117>, <&clks 190>;
870 clock-names = "ipg", "ahb", "ptp"; 870 clock-names = "ipg", "ahb", "ptp";
871 status = "disabled"; 871 status = "disabled";
872 }; 872 };
diff --git a/arch/arm/configs/mvebu_defconfig b/arch/arm/configs/mvebu_defconfig
index b5bc96cb65a7..cbd91bce1ca9 100644
--- a/arch/arm/configs/mvebu_defconfig
+++ b/arch/arm/configs/mvebu_defconfig
@@ -33,6 +33,8 @@ CONFIG_MVNETA=y
33CONFIG_MARVELL_PHY=y 33CONFIG_MARVELL_PHY=y
34CONFIG_SERIAL_8250=y 34CONFIG_SERIAL_8250=y
35CONFIG_SERIAL_8250_CONSOLE=y 35CONFIG_SERIAL_8250_CONSOLE=y
36CONFIG_I2C=y
37CONFIG_I2C_MV64XXX=y
36CONFIG_SERIAL_8250_DW=y 38CONFIG_SERIAL_8250_DW=y
37CONFIG_GPIOLIB=y 39CONFIG_GPIOLIB=y
38CONFIG_GPIO_SYSFS=y 40CONFIG_GPIO_SYSFS=y
diff --git a/arch/arm/configs/u8500_defconfig b/arch/arm/configs/u8500_defconfig
index 231dca604737..426270fe080d 100644
--- a/arch/arm/configs/u8500_defconfig
+++ b/arch/arm/configs/u8500_defconfig
@@ -66,9 +66,9 @@ CONFIG_SPI=y
66CONFIG_SPI_PL022=y 66CONFIG_SPI_PL022=y
67CONFIG_GPIO_STMPE=y 67CONFIG_GPIO_STMPE=y
68CONFIG_GPIO_TC3589X=y 68CONFIG_GPIO_TC3589X=y
69CONFIG_POWER_SUPPLY=y 69# CONFIG_POWER_SUPPLY is not set
70CONFIG_AB8500_BM=y 70# CONFIG_AB8500_BM is not set
71CONFIG_AB8500_BATTERY_THERM_ON_BATCTRL=y 71# CONFIG_AB8500_BATTERY_THERM_ON_BATCTRL is not set
72CONFIG_THERMAL=y 72CONFIG_THERMAL=y
73CONFIG_CPU_THERMAL=y 73CONFIG_CPU_THERMAL=y
74CONFIG_MFD_STMPE=y 74CONFIG_MFD_STMPE=y
diff --git a/arch/arm/include/asm/smp_scu.h b/arch/arm/include/asm/smp_scu.h
index 4eb6d005ffaa..86dff32a0737 100644
--- a/arch/arm/include/asm/smp_scu.h
+++ b/arch/arm/include/asm/smp_scu.h
@@ -7,8 +7,14 @@
7 7
8#ifndef __ASSEMBLER__ 8#ifndef __ASSEMBLER__
9unsigned int scu_get_core_count(void __iomem *); 9unsigned int scu_get_core_count(void __iomem *);
10void scu_enable(void __iomem *);
11int scu_power_mode(void __iomem *, unsigned int); 10int scu_power_mode(void __iomem *, unsigned int);
11
12#ifdef CONFIG_SMP
13void scu_enable(void __iomem *scu_base);
14#else
15static inline void scu_enable(void __iomem *scu_base) {}
16#endif
17
12#endif 18#endif
13 19
14#endif 20#endif
diff --git a/arch/arm/kernel/smp_scu.c b/arch/arm/kernel/smp_scu.c
index b9f015e843d8..45eac87ed66a 100644
--- a/arch/arm/kernel/smp_scu.c
+++ b/arch/arm/kernel/smp_scu.c
@@ -75,7 +75,7 @@ void scu_enable(void __iomem *scu_base)
75int scu_power_mode(void __iomem *scu_base, unsigned int mode) 75int scu_power_mode(void __iomem *scu_base, unsigned int mode)
76{ 76{
77 unsigned int val; 77 unsigned int val;
78 int cpu = cpu_logical_map(smp_processor_id()); 78 int cpu = MPIDR_AFFINITY_LEVEL(cpu_logical_map(smp_processor_id()), 0);
79 79
80 if (mode > 3 || mode == 1 || cpu > 3) 80 if (mode > 3 || mode == 1 || cpu > 3)
81 return -EINVAL; 81 return -EINVAL;
diff --git a/arch/arm/mach-exynos/common.c b/arch/arm/mach-exynos/common.c
index 1a89824a5f78..0c7e3ad7ba93 100644
--- a/arch/arm/mach-exynos/common.c
+++ b/arch/arm/mach-exynos/common.c
@@ -299,6 +299,7 @@ void exynos4_restart(char mode, const char *cmd)
299 299
300void exynos5_restart(char mode, const char *cmd) 300void exynos5_restart(char mode, const char *cmd)
301{ 301{
302 struct device_node *np;
302 u32 val; 303 u32 val;
303 void __iomem *addr; 304 void __iomem *addr;
304 305
@@ -306,8 +307,9 @@ void exynos5_restart(char mode, const char *cmd)
306 val = 0x1; 307 val = 0x1;
307 addr = EXYNOS_SWRESET; 308 addr = EXYNOS_SWRESET;
308 } else if (of_machine_is_compatible("samsung,exynos5440")) { 309 } else if (of_machine_is_compatible("samsung,exynos5440")) {
309 val = (0x10 << 20) | (0x1 << 16); 310 np = of_find_compatible_node(NULL, NULL, "samsung,exynos5440-clock");
310 addr = EXYNOS5440_SWRESET; 311 addr = of_iomap(np, 0) + 0xcc;
312 val = (0xfff << 20) | (0x1 << 16);
311 } else { 313 } else {
312 pr_err("%s: cannot support non-DT\n", __func__); 314 pr_err("%s: cannot support non-DT\n", __func__);
313 return; 315 return;
@@ -1031,8 +1033,8 @@ static int __init exynos_init_irq_eint(void)
1031 * interrupt support code here can be completely removed. 1033 * interrupt support code here can be completely removed.
1032 */ 1034 */
1033 static const struct of_device_id exynos_pinctrl_ids[] = { 1035 static const struct of_device_id exynos_pinctrl_ids[] = {
1034 { .compatible = "samsung,pinctrl-exynos4210", }, 1036 { .compatible = "samsung,exynos4210-pinctrl", },
1035 { .compatible = "samsung,pinctrl-exynos4x12", }, 1037 { .compatible = "samsung,exynos4x12-pinctrl", },
1036 }; 1038 };
1037 struct device_node *pctrl_np, *wkup_np; 1039 struct device_node *pctrl_np, *wkup_np;
1038 const char *wkup_compat = "samsung,exynos4210-wakeup-eint"; 1040 const char *wkup_compat = "samsung,exynos4210-wakeup-eint";
diff --git a/arch/arm/mach-highbank/highbank.c b/arch/arm/mach-highbank/highbank.c
index 981dc1e1da51..e6c061282939 100644
--- a/arch/arm/mach-highbank/highbank.c
+++ b/arch/arm/mach-highbank/highbank.c
@@ -28,6 +28,7 @@
28 28
29#include <asm/arch_timer.h> 29#include <asm/arch_timer.h>
30#include <asm/cacheflush.h> 30#include <asm/cacheflush.h>
31#include <asm/cputype.h>
31#include <asm/smp_plat.h> 32#include <asm/smp_plat.h>
32#include <asm/smp_twd.h> 33#include <asm/smp_twd.h>
33#include <asm/hardware/arm_timer.h> 34#include <asm/hardware/arm_timer.h>
@@ -59,7 +60,7 @@ static void __init highbank_scu_map_io(void)
59 60
60void highbank_set_cpu_jump(int cpu, void *jump_addr) 61void highbank_set_cpu_jump(int cpu, void *jump_addr)
61{ 62{
62 cpu = cpu_logical_map(cpu); 63 cpu = MPIDR_AFFINITY_LEVEL(cpu_logical_map(cpu), 0);
63 writel(virt_to_phys(jump_addr), HB_JUMP_TABLE_VIRT(cpu)); 64 writel(virt_to_phys(jump_addr), HB_JUMP_TABLE_VIRT(cpu));
64 __cpuc_flush_dcache_area(HB_JUMP_TABLE_VIRT(cpu), 16); 65 __cpuc_flush_dcache_area(HB_JUMP_TABLE_VIRT(cpu), 16);
65 outer_clean_range(HB_JUMP_TABLE_PHYS(cpu), 66 outer_clean_range(HB_JUMP_TABLE_PHYS(cpu),
diff --git a/arch/arm/mach-highbank/sysregs.h b/arch/arm/mach-highbank/sysregs.h
index 70af9d13fcef..5995df7f2622 100644
--- a/arch/arm/mach-highbank/sysregs.h
+++ b/arch/arm/mach-highbank/sysregs.h
@@ -37,7 +37,7 @@ extern void __iomem *sregs_base;
37 37
38static inline void highbank_set_core_pwr(void) 38static inline void highbank_set_core_pwr(void)
39{ 39{
40 int cpu = cpu_logical_map(smp_processor_id()); 40 int cpu = MPIDR_AFFINITY_LEVEL(cpu_logical_map(smp_processor_id()), 0);
41 if (scu_base_addr) 41 if (scu_base_addr)
42 scu_power_mode(scu_base_addr, SCU_PM_POWEROFF); 42 scu_power_mode(scu_base_addr, SCU_PM_POWEROFF);
43 else 43 else
@@ -46,7 +46,7 @@ static inline void highbank_set_core_pwr(void)
46 46
47static inline void highbank_clear_core_pwr(void) 47static inline void highbank_clear_core_pwr(void)
48{ 48{
49 int cpu = cpu_logical_map(smp_processor_id()); 49 int cpu = MPIDR_AFFINITY_LEVEL(cpu_logical_map(smp_processor_id()), 0);
50 if (scu_base_addr) 50 if (scu_base_addr)
51 scu_power_mode(scu_base_addr, SCU_PM_NORMAL); 51 scu_power_mode(scu_base_addr, SCU_PM_NORMAL);
52 else 52 else
diff --git a/arch/arm/mach-s3c24xx/common.c b/arch/arm/mach-s3c24xx/common.c
index 0c9e9a785ef6..6bcf87f65f9e 100644
--- a/arch/arm/mach-s3c24xx/common.c
+++ b/arch/arm/mach-s3c24xx/common.c
@@ -197,7 +197,7 @@ static unsigned long s3c24xx_read_idcode_v4(void)
197 197
198static void s3c24xx_default_idle(void) 198static void s3c24xx_default_idle(void)
199{ 199{
200 unsigned long tmp; 200 unsigned long tmp = 0;
201 int i; 201 int i;
202 202
203 /* idle the system by using the idle mode which will wait for an 203 /* idle the system by using the idle mode which will wait for an
diff --git a/arch/arm/mach-ux500/cpu.c b/arch/arm/mach-ux500/cpu.c
index 721e7b4275f3..d4dcec53171a 100644
--- a/arch/arm/mach-ux500/cpu.c
+++ b/arch/arm/mach-ux500/cpu.c
@@ -71,13 +71,11 @@ void __init ux500_init_irq(void)
71 * Init clocks here so that they are available for system timer 71 * Init clocks here so that they are available for system timer
72 * initialization. 72 * initialization.
73 */ 73 */
74 if (cpu_is_u8500_family()) 74 if (cpu_is_u8500_family() || cpu_is_u9540())
75 db8500_prcmu_early_init(); 75 db8500_prcmu_early_init();
76 76
77 if (cpu_is_u8500_family()) 77 if (cpu_is_u8500_family() || cpu_is_u9540())
78 u8500_clk_init(); 78 u8500_clk_init();
79 else if (cpu_is_u9540())
80 u9540_clk_init();
81 else if (cpu_is_u8540()) 79 else if (cpu_is_u8540())
82 u8540_clk_init(); 80 u8540_clk_init();
83} 81}
diff --git a/arch/arm/mach-ux500/cpuidle.c b/arch/arm/mach-ux500/cpuidle.c
index b54884bd2549..ce9149302cc3 100644
--- a/arch/arm/mach-ux500/cpuidle.c
+++ b/arch/arm/mach-ux500/cpuidle.c
@@ -40,8 +40,10 @@ static inline int ux500_enter_idle(struct cpuidle_device *dev,
40 goto wfi; 40 goto wfi;
41 41
42 /* decouple the gic from the A9 cores */ 42 /* decouple the gic from the A9 cores */
43 if (prcmu_gic_decouple()) 43 if (prcmu_gic_decouple()) {
44 spin_unlock(&master_lock);
44 goto out; 45 goto out;
46 }
45 47
46 /* If an error occur, we will have to recouple the gic 48 /* If an error occur, we will have to recouple the gic
47 * manually */ 49 * manually */
diff --git a/arch/arm/plat-orion/mpp.c b/arch/arm/plat-orion/mpp.c
index e686fe76a96b..7310bcfb299f 100644
--- a/arch/arm/plat-orion/mpp.c
+++ b/arch/arm/plat-orion/mpp.c
@@ -49,7 +49,7 @@ void __init orion_mpp_conf(unsigned int *mpp_list, unsigned int variant_mask,
49 "number (%u)\n", num); 49 "number (%u)\n", num);
50 continue; 50 continue;
51 } 51 }
52 if (variant_mask & !(*mpp_list & variant_mask)) { 52 if (variant_mask && !(*mpp_list & variant_mask)) {
53 printk(KERN_WARNING 53 printk(KERN_WARNING
54 "orion_mpp_conf: requested MPP%u config " 54 "orion_mpp_conf: requested MPP%u config "
55 "unavailable on this hardware\n", num); 55 "unavailable on this hardware\n", num);
diff --git a/drivers/gpio/gpio-samsung.c b/drivers/gpio/gpio-samsung.c
index 76be7eed79de..b2016ed941ac 100644
--- a/drivers/gpio/gpio-samsung.c
+++ b/drivers/gpio/gpio-samsung.c
@@ -3023,9 +3023,9 @@ static __init int samsung_gpiolib_init(void)
3023 */ 3023 */
3024 struct device_node *pctrl_np; 3024 struct device_node *pctrl_np;
3025 static const struct of_device_id exynos_pinctrl_ids[] = { 3025 static const struct of_device_id exynos_pinctrl_ids[] = {
3026 { .compatible = "samsung,pinctrl-exynos4210", }, 3026 { .compatible = "samsung,exynos4210-pinctrl", },
3027 { .compatible = "samsung,pinctrl-exynos4x12", }, 3027 { .compatible = "samsung,exynos4x12-pinctrl", },
3028 { .compatible = "samsung,pinctrl-exynos5440", }, 3028 { .compatible = "samsung,exynos5440-pinctrl", },
3029 }; 3029 };
3030 for_each_matching_node(pctrl_np, exynos_pinctrl_ids) 3030 for_each_matching_node(pctrl_np, exynos_pinctrl_ids)
3031 if (pctrl_np && of_device_is_available(pctrl_np)) 3031 if (pctrl_np && of_device_is_available(pctrl_np))
diff --git a/drivers/mfd/vexpress-sysreg.c b/drivers/mfd/vexpress-sysreg.c
index 77048b18439e..558c2928f261 100644
--- a/drivers/mfd/vexpress-sysreg.c
+++ b/drivers/mfd/vexpress-sysreg.c
@@ -313,7 +313,7 @@ static void vexpress_sysreg_config_complete(unsigned long data)
313} 313}
314 314
315 315
316void __init vexpress_sysreg_setup(struct device_node *node) 316void vexpress_sysreg_setup(struct device_node *node)
317{ 317{
318 if (WARN_ON(!vexpress_sysreg_base)) 318 if (WARN_ON(!vexpress_sysreg_base))
319 return; 319 return;
diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c
index fd7b24cd8908..044d2da34e4e 100644
--- a/drivers/pinctrl/pinctrl-samsung.c
+++ b/drivers/pinctrl/pinctrl-samsung.c
@@ -947,9 +947,9 @@ static int samsung_pinctrl_probe(struct platform_device *pdev)
947} 947}
948 948
949static const struct of_device_id samsung_pinctrl_dt_match[] = { 949static const struct of_device_id samsung_pinctrl_dt_match[] = {
950 { .compatible = "samsung,pinctrl-exynos4210", 950 { .compatible = "samsung,exynos4210-pinctrl",
951 .data = (void *)exynos4210_pin_ctrl }, 951 .data = (void *)exynos4210_pin_ctrl },
952 { .compatible = "samsung,pinctrl-exynos4x12", 952 { .compatible = "samsung,exynos4x12-pinctrl",
953 .data = (void *)exynos4x12_pin_ctrl }, 953 .data = (void *)exynos4x12_pin_ctrl },
954 {}, 954 {},
955}; 955};