]> git.karo-electronics.de Git - linux-beck.git/commitdiff
ARM: qcom: Split Qualcomm support into legacy and multiplatform
authorKumar Gala <galak@codeaurora.org>
Tue, 21 Jan 2014 23:14:10 +0000 (17:14 -0600)
committerKumar Gala <galak@codeaurora.org>
Thu, 6 Feb 2014 22:20:26 +0000 (16:20 -0600)
Introduce a new mach-qcom that will support SoCs that intend to be
multiplatform compatible while keeping mach-msm to legacy SoC/board
support that will not transition over to multiplatform.

As part of this, we move support for MSM8X60, MSM8960 and MSM8974 over
to mach-qcom.

Signed-off-by: Kumar Gala <galak@codeaurora.org>
15 files changed:
MAINTAINERS
arch/arm/Kconfig
arch/arm/Kconfig.debug
arch/arm/Makefile
arch/arm/boot/dts/Makefile
arch/arm/mach-msm/Kconfig
arch/arm/mach-msm/Makefile
arch/arm/mach-qcom/Kconfig [new file with mode: 0644]
arch/arm/mach-qcom/Makefile [new file with mode: 0644]
arch/arm/mach-qcom/board.c [moved from arch/arm/mach-msm/board-dt.c with 71% similarity]
arch/arm/mach-qcom/platsmp.c [moved from arch/arm/mach-msm/platsmp.c with 98% similarity]
arch/arm/mach-qcom/scm-boot.c [moved from arch/arm/mach-msm/scm-boot.c with 100% similarity]
arch/arm/mach-qcom/scm-boot.h [moved from arch/arm/mach-msm/scm-boot.h with 100% similarity]
arch/arm/mach-qcom/scm.c [moved from arch/arm/mach-msm/scm.c with 100% similarity]
arch/arm/mach-qcom/scm.h [moved from arch/arm/mach-msm/scm.h with 100% similarity]

index b2cf5cfb4d29de3dc27e351ba090134bfd624de6..402be6009e26f81487783008df8241cfb4308de2 100644 (file)
@@ -1167,6 +1167,14 @@ L:       linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
 W:     http://www.arm.linux.org.uk/
 S:     Maintained
 
+ARM/QUALCOMM SUPPORT
+M:     Kumar Gala <galak@codeaurora.org>
+M:     David Brown <davidb@codeaurora.org>
+L:     linux-arm-msm@vger.kernel.org
+S:     Maintained
+F:     arch/arm/mach-qcom/
+T:     git git://git.kernel.org/pub/scm/linux/kernel/git/galak/linux-qcom.git
+
 ARM/RADISYS ENP2611 MACHINE SUPPORT
 M:     Lennert Buytenhek <kernel@wantstofly.org>
 L:     linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
index e254198177914ca13050f37519a6ca43e0da596d..f093f2030c1cfd09c50fd53ebaeea21b11d462c7 100644 (file)
@@ -657,9 +657,8 @@ config ARCH_PXA
        help
          Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
 
-config ARCH_MSM_NODT
-       bool "Qualcomm MSM"
-       select ARCH_MSM
+config ARCH_MSM
+       bool "Qualcomm MSM (non-multiplatform)"
        select ARCH_REQUIRE_GPIOLIB
        select COMMON_CLK
        select GENERIC_CLOCKEVENTS
@@ -1005,6 +1004,8 @@ source "arch/arm/plat-pxa/Kconfig"
 
 source "arch/arm/mach-mmp/Kconfig"
 
+source "arch/arm/mach-qcom/Kconfig"
+
 source "arch/arm/mach-realview/Kconfig"
 
 source "arch/arm/mach-rockchip/Kconfig"
index 0531da8e5216e442ee1f9c8878e4fb9d84611581..4491c7b05275161b9fc8ce28fc16b835095683b1 100644 (file)
@@ -956,7 +956,7 @@ config DEBUG_STI_UART
 
 config DEBUG_MSM_UART
        bool
-       depends on ARCH_MSM
+       depends on ARCH_MSM || ARCH_QCOM
 
 config DEBUG_LL_INCLUDE
        string
index 08a9ef58d9c3567f1b78862ed136546416ad241d..51e5bede657fe6eaa2a8a889d45362c3fbd8fcd3 100644 (file)
@@ -180,6 +180,7 @@ machine-$(CONFIG_ARCH_OMAP2PLUS)    += omap2
 machine-$(CONFIG_ARCH_ORION5X)         += orion5x
 machine-$(CONFIG_ARCH_PICOXCELL)       += picoxcell
 machine-$(CONFIG_ARCH_PXA)             += pxa
+machine-$(CONFIG_ARCH_QCOM)            += qcom
 machine-$(CONFIG_ARCH_REALVIEW)                += realview
 machine-$(CONFIG_ARCH_ROCKCHIP)                += rockchip
 machine-$(CONFIG_ARCH_RPC)             += rpc
index b9d6a8b485e0bdeba13c1848391fca3ca263341b..c9eaf1f8704192cd6498006503cb36e109a2d768 100644 (file)
@@ -118,9 +118,6 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
        kirkwood-ts219-6282.dtb
 dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb
 dtb-$(CONFIG_ARCH_MOXART) += moxart-uc7112lx.dtb
-dtb-$(CONFIG_ARCH_MSM) += qcom-msm8660-surf.dtb \
-       qcom-msm8960-cdp.dtb \
-       qcom-apq8074-dragonboard.dtb
 dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
        armada-370-mirabox.dtb \
        armada-370-netgear-rn102.dtb \
@@ -232,6 +229,9 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
        dra7-evm.dtb
 dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb
 dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb
+dtb-$(CONFIG_ARCH_QCOM) += qcom-msm8660-surf.dtb \
+       qcom-msm8960-cdp.dtb \
+       qcom-apq8074-dragonboard.dtb
 dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \
        ste-hrefprev60-stuib.dtb \
        ste-hrefprev60-tvk.dtb \
index 3c4eca71f9766586aa350464def9b18926ba043c..a7f959e58c3d0c3432ae6bbf603db0ed7ef7320e 100644 (file)
@@ -1,50 +1,9 @@
-config ARCH_MSM
-       bool
-
-config ARCH_MSM_DT
-       bool "Qualcomm MSM DT Support" if ARCH_MULTI_V7
-       select ARCH_MSM
-       select ARCH_REQUIRE_GPIOLIB
-       select CLKSRC_OF
-       select GENERIC_CLOCKEVENTS
-       help
-         Support for Qualcomm's devicetree based MSM systems.
-
 if ARCH_MSM
 
-menu "Qualcomm MSM SoC Selection"
-       depends on ARCH_MSM_DT
-
-config ARCH_MSM8X60
-       bool "Enable support for MSM8X60"
-       select ARM_GIC
-       select CPU_V7
-       select HAVE_SMP
-       select MSM_SCM if SMP
-       select CLKSRC_QCOM
-
-config ARCH_MSM8960
-       bool "Enable support for MSM8960"
-       select ARM_GIC
-       select CPU_V7
-       select HAVE_SMP
-       select MSM_SCM if SMP
-       select CLKSRC_QCOM
-
-config ARCH_MSM8974
-       bool "Enable support for MSM8974"
-       select ARM_GIC
-       select CPU_V7
-       select HAVE_ARM_ARCH_TIMER
-       select HAVE_SMP
-       select MSM_SCM if SMP
-
-endmenu
-
 choice
        prompt "Qualcomm MSM SoC Type"
        default ARCH_MSM7X00A
-       depends on ARCH_MSM_NODT
+       depends on ARCH_MSM
 
 config ARCH_MSM7X00A
        bool "MSM7x00A / MSM7x01A"
@@ -99,7 +58,7 @@ config  MSM_VIC
        bool
 
 menu "Qualcomm MSM Board Type"
-       depends on ARCH_MSM_NODT
+       depends on ARCH_MSM
 
 config MACH_HALIBUT
        depends on ARCH_MSM
index 04b1bee941f556afb606fe9e20f19974b3a2c4f7..27c078a568dfae79a08da4baa3e47fe3b87cbd3e 100644 (file)
@@ -13,17 +13,11 @@ obj-$(CONFIG_ARCH_QSD8X50) += dma.o io.o
 
 obj-$(CONFIG_MSM_SMD) += smd.o smd_debug.o
 obj-$(CONFIG_MSM_SMD) += last_radio_log.o
-obj-$(CONFIG_MSM_SCM) += scm.o scm-boot.o
-
-CFLAGS_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1)
-
-obj-$(CONFIG_SMP) += platsmp.o
 
 obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o devices-msm7x00.o
 obj-$(CONFIG_MACH_TROUT) += board-trout.o board-trout-gpio.o board-trout-mmc.o board-trout-panel.o devices-msm7x00.o
 obj-$(CONFIG_MACH_HALIBUT) += board-halibut.o devices-msm7x00.o
 obj-$(CONFIG_ARCH_MSM7X30) += board-msm7x30.o devices-msm7x30.o
 obj-$(CONFIG_ARCH_QSD8X50) += board-qsd8x50.o devices-qsd8x50.o
-obj-$(CONFIG_ARCH_MSM_DT) += board-dt.o
 obj-$(CONFIG_MSM_GPIOMUX) += gpiomux.o
 obj-$(CONFIG_ARCH_QSD8X50) += gpiomux-8x50.o
diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig
new file mode 100644 (file)
index 0000000..a028be2
--- /dev/null
@@ -0,0 +1,33 @@
+config ARCH_QCOM
+       bool "Qualcomm Support" if ARCH_MULTI_V7
+       select ARCH_REQUIRE_GPIOLIB
+       select ARM_GIC
+       select CLKSRC_OF
+       select GENERIC_CLOCKEVENTS
+       select HAVE_SMP
+       select QCOM_SCM if SMP
+       help
+         Support for Qualcomm's devicetree based systems.
+
+if ARCH_QCOM
+
+menu "Qualcomm SoC Selection"
+
+config ARCH_MSM8X60
+       bool "Enable support for MSM8X60"
+       select CLKSRC_QCOM
+
+config ARCH_MSM8960
+       bool "Enable support for MSM8960"
+       select CLKSRC_QCOM
+
+config ARCH_MSM8974
+       bool "Enable support for MSM8974"
+       select HAVE_ARM_ARCH_TIMER
+
+endmenu
+
+config QCOM_SCM
+       bool
+
+endif
diff --git a/arch/arm/mach-qcom/Makefile b/arch/arm/mach-qcom/Makefile
new file mode 100644 (file)
index 0000000..8f756ae
--- /dev/null
@@ -0,0 +1,5 @@
+obj-y                  := board.o
+obj-$(CONFIG_SMP)      += platsmp.o
+obj-$(CONFIG_QCOM_SCM) += scm.o scm-boot.o
+
+CFLAGS_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1)
similarity index 71%
rename from arch/arm/mach-msm/board-dt.c
rename to arch/arm/mach-qcom/board.c
index 1f11d93e700e4784d5b5d33e333f708b6d0cd295..4529f6b222d375c639c7a054d19cc8b8b3d303e2 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2010-2012,2013 The Linux Foundation. All rights reserved.
+/* Copyright (c) 2010-2014 The Linux Foundation. All rights reserved.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 and
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
 
-#include "common.h"
+extern struct smp_operations msm_smp_ops;
 
-static const char * const msm_dt_match[] __initconst = {
-       "qcom,msm8660-fluid",
+static const char * const qcom_dt_match[] __initconst = {
        "qcom,msm8660-surf",
        "qcom,msm8960-cdp",
        NULL
@@ -31,11 +30,11 @@ static const char * const apq8074_dt_match[] __initconst = {
        NULL
 };
 
-DT_MACHINE_START(MSM_DT, "Qualcomm MSM (Flattened Device Tree)")
+DT_MACHINE_START(QCOM_DT, "Qualcomm (Flattened Device Tree)")
        .smp = smp_ops(msm_smp_ops),
-       .dt_compat = msm_dt_match,
+       .dt_compat = qcom_dt_match,
 MACHINE_END
 
-DT_MACHINE_START(APQ_DT, "Qualcomm MSM (Flattened Device Tree)")
+DT_MACHINE_START(APQ_DT, "Qualcomm (Flattened Device Tree)")
        .dt_compat = apq8074_dt_match,
 MACHINE_END
similarity index 98%
rename from arch/arm/mach-msm/platsmp.c
rename to arch/arm/mach-qcom/platsmp.c
index 251a91eb102ac9ec4248d13d9a2e05af86881ce8..67823a7bec0db394e66391166298143982dca18a 100644 (file)
@@ -2,6 +2,7 @@
  *  Copyright (C) 2002 ARM Ltd.
  *  All Rights Reserved
  *  Copyright (c) 2010, Code Aurora Forum. All rights reserved.
+ *  Copyright (c) 2014 The Linux Foundation. All rights reserved.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
@@ -19,7 +20,6 @@
 #include <asm/smp_plat.h>
 
 #include "scm-boot.h"
-#include "common.h"
 
 #define VDD_SC1_ARRAY_CLAMP_GFS_CTL 0x15A0
 #define SCSS_CPU1CORE_RESET 0xD80