diff options
author | Olof Johansson <olof@lixom.net> | 2014-01-02 14:24:50 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2014-01-02 14:24:50 -0500 |
commit | 160c39a2d7fe859354015dda6f0b1fbe069e5228 (patch) | |
tree | 35e5be333414ea88ff75c1312de8aa83ea8cc3e6 /arch | |
parent | 8708138951b08441f4e18e75a2d012750261f0c0 (diff) | |
parent | 21dea66951342ec514ad498eda843cf633a13634 (diff) |
Merge branch 'qcom/boards' into next/boards
* qcom/boards:
ARM: msm_defconfig: Enable restart driver
defconfig: msm_defconfig: Enable CONFIG_ARCH_MSM8974
ARM: msm: Add support for APQ8074 Dragonboard
ARM: dts: MSM8974: Add MMIO architected timer node
ARM: dts: MSM8974: Add restart node
ARM: msm: Simplify ARCH_MSM_DT config
ARM: msm: Add support for MSM8974 SoC
ARM: msm: trout: fix uninit var warning
Signed-off-by: Olof Johansson <olof@lixom.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boot/dts/Makefile | 3 | ||||
-rw-r--r-- | arch/arm/boot/dts/qcom-apq8074-dragonboard.dts | 6 | ||||
-rw-r--r-- | arch/arm/boot/dts/qcom-msm8974.dtsi | 97 | ||||
-rw-r--r-- | arch/arm/configs/msm_defconfig | 3 | ||||
-rw-r--r-- | arch/arm/mach-msm/Kconfig | 15 | ||||
-rw-r--r-- | arch/arm/mach-msm/board-dt.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-msm/board-trout.c | 12 |
7 files changed, 136 insertions, 9 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index fdb0290b89e0..4179056f4584 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -105,7 +105,8 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \ | |||
105 | kirkwood-ts219-6282.dtb | 105 | kirkwood-ts219-6282.dtb |
106 | dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb | 106 | dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb |
107 | dtb-$(CONFIG_ARCH_MSM) += qcom-msm8660-surf.dtb \ | 107 | dtb-$(CONFIG_ARCH_MSM) += qcom-msm8660-surf.dtb \ |
108 | qcom-msm8960-cdp.dtb | 108 | qcom-msm8960-cdp.dtb \ |
109 | qcom-apq8074-dragonboard.dtb | ||
109 | dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \ | 110 | dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \ |
110 | armada-370-mirabox.dtb \ | 111 | armada-370-mirabox.dtb \ |
111 | armada-370-netgear-rn102.dtb \ | 112 | armada-370-netgear-rn102.dtb \ |
diff --git a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts new file mode 100644 index 000000000000..13ac3e222495 --- /dev/null +++ b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts | |||
@@ -0,0 +1,6 @@ | |||
1 | #include "qcom-msm8974.dtsi" | ||
2 | |||
3 | / { | ||
4 | model = "Qualcomm APQ8074 Dragonboard"; | ||
5 | compatible = "qcom,apq8074-dragonboard", "qcom,apq8074"; | ||
6 | }; | ||
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi new file mode 100644 index 000000000000..6ac94967d2d3 --- /dev/null +++ b/arch/arm/boot/dts/qcom-msm8974.dtsi | |||
@@ -0,0 +1,97 @@ | |||
1 | /dts-v1/; | ||
2 | |||
3 | #include "skeleton.dtsi" | ||
4 | |||
5 | / { | ||
6 | model = "Qualcomm MSM8974"; | ||
7 | compatible = "qcom,msm8974"; | ||
8 | interrupt-parent = <&intc>; | ||
9 | |||
10 | soc: soc { | ||
11 | #address-cells = <1>; | ||
12 | #size-cells = <1>; | ||
13 | ranges; | ||
14 | compatible = "simple-bus"; | ||
15 | |||
16 | intc: interrupt-controller@f9000000 { | ||
17 | compatible = "qcom,msm-qgic2"; | ||
18 | interrupt-controller; | ||
19 | #interrupt-cells = <3>; | ||
20 | reg = <0xf9000000 0x1000>, | ||
21 | <0xf9002000 0x1000>; | ||
22 | }; | ||
23 | |||
24 | timer { | ||
25 | compatible = "arm,armv7-timer"; | ||
26 | interrupts = <1 2 0xf08>, | ||
27 | <1 3 0xf08>, | ||
28 | <1 4 0xf08>, | ||
29 | <1 1 0xf08>; | ||
30 | clock-frequency = <19200000>; | ||
31 | }; | ||
32 | |||
33 | timer@f9020000 { | ||
34 | #address-cells = <1>; | ||
35 | #size-cells = <1>; | ||
36 | ranges; | ||
37 | compatible = "arm,armv7-timer-mem"; | ||
38 | reg = <0xf9020000 0x1000>; | ||
39 | clock-frequency = <19200000>; | ||
40 | |||
41 | frame@f9021000 { | ||
42 | frame-number = <0>; | ||
43 | interrupts = <0 8 0x4>, | ||
44 | <0 7 0x4>; | ||
45 | reg = <0xf9021000 0x1000>, | ||
46 | <0xf9022000 0x1000>; | ||
47 | }; | ||
48 | |||
49 | frame@f9023000 { | ||
50 | frame-number = <1>; | ||
51 | interrupts = <0 9 0x4>; | ||
52 | reg = <0xf9023000 0x1000>; | ||
53 | status = "disabled"; | ||
54 | }; | ||
55 | |||
56 | frame@f9024000 { | ||
57 | frame-number = <2>; | ||
58 | interrupts = <0 10 0x4>; | ||
59 | reg = <0xf9024000 0x1000>; | ||
60 | status = "disabled"; | ||
61 | }; | ||
62 | |||
63 | frame@f9025000 { | ||
64 | frame-number = <3>; | ||
65 | interrupts = <0 11 0x4>; | ||
66 | reg = <0xf9025000 0x1000>; | ||
67 | status = "disabled"; | ||
68 | }; | ||
69 | |||
70 | frame@f9026000 { | ||
71 | frame-number = <4>; | ||
72 | interrupts = <0 12 0x4>; | ||
73 | reg = <0xf9026000 0x1000>; | ||
74 | status = "disabled"; | ||
75 | }; | ||
76 | |||
77 | frame@f9027000 { | ||
78 | frame-number = <5>; | ||
79 | interrupts = <0 13 0x4>; | ||
80 | reg = <0xf9027000 0x1000>; | ||
81 | status = "disabled"; | ||
82 | }; | ||
83 | |||
84 | frame@f9028000 { | ||
85 | frame-number = <6>; | ||
86 | interrupts = <0 14 0x4>; | ||
87 | reg = <0xf9028000 0x1000>; | ||
88 | status = "disabled"; | ||
89 | }; | ||
90 | }; | ||
91 | |||
92 | restart@fc4ab000 { | ||
93 | compatible = "qcom,pshold"; | ||
94 | reg = <0xfc4ab000 0x4>; | ||
95 | }; | ||
96 | }; | ||
97 | }; | ||
diff --git a/arch/arm/configs/msm_defconfig b/arch/arm/configs/msm_defconfig index 690b5f9c7462..c5698b7ce444 100644 --- a/arch/arm/configs/msm_defconfig +++ b/arch/arm/configs/msm_defconfig | |||
@@ -20,6 +20,7 @@ CONFIG_PARTITION_ADVANCED=y | |||
20 | CONFIG_ARCH_MSM=y | 20 | CONFIG_ARCH_MSM=y |
21 | CONFIG_ARCH_MSM8X60=y | 21 | CONFIG_ARCH_MSM8X60=y |
22 | CONFIG_ARCH_MSM8960=y | 22 | CONFIG_ARCH_MSM8960=y |
23 | CONFIG_ARCH_MSM8974=y | ||
23 | CONFIG_SMP=y | 24 | CONFIG_SMP=y |
24 | CONFIG_PREEMPT=y | 25 | CONFIG_PREEMPT=y |
25 | CONFIG_AEABI=y | 26 | CONFIG_AEABI=y |
@@ -88,6 +89,8 @@ CONFIG_SSBI=y | |||
88 | CONFIG_DEBUG_GPIO=y | 89 | CONFIG_DEBUG_GPIO=y |
89 | CONFIG_GPIO_SYSFS=y | 90 | CONFIG_GPIO_SYSFS=y |
90 | CONFIG_POWER_SUPPLY=y | 91 | CONFIG_POWER_SUPPLY=y |
92 | CONFIG_POWER_RESET=y | ||
93 | CONFIG_POWER_RESET_MSM=y | ||
91 | CONFIG_THERMAL=y | 94 | CONFIG_THERMAL=y |
92 | CONFIG_REGULATOR=y | 95 | CONFIG_REGULATOR=y |
93 | CONFIG_MEDIA_SUPPORT=y | 96 | CONFIG_MEDIA_SUPPORT=y |
diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig index 2586c2865874..702553b96137 100644 --- a/arch/arm/mach-msm/Kconfig +++ b/arch/arm/mach-msm/Kconfig | |||
@@ -44,6 +44,7 @@ endchoice | |||
44 | 44 | ||
45 | config ARCH_MSM8X60 | 45 | config ARCH_MSM8X60 |
46 | bool "MSM8X60" | 46 | bool "MSM8X60" |
47 | select ARCH_MSM_DT | ||
47 | select ARM_GIC | 48 | select ARM_GIC |
48 | select CPU_V7 | 49 | select CPU_V7 |
49 | select GPIO_MSM_V2 | 50 | select GPIO_MSM_V2 |
@@ -52,15 +53,25 @@ config ARCH_MSM8X60 | |||
52 | 53 | ||
53 | config ARCH_MSM8960 | 54 | config ARCH_MSM8960 |
54 | bool "MSM8960" | 55 | bool "MSM8960" |
56 | select ARCH_MSM_DT | ||
55 | select ARM_GIC | 57 | select ARM_GIC |
56 | select CPU_V7 | 58 | select CPU_V7 |
57 | select HAVE_SMP | 59 | select HAVE_SMP |
58 | select GPIO_MSM_V2 | 60 | select GPIO_MSM_V2 |
59 | select MSM_SCM if SMP | 61 | select MSM_SCM if SMP |
60 | 62 | ||
63 | config ARCH_MSM8974 | ||
64 | bool "MSM8974" | ||
65 | select ARCH_MSM_DT | ||
66 | select ARM_GIC | ||
67 | select CPU_V7 | ||
68 | select HAVE_ARM_ARCH_TIMER | ||
69 | select HAVE_SMP | ||
70 | select MSM_SCM if SMP | ||
71 | select USE_OF | ||
72 | |||
61 | config ARCH_MSM_DT | 73 | config ARCH_MSM_DT |
62 | def_bool y | 74 | bool |
63 | depends on (ARCH_MSM8X60 || ARCH_MSM8960) | ||
64 | select SPARSE_IRQ | 75 | select SPARSE_IRQ |
65 | select USE_OF | 76 | select USE_OF |
66 | 77 | ||
diff --git a/arch/arm/mach-msm/board-dt.c b/arch/arm/mach-msm/board-dt.c index 16e6183ac9f1..1f11d93e700e 100644 --- a/arch/arm/mach-msm/board-dt.c +++ b/arch/arm/mach-msm/board-dt.c | |||
@@ -26,7 +26,16 @@ static const char * const msm_dt_match[] __initconst = { | |||
26 | NULL | 26 | NULL |
27 | }; | 27 | }; |
28 | 28 | ||
29 | static const char * const apq8074_dt_match[] __initconst = { | ||
30 | "qcom,apq8074-dragonboard", | ||
31 | NULL | ||
32 | }; | ||
33 | |||
29 | DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)") | 34 | DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)") |
30 | .smp = smp_ops(msm_smp_ops), | 35 | .smp = smp_ops(msm_smp_ops), |
31 | .dt_compat = msm_dt_match, | 36 | .dt_compat = msm_dt_match, |
32 | MACHINE_END | 37 | MACHINE_END |
38 | |||
39 | DT_MACHINE_START(APQ_DT, "Qualcomm MSM (Flattened Device Tree)") | ||
40 | .dt_compat = apq8074_dt_match, | ||
41 | MACHINE_END | ||
diff --git a/arch/arm/mach-msm/board-trout.c b/arch/arm/mach-msm/board-trout.c index ccf6621bc664..015d544aa017 100644 --- a/arch/arm/mach-msm/board-trout.c +++ b/arch/arm/mach-msm/board-trout.c | |||
@@ -13,6 +13,7 @@ | |||
13 | * GNU General Public License for more details. | 13 | * GNU General Public License for more details. |
14 | * | 14 | * |
15 | */ | 15 | */ |
16 | #define pr_fmt(fmt) "%s: " fmt, __func__ | ||
16 | 17 | ||
17 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
18 | #include <linux/init.h> | 19 | #include <linux/init.h> |
@@ -68,12 +69,11 @@ static void __init trout_init(void) | |||
68 | 69 | ||
69 | platform_add_devices(devices, ARRAY_SIZE(devices)); | 70 | platform_add_devices(devices, ARRAY_SIZE(devices)); |
70 | 71 | ||
71 | #ifdef CONFIG_MMC | 72 | if (IS_ENABLED(CONFIG_MMC)) { |
72 | rc = trout_init_mmc(system_rev); | 73 | rc = trout_init_mmc(system_rev); |
73 | if (rc) | 74 | if (rc) |
74 | printk(KERN_CRIT "%s: MMC init failure (%d)\n", __func__, rc); | 75 | pr_crit("MMC init failure (%d)\n", rc); |
75 | #endif | 76 | } |
76 | |||
77 | } | 77 | } |
78 | 78 | ||
79 | static struct map_desc trout_io_desc[] __initdata = { | 79 | static struct map_desc trout_io_desc[] __initdata = { |