Targets were build tested and patches are refreshed.
Signed-off-by: Luka Perkov <luka@openwrt.org>
SVN-Revision: 42463
ifeq ($(LINUX_VERSION),3.13.7)
LINUX_KERNEL_MD5SUM:=370adced5e5c1cb1d0d621c2dae2723f
endif
-ifeq ($(LINUX_VERSION),3.14.16)
- LINUX_KERNEL_MD5SUM:=469c879236ed694f60b81122e91ca02e
+ifeq ($(LINUX_VERSION),3.14.18)
+ LINUX_KERNEL_MD5SUM:=3b002a06d0964d8101abec768c2d4eef
endif
# disable the md5sum check for unknown kernel versions
FEATURES:=squashfs targz ext2 usb
SUBTARGETS:=legacy sama5d3
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
include $(INCLUDE_DIR)/target.mk
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
-@@ -23,6 +23,7 @@ dtb-$(CONFIG_ARCH_AT91) += tny_a9g20.dtb
- dtb-$(CONFIG_ARCH_AT91) += usb_a9g20.dtb
+@@ -26,6 +26,7 @@ dtb-$(CONFIG_ARCH_AT91) += usb_a9g20.dtb
+ dtb-$(CONFIG_ARCH_AT91) += usb_a9g20_lpw.dtb
# sam9g45
dtb-$(CONFIG_ARCH_AT91) += at91sam9m10g45ek.dtb
+dtb-$(CONFIG_ARCH_AT91) += lmu5000.dtb
-Index: linux-3.14.16/arch/arm/mach-at91/Kconfig.non_dt
-===================================================================
---- linux-3.14.16.orig/arch/arm/mach-at91/Kconfig.non_dt 2014-08-31 13:36:59.849640477 -0700
-+++ linux-3.14.16/arch/arm/mach-at91/Kconfig.non_dt 2014-08-31 13:36:59.845640477 -0700
-@@ -281,6 +281,12 @@
+--- a/arch/arm/mach-at91/Kconfig.non_dt
++++ b/arch/arm/mach-at91/Kconfig.non_dt
+@@ -281,6 +281,12 @@ config MACH_AT91SAM9G10EK
Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit.
<http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4588>
endif
# ----------------------------------------------------------
-Index: linux-3.14.16/arch/arm/mach-at91/Makefile
-===================================================================
---- linux-3.14.16.orig/arch/arm/mach-at91/Makefile 2014-08-31 13:36:59.849640477 -0700
-+++ linux-3.14.16/arch/arm/mach-at91/Makefile 2014-08-31 13:37:27.125639720 -0700
-@@ -62,6 +62,7 @@
+--- a/arch/arm/mach-at91/Makefile
++++ b/arch/arm/mach-at91/Makefile
+@@ -62,6 +62,7 @@ obj-$(CONFIG_MACH_AT91SAM9G10EK) += boar
# AT91SAM9263 board-specific support
obj-$(CONFIG_MACH_AT91SAM9263EK) += board-sam9263ek.o
BOARDNAME:=Atheros AR231x/AR5312
FEATURES:=squashfs low_mem
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
include $(INCLUDE_DIR)/target.mk
MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
CPU_TYPE:=cortex-a9
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
include $(INCLUDE_DIR)/target.mk
--- a/drivers/mtd/Kconfig
+++ b/drivers/mtd/Kconfig
-@@ -394,6 +394,8 @@ source "drivers/mtd/onenand/Kconfig"
+@@ -371,6 +371,8 @@ source "drivers/mtd/onenand/Kconfig"
source "drivers/mtd/lpddr/Kconfig"
SUBTARGETS:=generic mips74k legacy
MAINTAINER:=Hauke Mehrtens <hauke@hauke-m.de>
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
include $(INCLUDE_DIR)/target.mk
#endif
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -282,6 +282,7 @@ static int __init bcm47xx_register_bus_c
+@@ -286,6 +286,7 @@ static int __init bcm47xx_register_bus_c
}
bcm47xx_buttons_register();
bcm47xx_leds_register();
+#endif /* defined(CONFIG_BCM47XX_BCMA) && defined(CONFIG_HIGHMEM) */
--- a/arch/mips/bcm47xx/setup.c
+++ b/arch/mips/bcm47xx/setup.c
-@@ -227,6 +227,9 @@ void __init plat_mem_setup(void)
+@@ -231,6 +231,9 @@ void __init plat_mem_setup(void)
bcm47xx_bus_type = BCM47XX_BUS_TYPE_BCMA;
bcm47xx_register_bcma();
bcm47xx_set_system_type(bcm47xx_bus.bcma.bus.chipinfo.id);
#include <asm/bootinfo.h>
#include <asm/idle.h>
#include <asm/prom.h>
-@@ -278,6 +279,33 @@ static struct fixed_phy_status bcm47xx_f
+@@ -282,6 +283,33 @@ static struct fixed_phy_status bcm47xx_f
.duplex = DUPLEX_FULL,
};
static int __init bcm47xx_register_bus_complete(void)
{
switch (bcm47xx_bus_type) {
-@@ -297,6 +325,7 @@ static int __init bcm47xx_register_bus_c
+@@ -301,6 +329,7 @@ static int __init bcm47xx_register_bus_c
bcm47xx_workarounds();
fixed_phy_add(PHY_POLL, 0, &bcm47xx_fixed_phy_status);
+++ /dev/null
-This fixes a problem introduced in this commit:
-
-commit 87aa9f9c61ad56d505641681812e92ad976f8608
-Author: Florian Fainelli <f.fainelli@gmail.com>
-Date: Fri Dec 6 13:01:34 2013 -0800
-
- net: phy: consolidate PHY reset in phy_init_hw()
-
-The fixups are not executed before the switch gets registered but after
-the kernel searches for the right switch driver. When the search is
-executed it searches for the phy_id 0x00, because it was not fixed.
-
---- a/drivers/net/phy/phy_device.c
-+++ b/drivers/net/phy/phy_device.c
-@@ -353,6 +353,7 @@ int phy_device_register(struct phy_devic
- phydev->bus->phy_map[phydev->addr] = phydev;
-
- /* Run all of the fixups for this PHY */
-+ phy_scan_fixups(phydev);
- err = phy_init_hw(phydev);
- if (err) {
- pr_err("PHY %d failed to initialize\n", phydev->addr);
BOARDNAME:=Broadcom BCM63xx
SUBTARGETS:=generic smp
FEATURES:=squashfs usb atm pci pcmcia usbgadget
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
MAINTAINER:=Florian Fainelli <florian@openwrt.org>
include $(INCLUDE_DIR)/target.mk
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
-@@ -421,6 +421,9 @@ static struct pernet_operations ip_rt_pr
+@@ -422,6 +422,9 @@ static struct pernet_operations ip_rt_pr
static int __init ip_rt_proc_init(void)
{
CPU_SUBTYPE:=neon
MAINTAINER:=Luka Perkov <luka@openwrt.org>
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
include $(INCLUDE_DIR)/target.mk
CPU_TYPE:=cortex-a7
MAINTAINER:=John Crispin <blogic@openwrt.org>
-LINUX_VERSION:=3.14.16
+LINUX_VERSION:=3.14.18
KERNELNAME="Image dtbs"
create mode 100644 arch/arm/boot/dts/qcom-msm8660.dtsi
create mode 100644 arch/arm/boot/dts/qcom-msm8960.dtsi
-diff --git a/arch/arm/boot/dts/qcom-msm8660-surf.dts b/arch/arm/boot/dts/qcom-msm8660-surf.dts
-index 68a72f5..169bad9 100644
--- a/arch/arm/boot/dts/qcom-msm8660-surf.dts
+++ b/arch/arm/boot/dts/qcom-msm8660-surf.dts
@@ -1,63 +1,6 @@
- qcom,controller-type = "pmic-arbiter";
- };
};
-diff --git a/arch/arm/boot/dts/qcom-msm8660.dtsi b/arch/arm/boot/dts/qcom-msm8660.dtsi
-new file mode 100644
-index 0000000..69d6c4e
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8660.dtsi
@@ -0,0 +1,63 @@
+ qcom,controller-type = "pmic-arbiter";
+ };
+};
-diff --git a/arch/arm/boot/dts/qcom-msm8960-cdp.dts b/arch/arm/boot/dts/qcom-msm8960-cdp.dts
-index 7c30de4..a58fb88 100644
--- a/arch/arm/boot/dts/qcom-msm8960-cdp.dts
+++ b/arch/arm/boot/dts/qcom-msm8960-cdp.dts
@@ -1,70 +1,6 @@
- qcom,controller-type = "pmic-arbiter";
- };
};
-diff --git a/arch/arm/boot/dts/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom-msm8960.dtsi
-new file mode 100644
-index 0000000..ff00282
--- /dev/null
+++ b/arch/arm/boot/dts/qcom-msm8960.dtsi
@@ -0,0 +1,70 @@
+ qcom,controller-type = "pmic-arbiter";
+ };
+};
---
-1.7.10.4
-
4 files changed, 8 insertions(+), 101 deletions(-)
delete mode 100644 arch/arm/mach-msm/headsmp.S
-diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
-index 8e307a1..721f27f 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
-@@ -19,7 +19,7 @@ obj-$(CONFIG_MSM_SCM) += scm.o scm-boot.o
+@@ -19,7 +19,7 @@ obj-$(CONFIG_MSM_SCM) += scm.o scm-boot.
CFLAGS_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1)
obj-$(CONFIG_HOTPLUG_CPU) += hotplug.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
-diff --git a/arch/arm/mach-msm/headsmp.S b/arch/arm/mach-msm/headsmp.S
-deleted file mode 100644
-index 6c62c3f..0000000
--- a/arch/arm/mach-msm/headsmp.S
+++ /dev/null
@@ -1,39 +0,0 @@
- .align
-1: .long .
- .long pen_release
-diff --git a/arch/arm/mach-msm/hotplug.c b/arch/arm/mach-msm/hotplug.c
-index 326a872..cea80fc 100644
--- a/arch/arm/mach-msm/hotplug.c
+++ b/arch/arm/mach-msm/hotplug.c
-@@ -24,33 +24,10 @@ static inline void cpu_leave_lowpower(void)
+@@ -24,33 +24,10 @@ static inline void cpu_leave_lowpower(vo
static inline void platform_do_lowpower(unsigned int cpu)
{
}
/*
-diff --git a/arch/arm/mach-msm/platsmp.c b/arch/arm/mach-msm/platsmp.c
-index f10a1f5..3721b31 100644
--- a/arch/arm/mach-msm/platsmp.c
+++ b/arch/arm/mach-msm/platsmp.c
@@ -12,13 +12,10 @@
* Synchronise with the boot thread.
*/
spin_lock(&boot_lock);
-@@ -57,7 +47,7 @@ static void msm_secondary_init(unsigned int cpu)
+@@ -57,7 +47,7 @@ static void msm_secondary_init(unsigned
static void prepare_cold_cpu(unsigned int cpu)
{
int ret;
SCM_FLAG_COLDBOOT_CPU1);
if (ret == 0) {
void __iomem *sc1_base_ptr;
-@@ -75,7 +65,6 @@ static void prepare_cold_cpu(unsigned int cpu)
+@@ -75,7 +65,6 @@ static void prepare_cold_cpu(unsigned in
static int msm_boot_secondary(unsigned int cpu, struct task_struct *idle)
{
static int cold_boot_done;
/* Only need to bring cpu out of reset this way once */
-@@ -91,39 +80,19 @@ static int msm_boot_secondary(unsigned int cpu, struct task_struct *idle)
+@@ -91,39 +80,19 @@ static int msm_boot_secondary(unsigned i
spin_lock(&boot_lock);
/*
}
/*
---
-1.7.10.4
-
4 files changed, 7 insertions(+), 53 deletions(-)
delete mode 100644 arch/arm/mach-msm/hotplug.c
-diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
-index 721f27f..8327f60 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
-@@ -18,7 +18,6 @@ obj-$(CONFIG_MSM_SCM) += scm.o scm-boot.o
+@@ -18,7 +18,6 @@ obj-$(CONFIG_MSM_SCM) += scm.o scm-boot.
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
-diff --git a/arch/arm/mach-msm/common.h b/arch/arm/mach-msm/common.h
-index 33c7725..0a4899b 100644
--- a/arch/arm/mach-msm/common.h
+++ b/arch/arm/mach-msm/common.h
-@@ -24,7 +24,6 @@ extern void __iomem *__msm_ioremap_caller(phys_addr_t phys_addr, size_t size,
+@@ -24,7 +24,6 @@ extern void __iomem *__msm_ioremap_calle
unsigned int mtype, void *caller);
extern struct smp_operations msm_smp_ops;
struct msm_mmc_platform_data;
-diff --git a/arch/arm/mach-msm/hotplug.c b/arch/arm/mach-msm/hotplug.c
-deleted file mode 100644
-index cea80fc..0000000
--- a/arch/arm/mach-msm/hotplug.c
+++ /dev/null
@@ -1,51 +0,0 @@
- */
- cpu_leave_lowpower();
-}
-diff --git a/arch/arm/mach-msm/platsmp.c b/arch/arm/mach-msm/platsmp.c
-index 3721b31..251a91e 100644
--- a/arch/arm/mach-msm/platsmp.c
+++ b/arch/arm/mach-msm/platsmp.c
@@ -29,6 +29,13 @@ extern void secondary_startup(void);
static inline int get_core_count(void)
{
/* 1 + the PART[1:0] field of MIDR */
---
-1.7.10.4
-
delete mode 100644 arch/arm/mach-msm/timer.c
create mode 100644 drivers/clocksource/qcom-timer.c
-diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
-index 9625cf3..3c4eca7 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -21,7 +21,7 @@ config ARCH_MSM8X60
- bool
-
endif
-diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
-index 8327f60..04b1bee 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -1,4 +1,3 @@
obj-$(CONFIG_MSM_PROC_COMM) += clock.o
obj-$(CONFIG_MSM_VIC) += irq-vic.o
-diff --git a/arch/arm/mach-msm/timer.c b/arch/arm/mach-msm/timer.c
-deleted file mode 100644
-index fd16449..0000000
--- a/arch/arm/mach-msm/timer.c
+++ /dev/null
@@ -1,333 +0,0 @@
- return;
- msm_timer_init(19200000 / 4, 32, 7, false);
-}
-diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig
-index cd6950f..6510ec4 100644
--- a/drivers/clocksource/Kconfig
+++ b/drivers/clocksource/Kconfig
@@ -140,3 +140,6 @@ config VF_PIT_TIMER
+
+config CLKSRC_QCOM
+ bool
-diff --git a/drivers/clocksource/Makefile b/drivers/clocksource/Makefile
-index c7ca50a..2e0c0cc 100644
--- a/drivers/clocksource/Makefile
+++ b/drivers/clocksource/Makefile
-@@ -32,6 +32,7 @@ obj-$(CONFIG_CLKSRC_EFM32) += time-efm32.o
+@@ -32,6 +32,7 @@ obj-$(CONFIG_CLKSRC_EFM32) += time-efm32
obj-$(CONFIG_CLKSRC_EXYNOS_MCT) += exynos_mct.o
obj-$(CONFIG_CLKSRC_SAMSUNG_PWM) += samsung_pwm_timer.o
obj-$(CONFIG_VF_PIT_TIMER) += vf_pit_timer.o
obj-$(CONFIG_ARM_ARCH_TIMER) += arm_arch_timer.o
obj-$(CONFIG_ARM_GLOBAL_TIMER) += arm_global_timer.o
-diff --git a/drivers/clocksource/qcom-timer.c b/drivers/clocksource/qcom-timer.c
-new file mode 100644
-index 0000000..dca829e
--- /dev/null
+++ b/drivers/clocksource/qcom-timer.c
@@ -0,0 +1,329 @@
+ return;
+ msm_timer_init(19200000 / 4, 32, 7, false);
+}
---
-1.7.10.4
-
create mode 100644 arch/arm/mach-qcom/scm.c
create mode 100644 arch/arm/mach-qcom/scm.h
-diff --git a/MAINTAINERS b/MAINTAINERS
-index 900d98e..7d23402 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
-@@ -1168,6 +1168,14 @@ L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
+@@ -1168,6 +1168,14 @@ L: linux-arm-kernel@lists.infradead.org
W: http://www.arm.linux.org.uk/
S: Maintained
ARM/RADISYS ENP2611 MACHINE SUPPORT
M: Lennert Buytenhek <kernel@wantstofly.org>
L: linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
-diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
-index 1594945..d02ce70 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -657,9 +657,8 @@ config ARCH_PXA
+@@ -658,9 +658,8 @@ config ARCH_PXA
help
Support for Intel/Marvell's PXA2xx/PXA3xx processor line.
select ARCH_REQUIRE_GPIOLIB
select COMMON_CLK
select GENERIC_CLOCKEVENTS
-@@ -1005,6 +1004,8 @@ source "arch/arm/plat-pxa/Kconfig"
+@@ -1006,6 +1005,8 @@ source "arch/arm/plat-pxa/Kconfig"
source "arch/arm/mach-mmp/Kconfig"
source "arch/arm/mach-realview/Kconfig"
source "arch/arm/mach-rockchip/Kconfig"
-diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
-index 0531da8..4491c7b 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -956,7 +956,7 @@ config DEBUG_STI_UART
config DEBUG_LL_INCLUDE
string
-diff --git a/arch/arm/Makefile b/arch/arm/Makefile
-index 08a9ef5..51e5bed 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
-@@ -180,6 +180,7 @@ machine-$(CONFIG_ARCH_OMAP2PLUS) += omap2
+@@ -185,6 +185,7 @@ machine-$(CONFIG_ARCH_OMAP2PLUS) += omap
machine-$(CONFIG_ARCH_ORION5X) += orion5x
machine-$(CONFIG_ARCH_PICOXCELL) += picoxcell
machine-$(CONFIG_ARCH_PXA) += pxa
machine-$(CONFIG_ARCH_REALVIEW) += realview
machine-$(CONFIG_ARCH_ROCKCHIP) += rockchip
machine-$(CONFIG_ARCH_RPC) += rpc
-diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
-index 0320303..4a89023 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
-@@ -119,9 +119,6 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \
+@@ -119,9 +119,6 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-
kirkwood-ts219-6282.dtb
dtb-$(CONFIG_ARCH_MARCO) += marco-evb.dtb
dtb-$(CONFIG_ARCH_MOXART) += moxart-uc7112lx.dtb
dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
armada-370-mirabox.dtb \
armada-370-netgear-rn102.dtb \
-@@ -234,6 +231,9 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \
+@@ -234,6 +231,9 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420
dra7-evm.dtb
dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb
dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb
dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \
ste-hrefprev60-stuib.dtb \
ste-hrefprev60-tvk.dtb \
-diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig
-index 3c4eca7..a7f959e 100644
--- a/arch/arm/mach-msm/Kconfig
+++ b/arch/arm/mach-msm/Kconfig
@@ -1,50 +1,9 @@
config MACH_HALIBUT
depends on ARCH_MSM
-diff --git a/arch/arm/mach-msm/Makefile b/arch/arm/mach-msm/Makefile
-index 04b1bee..27c078a 100644
--- a/arch/arm/mach-msm/Makefile
+++ b/arch/arm/mach-msm/Makefile
@@ -13,17 +13,11 @@ obj-$(CONFIG_ARCH_QSD8X50) += dma.o io.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-msm/board-dt.c b/arch/arm/mach-msm/board-dt.c
-deleted file mode 100644
-index 1f11d93..0000000
--- a/arch/arm/mach-msm/board-dt.c
+++ /dev/null
@@ -1,41 +0,0 @@
-DT_MACHINE_START(APQ_DT, "Qualcomm MSM (Flattened Device Tree)")
- .dt_compat = apq8074_dt_match,
-MACHINE_END
-diff --git a/arch/arm/mach-msm/platsmp.c b/arch/arm/mach-msm/platsmp.c
-deleted file mode 100644
-index 251a91e..0000000
--- a/arch/arm/mach-msm/platsmp.c
+++ /dev/null
@@ -1,137 +0,0 @@
- .cpu_die = msm_cpu_die,
-#endif
-};
-diff --git a/arch/arm/mach-msm/scm-boot.c b/arch/arm/mach-msm/scm-boot.c
-deleted file mode 100644
-index 45cee3e..0000000
--- a/arch/arm/mach-msm/scm-boot.c
+++ /dev/null
@@ -1,39 +0,0 @@
- &cmd, sizeof(cmd), NULL, 0);
-}
-EXPORT_SYMBOL(scm_set_boot_addr);
-diff --git a/arch/arm/mach-msm/scm-boot.h b/arch/arm/mach-msm/scm-boot.h
-deleted file mode 100644
-index 7be32ff..0000000
--- a/arch/arm/mach-msm/scm-boot.h
+++ /dev/null
@@ -1,22 +0,0 @@
-int scm_set_boot_addr(phys_addr_t addr, int flags);
-
-#endif
-diff --git a/arch/arm/mach-msm/scm.c b/arch/arm/mach-msm/scm.c
-deleted file mode 100644
-index c536fd6..0000000
--- a/arch/arm/mach-msm/scm.c
+++ /dev/null
@@ -1,299 +0,0 @@
- return version;
-}
-EXPORT_SYMBOL(scm_get_version);
-diff --git a/arch/arm/mach-msm/scm.h b/arch/arm/mach-msm/scm.h
-deleted file mode 100644
-index 00b31ea..0000000
--- a/arch/arm/mach-msm/scm.h
+++ /dev/null
@@ -1,25 +0,0 @@
-extern u32 scm_get_version(void);
-
-#endif
-diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig
-new file mode 100644
-index 0000000..a028be2
--- /dev/null
+++ b/arch/arm/mach-qcom/Kconfig
@@ -0,0 +1,33 @@
+ bool
+
+endif
-diff --git a/arch/arm/mach-qcom/Makefile b/arch/arm/mach-qcom/Makefile
-new file mode 100644
-index 0000000..8f756ae
--- /dev/null
+++ b/arch/arm/mach-qcom/Makefile
@@ -0,0 +1,5 @@
+obj-$(CONFIG_QCOM_SCM) += scm.o scm-boot.o
+
+CFLAGS_scm.o :=$(call as-instr,.arch_extension sec,-DREQUIRES_SEC=1)
-diff --git a/arch/arm/mach-qcom/board.c b/arch/arm/mach-qcom/board.c
-new file mode 100644
-index 0000000..4529f6b
--- /dev/null
+++ b/arch/arm/mach-qcom/board.c
@@ -0,0 +1,40 @@
+DT_MACHINE_START(APQ_DT, "Qualcomm (Flattened Device Tree)")
+ .dt_compat = apq8074_dt_match,
+MACHINE_END
-diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c
-new file mode 100644
-index 0000000..67823a7
--- /dev/null
+++ b/arch/arm/mach-qcom/platsmp.c
@@ -0,0 +1,137 @@
+ .cpu_die = msm_cpu_die,
+#endif
+};
-diff --git a/arch/arm/mach-qcom/scm-boot.c b/arch/arm/mach-qcom/scm-boot.c
-new file mode 100644
-index 0000000..45cee3e
--- /dev/null
+++ b/arch/arm/mach-qcom/scm-boot.c
@@ -0,0 +1,39 @@
+ &cmd, sizeof(cmd), NULL, 0);
+}
+EXPORT_SYMBOL(scm_set_boot_addr);
-diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
-new file mode 100644
-index 0000000..7be32ff
--- /dev/null
+++ b/arch/arm/mach-qcom/scm-boot.h
@@ -0,0 +1,22 @@
+int scm_set_boot_addr(phys_addr_t addr, int flags);
+
+#endif
-diff --git a/arch/arm/mach-qcom/scm.c b/arch/arm/mach-qcom/scm.c
-new file mode 100644
-index 0000000..c536fd6
--- /dev/null
+++ b/arch/arm/mach-qcom/scm.c
@@ -0,0 +1,299 @@
+ return version;
+}
+EXPORT_SYMBOL(scm_get_version);
-diff --git a/arch/arm/mach-qcom/scm.h b/arch/arm/mach-qcom/scm.h
-new file mode 100644
-index 0000000..00b31ea
--- /dev/null
+++ b/arch/arm/mach-qcom/scm.h
@@ -0,0 +1,25 @@
+extern u32 scm_get_version(void);
+
+#endif
---
-1.7.10.4
-
drivers/clocksource/qcom-timer.c | 23 ++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)
-diff --git a/drivers/clocksource/qcom-timer.c b/drivers/clocksource/qcom-timer.c
-index dca829e..e807acf 100644
--- a/drivers/clocksource/qcom-timer.c
+++ b/drivers/clocksource/qcom-timer.c
-@@ -106,15 +106,6 @@ static notrace cycle_t msm_read_timer_count(struct clocksource *cs)
+@@ -106,15 +106,6 @@ static notrace cycle_t msm_read_timer_co
return readl_relaxed(source_base + TIMER_COUNT_VAL);
}
static void __init msm_dt_timer_init(struct device_node *np)
{
u32 freq;
-@@ -281,7 +272,7 @@ static void __init msm_dt_timer_init(struct device_node *np)
+@@ -281,7 +272,7 @@ static void __init msm_dt_timer_init(str
}
CLOCKSOURCE_OF_DECLARE(kpss_timer, "qcom,kpss-timer", msm_dt_timer_init);
CLOCKSOURCE_OF_DECLARE(scss_timer, "qcom,scss-timer", msm_dt_timer_init);
static int __init msm_timer_map(phys_addr_t addr, u32 event, u32 source,
u32 sts)
-@@ -301,6 +292,15 @@ static int __init msm_timer_map(phys_addr_t addr, u32 event, u32 source,
+@@ -301,6 +292,15 @@ static int __init msm_timer_map(phys_add
return 0;
}
msm_timer_init(19200000 / 4, 32, 7, false);
}
+#endif
---
-1.7.10.4
-
arch/arm/mach-qcom/platsmp.c | 22 +++++++++++-----------
2 files changed, 13 insertions(+), 13 deletions(-)
-diff --git a/arch/arm/mach-qcom/board.c b/arch/arm/mach-qcom/board.c
-index 4529f6b..830f69c 100644
--- a/arch/arm/mach-qcom/board.c
+++ b/arch/arm/mach-qcom/board.c
@@ -17,7 +17,7 @@
static const char * const qcom_dt_match[] __initconst = {
"qcom,msm8660-surf",
-@@ -31,7 +31,7 @@ static const char * const apq8074_dt_match[] __initconst = {
+@@ -31,7 +31,7 @@ static const char * const apq8074_dt_mat
};
DT_MACHINE_START(QCOM_DT, "Qualcomm (Flattened Device Tree)")
.dt_compat = qcom_dt_match,
MACHINE_END
-diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c
-index 67823a7..9c53ea7 100644
--- a/arch/arm/mach-qcom/platsmp.c
+++ b/arch/arm/mach-qcom/platsmp.c
@@ -30,7 +30,7 @@ extern void secondary_startup(void);
{
/*
* Synchronise with the boot thread.
-@@ -70,7 +70,7 @@ static void prepare_cold_cpu(unsigned int cpu)
+@@ -70,7 +70,7 @@ static void prepare_cold_cpu(unsigned in
"address\n");
}
{
static int cold_boot_done;
-@@ -108,7 +108,7 @@ static int msm_boot_secondary(unsigned int cpu, struct task_struct *idle)
+@@ -108,7 +108,7 @@ static int msm_boot_secondary(unsigned i
* does not support the ARM SCU, so just set the possible cpu mask to
* NR_CPUS.
*/
{
unsigned int i, ncores = get_core_count();
-@@ -122,16 +122,16 @@ static void __init msm_smp_init_cpus(void)
+@@ -122,16 +122,16 @@ static void __init msm_smp_init_cpus(voi
set_cpu_possible(i, true);
}
+ .cpu_die = qcom_cpu_die,
#endif
};
---
-1.7.10.4
-
include/asm-generic/vmlinux.lds.h | 10 ++++++++++
3 files changed, 59 insertions(+)
-diff --git a/arch/arm/include/asm/smp.h b/arch/arm/include/asm/smp.h
-index 22a3b9b..772435b 100644
--- a/arch/arm/include/asm/smp.h
+++ b/arch/arm/include/asm/smp.h
@@ -114,6 +114,15 @@ struct smp_operations {
/*
* set platform specific SMP operations
*/
-diff --git a/arch/arm/kernel/devtree.c b/arch/arm/kernel/devtree.c
-index f751714..c7419a5 100644
--- a/arch/arm/kernel/devtree.c
+++ b/arch/arm/kernel/devtree.c
@@ -18,6 +18,7 @@
#include <asm/cputype.h>
#include <asm/setup.h>
-@@ -63,6 +64,34 @@ void __init arm_dt_memblock_reserve(void)
+@@ -63,6 +64,34 @@ void __init arm_dt_memblock_reserve(void
}
}
if (!bootcpu_valid) {
pr_warn("DT missing boot CPU MPIDR[23:0], fall back to default cpu_logical_map\n");
return;
-diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
-index bc2121f..bd02ca7 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
-@@ -167,6 +167,15 @@
+@@ -177,6 +177,15 @@
#define CLK_OF_TABLES()
#endif
#define KERNEL_DTB() \
STRUCT_ALIGN(); \
VMLINUX_SYMBOL(__dtb_start) = .; \
-@@ -491,6 +500,7 @@
+@@ -502,6 +511,7 @@
MEM_DISCARD(init.rodata) \
CLK_OF_TABLES() \
CLKSRC_OF_TABLES() \
KERNEL_DTB() \
IRQCHIP_OF_MATCH_TABLE()
---
-1.7.10.4
-
arch/arm/mach-qcom/platsmp.c | 118 +++++++++++++++++++++++-------------------
3 files changed, 65 insertions(+), 69 deletions(-)
-diff --git a/arch/arm/mach-msm/common.h b/arch/arm/mach-msm/common.h
-index 0a4899b..572479a 100644
--- a/arch/arm/mach-msm/common.h
+++ b/arch/arm/mach-msm/common.h
@@ -23,8 +23,6 @@ extern void msm_map_qsd8x50_io(void);
struct msm_mmc_platform_data;
extern void msm_add_devices(void);
-diff --git a/arch/arm/mach-qcom/board.c b/arch/arm/mach-qcom/board.c
-index 830f69c..bae617e 100644
--- a/arch/arm/mach-qcom/board.c
+++ b/arch/arm/mach-qcom/board.c
@@ -11,30 +11,16 @@
-DT_MACHINE_START(APQ_DT, "Qualcomm (Flattened Device Tree)")
- .dt_compat = apq8074_dt_match,
-MACHINE_END
-diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c
-index 9c53ea7..ec8604d 100644
--- a/arch/arm/mach-qcom/platsmp.c
+++ b/arch/arm/mach-qcom/platsmp.c
@@ -13,17 +13,18 @@
extern void secondary_startup(void);
-@@ -36,12 +37,6 @@ static void __ref qcom_cpu_die(unsigned int cpu)
+@@ -36,12 +37,6 @@ static void __ref qcom_cpu_die(unsigned
}
#endif
static void qcom_secondary_init(unsigned int cpu)
{
/*
-@@ -51,33 +46,41 @@ static void qcom_secondary_init(unsigned int cpu)
+@@ -51,33 +46,41 @@ static void qcom_secondary_init(unsigned
spin_unlock(&boot_lock);
}
}
/*
-@@ -99,39 +102,48 @@ static int qcom_boot_secondary(unsigned int cpu, struct task_struct *idle)
+@@ -99,39 +102,48 @@ static int qcom_boot_secondary(unsigned
*/
spin_unlock(&boot_lock);
- * NR_CPUS.
- */
-static void __init qcom_smp_init_cpus(void)
-+static int msm8660_boot_secondary(unsigned int cpu, struct task_struct *idle)
- {
+-{
- unsigned int i, ncores = get_core_count();
-
- if (ncores > nr_cpu_ids) {
-
- for (i = 0; i < ncores; i++)
- set_cpu_possible(i, true);
++static int msm8660_boot_secondary(unsigned int cpu, struct task_struct *idle)
++{
+ return qcom_boot_secondary(cpu, scss_release_secondary);
}
#endif
};
+CPU_METHOD_OF_DECLARE(qcom_smp, "qcom,gcc-msm8660", &smp_msm8660_ops);
---
-1.7.10.4
-
Documentation/devicetree/bindings/arm/cpus.txt | 25 +++++++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)
-diff --git a/Documentation/devicetree/bindings/arm/cpus.txt b/Documentation/devicetree/bindings/arm/cpus.txt
-index 9130435..333f4ae 100644
--- a/Documentation/devicetree/bindings/arm/cpus.txt
+++ b/Documentation/devicetree/bindings/arm/cpus.txt
-@@ -180,7 +180,11 @@ nodes to be present and contain the properties described below.
+@@ -180,7 +180,11 @@ nodes to be present and contain the prop
be one of:
"spin-table"
"psci"
- cpu-release-addr
Usage: required for systems that have an "enable-method"
-@@ -191,6 +195,21 @@ nodes to be present and contain the properties described below.
+@@ -191,6 +195,21 @@ nodes to be present and contain the prop
property identifying a 64-bit zero-initialised
memory location.
+--
+[1] arm/msm/qcom,saw2.txt
+[2] arm/msm/qcom,kpss-acc.txt
---
-1.7.10.4
-
1 file changed, 30 insertions(+)
create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt
-diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt
-new file mode 100644
-index 0000000..1333db9
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/msm/qcom,kpss-acc.txt
@@ -0,0 +1,30 @@
+ reg = <0x02088000 0x1000>,
+ <0x02008000 0x1000>;
+ };
---
-1.7.10.4
-
1 file changed, 35 insertions(+)
create mode 100644 Documentation/devicetree/bindings/arm/msm/qcom,saw2.txt
-diff --git a/Documentation/devicetree/bindings/arm/msm/qcom,saw2.txt b/Documentation/devicetree/bindings/arm/msm/qcom,saw2.txt
-new file mode 100644
-index 0000000..1505fb8
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/msm/qcom,saw2.txt
@@ -0,0 +1,35 @@
+ compatible = "qcom,saw2";
+ reg = <0x02099000 0x1000>, <0x02009000 0x1000>;
+ };
---
-1.7.10.4
-
arch/arm/mach-qcom/scm-boot.h | 8 ++--
2 files changed, 111 insertions(+), 3 deletions(-)
-diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c
-index ec8604d..cb0783f 100644
--- a/arch/arm/mach-qcom/platsmp.c
+++ b/arch/arm/mach-qcom/platsmp.c
@@ -26,6 +26,16 @@
extern void secondary_startup(void);
static DEFINE_SPINLOCK(boot_lock);
-@@ -71,6 +81,85 @@ static int scss_release_secondary(unsigned int cpu)
+@@ -71,6 +81,85 @@ static int scss_release_secondary(unsign
return 0;
}
static DEFINE_PER_CPU(int, cold_boot_done);
static int qcom_boot_secondary(unsigned int cpu, int (*func)(unsigned int))
-@@ -110,6 +199,11 @@ static int msm8660_boot_secondary(unsigned int cpu, struct task_struct *idle)
+@@ -110,6 +199,11 @@ static int msm8660_boot_secondary(unsign
return qcom_boot_secondary(cpu, scss_release_secondary);
}
static void __init qcom_smp_prepare_cpus(unsigned int max_cpus)
{
int cpu, map;
-@@ -117,6 +211,8 @@ static void __init qcom_smp_prepare_cpus(unsigned int max_cpus)
+@@ -117,6 +211,8 @@ static void __init qcom_smp_prepare_cpus
static const int cold_boot_flags[] = {
0,
SCM_FLAG_COLDBOOT_CPU1,
};
for_each_present_cpu(cpu) {
-@@ -147,3 +243,13 @@ static struct smp_operations smp_msm8660_ops __initdata = {
+@@ -147,3 +243,13 @@ static struct smp_operations smp_msm8660
#endif
};
CPU_METHOD_OF_DECLARE(qcom_smp, "qcom,gcc-msm8660", &smp_msm8660_ops);
+#endif
+};
+CPU_METHOD_OF_DECLARE(qcom_smp_kpssv1, "qcom,kpss-acc-v1", &qcom_smp_kpssv1_ops);
-diff --git a/arch/arm/mach-qcom/scm-boot.h b/arch/arm/mach-qcom/scm-boot.h
-index 7be32ff..6aabb24 100644
--- a/arch/arm/mach-qcom/scm-boot.h
+++ b/arch/arm/mach-qcom/scm-boot.h
@@ -13,9 +13,11 @@
int scm_set_boot_addr(phys_addr_t addr, int flags);
---
-1.7.10.4
-
arch/arm/mach-qcom/platsmp.c | 123 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 123 insertions(+)
-diff --git a/arch/arm/mach-qcom/platsmp.c b/arch/arm/mach-qcom/platsmp.c
-index cb0783f..d690856 100644
--- a/arch/arm/mach-qcom/platsmp.c
+++ b/arch/arm/mach-qcom/platsmp.c
@@ -34,7 +34,15 @@
static DEFINE_PER_CPU(int, cold_boot_done);
static int qcom_boot_secondary(unsigned int cpu, int (*func)(unsigned int))
-@@ -204,6 +312,11 @@ static int kpssv1_boot_secondary(unsigned int cpu, struct task_struct *idle)
+@@ -204,6 +312,11 @@ static int kpssv1_boot_secondary(unsigne
return qcom_boot_secondary(cpu, kpssv1_release_secondary);
}
static void __init qcom_smp_prepare_cpus(unsigned int max_cpus)
{
int cpu, map;
-@@ -253,3 +366,13 @@ static struct smp_operations qcom_smp_kpssv1_ops __initdata = {
+@@ -253,3 +366,13 @@ static struct smp_operations qcom_smp_kp
#endif
};
CPU_METHOD_OF_DECLARE(qcom_smp_kpssv1, "qcom,kpss-acc-v1", &qcom_smp_kpssv1_ops);
+#endif
+};
+CPU_METHOD_OF_DECLARE(qcom_smp_kpssv2, "qcom,kpss-acc-v2", &qcom_smp_kpssv2_ops);
---
-1.7.10.4
-
drivers/tty/serial/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
-index a3815ea..ce9b12d 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -1024,7 +1024,7 @@ config SERIAL_SGI_IOC3
select SERIAL_CORE
config SERIAL_MSM_CONSOLE
---
-1.7.10.4
-
drivers/gpu/drm/msm/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/gpu/drm/msm/Kconfig b/drivers/gpu/drm/msm/Kconfig
-index c69d1e0..b698497 100644
--- a/drivers/gpu/drm/msm/Kconfig
+++ b/drivers/gpu/drm/msm/Kconfig
@@ -3,7 +3,7 @@ config DRM_MSM
select DRM_KMS_HELPER
select SHMEM
select TMPFS
---
-1.7.10.4
-
drivers/power/reset/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/power/reset/Kconfig b/drivers/power/reset/Kconfig
-index 6d452a7..fa0e4e0 100644
--- a/drivers/power/reset/Kconfig
+++ b/drivers/power/reset/Kconfig
@@ -22,7 +22,7 @@ config POWER_RESET_GPIO
help
Power off and restart support for Qualcomm boards.
---
-1.7.10.4
-
drivers/char/hw_random/Kconfig | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
-diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig
-index 2f2b084..244759b 100644
--- a/drivers/char/hw_random/Kconfig
+++ b/drivers/char/hw_random/Kconfig
@@ -342,11 +342,11 @@ config HW_RANDOM_TPM
To compile this driver as a module, choose M here. the
module will be called msm-rng.
---
-1.7.10.4
-
drivers/gpio/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
-index 903f24d..2c38d95 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -192,7 +192,7 @@ config GPIO_MSM_V1
help
Say yes here to support the GPIO interface on ARM v7 based
Qualcomm MSM chips. Most of the pins on the MSM can be
---
-1.7.10.4
-
arch/arm/configs/multi_v7_defconfig | 10 ++++++++++
1 file changed, 10 insertions(+)
-diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
-index ee69829..1a61bd8 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -31,6 +31,10 @@ CONFIG_SOC_OMAP5=y
CONFIG_TEGRA_IOMMU_GART=y
CONFIG_TEGRA_IOMMU_SMMU=y
CONFIG_MEMORY=y
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8974.dtsi | 69 +++++++++++++++++++++++++++++++++++
3 files changed, 145 insertions(+)
-diff --git a/arch/arm/boot/dts/qcom-msm8660.dtsi b/arch/arm/boot/dts/qcom-msm8660.dtsi
-index 69d6c4e..c52a9e9 100644
--- a/arch/arm/boot/dts/qcom-msm8660.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8660.dtsi
@@ -9,6 +9,30 @@
intc: interrupt-controller@2080000 {
compatible = "qcom,msm-8660-qgic";
interrupt-controller;
-diff --git a/arch/arm/boot/dts/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom-msm8960.dtsi
-index ff00282..02231a5 100644
--- a/arch/arm/boot/dts/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8960.dtsi
@@ -9,6 +9,36 @@
serial@16440000 {
compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
reg = <0x16440000 0x1000>,
-diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
-index 9e5dadb..39eebc5 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -9,6 +9,49 @@
restart@fc4ab000 {
compatible = "qcom,pshold";
reg = <0xfc4ab000 0x4>;
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8974.dtsi | 7 +++++++
1 file changed, 7 insertions(+)
-diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
-index 39eebc5..011eb09 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -186,5 +186,12 @@
+ };
};
};
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8960.dtsi | 7 +++++++
1 file changed, 7 insertions(+)
-diff --git a/arch/arm/boot/dts/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom-msm8960.dtsi
-index 02231a5..ecfba72 100644
--- a/arch/arm/boot/dts/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8960.dtsi
@@ -119,4 +119,11 @@
+ clock-names = "core";
+ };
};
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8974.dtsi | 5 +++++
2 files changed, 11 insertions(+)
-diff --git a/arch/arm/boot/dts/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom-msm8960.dtsi
-index ecfba72..997b7b9 100644
--- a/arch/arm/boot/dts/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8960.dtsi
@@ -39,6 +39,12 @@
intc: interrupt-controller@2000000 {
compatible = "qcom,msm-qgic2";
interrupt-controller;
-diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
-index 011eb09..f687239 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -52,6 +52,11 @@
soc: soc {
#address-cells = <1>;
#size-cells = <1>;
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 14 +-------------
1 file changed, 1 insertion(+), 13 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index ef2bf31..0e43fdd 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
@@ -50,7 +50,6 @@
const struct msm_pinctrl_soc_data *soc;
void __iomem *regs;
-@@ -783,22 +781,12 @@ static int msm_gpio_irq_set_wake(struct irq_data *d, unsigned int on)
+@@ -783,22 +781,12 @@ static int msm_gpio_irq_set_wake(struct
{
struct msm_pinctrl *pctrl;
unsigned long flags;
spin_unlock_irqrestore(&pctrl->lock, flags);
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 7 +++++++
1 file changed, 7 insertions(+)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 0e43fdd..e61b30a 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -857,6 +857,12 @@ static void msm_gpio_irq_handler(unsigned int irq, struct irq_desc *desc)
+@@ -857,6 +857,12 @@ static void msm_gpio_irq_handler(unsigne
chained_irq_exit(chip, desc);
}
static int msm_gpio_init(struct msm_pinctrl *pctrl)
{
struct gpio_chip *chip;
-@@ -895,6 +901,7 @@ static int msm_gpio_init(struct msm_pinctrl *pctrl)
+@@ -895,6 +901,7 @@ static int msm_gpio_init(struct msm_pinc
for (i = 0; i < chip->ngpio; i++) {
irq = irq_create_mapping(pctrl->domain, i);
irq_set_chip_and_handler(irq, &msm_gpio_irq_chip, handle_edge_irq);
irq_set_chip_data(irq, pctrl);
}
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index e61b30a..90ac995 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -870,10 +870,14 @@ static int msm_gpio_init(struct msm_pinctrl *pctrl)
+@@ -870,10 +870,14 @@ static int msm_gpio_init(struct msm_pinc
int ret;
int i;
int r;
chip->label = dev_name(pctrl->dev);
chip->dev = pctrl->dev;
chip->owner = THIS_MODULE;
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm8x74.c | 1 -
3 files changed, 1 insertion(+), 6 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 90ac995..4474e00 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
@@ -28,7 +28,6 @@
#include <linux/spinlock.h>
#include "core.h"
-diff --git a/drivers/pinctrl/pinctrl-msm.h b/drivers/pinctrl/pinctrl-msm.h
-index 206e782..8fbe9fb 100644
--- a/drivers/pinctrl/pinctrl-msm.h
+++ b/drivers/pinctrl/pinctrl-msm.h
@@ -13,10 +13,7 @@
/**
* struct msm_function - a pinmux function
-diff --git a/drivers/pinctrl/pinctrl-msm8x74.c b/drivers/pinctrl/pinctrl-msm8x74.c
-index f944bf2..bb5ded69f 100644
--- a/drivers/pinctrl/pinctrl-msm8x74.c
+++ b/drivers/pinctrl/pinctrl-msm8x74.c
@@ -15,7 +15,6 @@
#include "pinctrl-msm.h"
---
-1.7.10.4
-
drivers/pinctrl/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
-index 1e4e693..06cee01 100644
--- a/drivers/pinctrl/Kconfig
+++ b/drivers/pinctrl/Kconfig
@@ -224,7 +224,7 @@ config PINCTRL_MSM
select PINCTRL_MSM
help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 4474e00..87f6c3c 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -258,8 +258,10 @@ static int msm_config_set(struct pinctrl_dev *pctldev, unsigned int pin,
+@@ -258,8 +258,10 @@ static int msm_config_set(struct pinctrl
#define MSM_PULL_DOWN 1
#define MSM_PULL_UP 3
static int msm_config_group_get(struct pinctrl_dev *pctldev,
unsigned int group,
-@@ -296,7 +298,7 @@ static int msm_config_group_get(struct pinctrl_dev *pctldev,
+@@ -296,7 +298,7 @@ static int msm_config_group_get(struct p
arg = arg == MSM_PULL_UP;
break;
case PIN_CONFIG_DRIVE_STRENGTH:
break;
default:
dev_err(pctrl->dev, "Unsupported config parameter: %x\n",
-@@ -349,10 +351,10 @@ static int msm_config_group_set(struct pinctrl_dev *pctldev,
+@@ -349,10 +351,10 @@ static int msm_config_group_set(struct p
break;
case PIN_CONFIG_DRIVE_STRENGTH:
/* Check for invalid values */
break;
default:
dev_err(pctrl->dev, "Unsupported config parameter: %x\n",
-@@ -531,7 +533,7 @@ static void msm_gpio_dbg_show_one(struct seq_file *s,
+@@ -531,7 +533,7 @@ static void msm_gpio_dbg_show_one(struct
pull = (ctl_reg >> g->pull_bit) & 3;
seq_printf(s, " %-8s: %-3s %d", g->name, is_out ? "out" : "in", func);
seq_printf(s, " %s", pulls[pull]);
}
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 16 ----------------
1 file changed, 16 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 87f6c3c..ab46e3a 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -401,8 +401,6 @@ static int msm_gpio_direction_input(struct gpio_chip *chip, unsigned offset)
+@@ -401,8 +401,6 @@ static int msm_gpio_direction_input(stru
u32 val;
g = &pctrl->soc->groups[offset];
spin_lock_irqsave(&pctrl->lock, flags);
-@@ -423,8 +421,6 @@ static int msm_gpio_direction_output(struct gpio_chip *chip, unsigned offset, in
+@@ -423,8 +421,6 @@ static int msm_gpio_direction_output(str
u32 val;
g = &pctrl->soc->groups[offset];
spin_lock_irqsave(&pctrl->lock, flags);
-@@ -451,8 +447,6 @@ static int msm_gpio_get(struct gpio_chip *chip, unsigned offset)
+@@ -451,8 +447,6 @@ static int msm_gpio_get(struct gpio_chip
u32 val;
g = &pctrl->soc->groups[offset];
val = readl(pctrl->regs + g->io_reg);
return !!(val & BIT(g->in_bit));
-@@ -466,8 +460,6 @@ static void msm_gpio_set(struct gpio_chip *chip, unsigned offset, int value)
+@@ -466,8 +460,6 @@ static void msm_gpio_set(struct gpio_chi
u32 val;
g = &pctrl->soc->groups[offset];
spin_lock_irqsave(&pctrl->lock, flags);
-@@ -616,8 +608,6 @@ static void msm_gpio_irq_mask(struct irq_data *d)
+@@ -616,8 +608,6 @@ static void msm_gpio_irq_mask(struct irq
pctrl = irq_data_get_irq_chip_data(d);
g = &pctrl->soc->groups[d->hwirq];
spin_lock_irqsave(&pctrl->lock, flags);
-@@ -639,8 +629,6 @@ static void msm_gpio_irq_unmask(struct irq_data *d)
+@@ -639,8 +629,6 @@ static void msm_gpio_irq_unmask(struct i
pctrl = irq_data_get_irq_chip_data(d);
g = &pctrl->soc->groups[d->hwirq];
spin_lock_irqsave(&pctrl->lock, flags);
-@@ -666,8 +654,6 @@ static void msm_gpio_irq_ack(struct irq_data *d)
+@@ -666,8 +654,6 @@ static void msm_gpio_irq_ack(struct irq_
pctrl = irq_data_get_irq_chip_data(d);
g = &pctrl->soc->groups[d->hwirq];
spin_lock_irqsave(&pctrl->lock, flags);
-@@ -692,8 +678,6 @@ static int msm_gpio_irq_set_type(struct irq_data *d, unsigned int type)
+@@ -692,8 +678,6 @@ static int msm_gpio_irq_set_type(struct
pctrl = irq_data_get_irq_chip_data(d);
g = &pctrl->soc->groups[d->hwirq];
spin_lock_irqsave(&pctrl->lock, flags);
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 29 +++++------------------------
1 file changed, 5 insertions(+), 24 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index ab46e3a..91de8bc 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -200,28 +200,17 @@ static const struct pinmux_ops msm_pinmux_ops = {
+@@ -200,28 +200,17 @@ static const struct pinmux_ops msm_pinmu
static int msm_config_reg(struct msm_pinctrl *pctrl,
const struct msm_pingroup *g,
unsigned param,
*bit = g->drv_bit;
*mask = 7;
break;
-@@ -230,12 +219,6 @@ static int msm_config_reg(struct msm_pinctrl *pctrl,
+@@ -230,12 +219,6 @@ static int msm_config_reg(struct msm_pin
return -ENOTSUPP;
}
return 0;
}
-@@ -273,17 +256,16 @@ static int msm_config_group_get(struct pinctrl_dev *pctldev,
+@@ -273,17 +256,16 @@ static int msm_config_group_get(struct p
unsigned mask;
unsigned arg;
unsigned bit;
arg = (val >> bit) & mask;
/* Convert register value to pinconf value */
-@@ -323,7 +305,6 @@ static int msm_config_group_set(struct pinctrl_dev *pctldev,
+@@ -323,7 +305,6 @@ static int msm_config_group_set(struct p
unsigned mask;
unsigned arg;
unsigned bit;
int ret;
u32 val;
int i;
-@@ -334,7 +315,7 @@ static int msm_config_group_set(struct pinctrl_dev *pctldev,
+@@ -334,7 +315,7 @@ static int msm_config_group_set(struct p
param = pinconf_to_config_param(configs[i]);
arg = pinconf_to_config_argument(configs[i]);
if (ret < 0)
return ret;
-@@ -369,10 +350,10 @@ static int msm_config_group_set(struct pinctrl_dev *pctldev,
+@@ -369,10 +350,10 @@ static int msm_config_group_set(struct p
}
spin_lock_irqsave(&pctrl->lock, flags);
spin_unlock_irqrestore(&pctrl->lock, flags);
}
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 91de8bc..19d2feb 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -214,6 +214,11 @@ static int msm_config_reg(struct msm_pinctrl *pctrl,
+@@ -214,6 +214,11 @@ static int msm_config_reg(struct msm_pin
*bit = g->drv_bit;
*mask = 7;
break;
default:
dev_err(pctrl->dev, "Invalid config param %04x\n", param);
return -ENOTSUPP;
-@@ -282,6 +287,14 @@ static int msm_config_group_get(struct pinctrl_dev *pctldev,
+@@ -282,6 +287,14 @@ static int msm_config_group_get(struct p
case PIN_CONFIG_DRIVE_STRENGTH:
arg = msm_regval_to_drive(arg);
break;
default:
dev_err(pctrl->dev, "Unsupported config parameter: %x\n",
param);
-@@ -337,6 +350,20 @@ static int msm_config_group_set(struct pinctrl_dev *pctldev,
+@@ -337,6 +350,20 @@ static int msm_config_group_set(struct p
else
arg = (arg / 2) - 1;
break;
default:
dev_err(pctrl->dev, "Unsupported config parameter: %x\n",
param);
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm8x74.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm8x74.c b/drivers/pinctrl/pinctrl-msm8x74.c
-index bb5ded69f..dde5529 100644
--- a/drivers/pinctrl/pinctrl-msm8x74.c
+++ b/drivers/pinctrl/pinctrl-msm8x74.c
@@ -405,6 +405,7 @@ enum msm8x74_functions {
MSM_MUX_blsp_uart2,
MSM_MUX_blsp_uart8,
MSM_MUX_slimbus,
-@@ -415,6 +416,9 @@ static const char * const blsp_i2c2_groups[] = { "gpio6", "gpio7" };
+@@ -415,6 +416,9 @@ static const char * const blsp_i2c2_grou
static const char * const blsp_i2c6_groups[] = { "gpio29", "gpio30" };
static const char * const blsp_i2c11_groups[] = { "gpio83", "gpio84" };
static const char * const blsp_spi1_groups[] = { "gpio0", "gpio1", "gpio2", "gpio3" };
static const char * const blsp_uart2_groups[] = { "gpio4", "gpio5" };
static const char * const blsp_uart8_groups[] = { "gpio45", "gpio46" };
static const char * const slimbus_groups[] = { "gpio70", "gpio71" };
-@@ -424,6 +428,7 @@ static const struct msm_function msm8x74_functions[] = {
+@@ -424,6 +428,7 @@ static const struct msm_function msm8x74
FUNCTION(blsp_i2c6),
FUNCTION(blsp_i2c11),
FUNCTION(blsp_spi1),
FUNCTION(blsp_uart2),
FUNCTION(blsp_uart8),
FUNCTION(slimbus),
-@@ -475,10 +480,10 @@ static const struct msm_pingroup msm8x74_groups[] = {
+@@ -475,10 +480,10 @@ static const struct msm_pingroup msm8x74
PINGROUP(42, NA, NA, NA, NA, NA, NA, NA),
PINGROUP(43, NA, NA, NA, NA, NA, NA, NA),
PINGROUP(44, NA, NA, NA, NA, NA, NA, NA),
PINGROUP(49, NA, NA, NA, NA, NA, NA, NA),
PINGROUP(50, NA, NA, NA, NA, NA, NA, NA),
PINGROUP(51, NA, NA, NA, NA, NA, NA, NA),
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.c | 1 -
1 file changed, 1 deletion(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 19d2feb..343f421 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -215,7 +215,6 @@ static int msm_config_reg(struct msm_pinctrl *pctrl,
+@@ -215,7 +215,6 @@ static int msm_config_reg(struct msm_pin
*mask = 7;
break;
case PIN_CONFIG_OUTPUT:
*bit = g->oe_bit;
*mask = 1;
break;
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm.h | 1 +
2 files changed, 6 insertions(+), 1 deletion(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 343f421..706809e 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -665,7 +665,10 @@ static void msm_gpio_irq_ack(struct irq_data *d)
+@@ -665,7 +665,10 @@ static void msm_gpio_irq_ack(struct irq_
spin_lock_irqsave(&pctrl->lock, flags);
val = readl(pctrl->regs + g->intr_status_reg);
writel(val, pctrl->regs + g->intr_status_reg);
if (test_bit(d->hwirq, pctrl->dual_edge_irqs))
-@@ -744,6 +747,7 @@ static int msm_gpio_irq_set_type(struct irq_data *d, unsigned int type)
+@@ -744,6 +747,7 @@ static int msm_gpio_irq_set_type(struct
break;
case IRQ_TYPE_EDGE_BOTH:
val |= BIT(g->intr_detection_bit);
break;
case IRQ_TYPE_LEVEL_LOW:
break;
-diff --git a/drivers/pinctrl/pinctrl-msm.h b/drivers/pinctrl/pinctrl-msm.h
-index 8fbe9fb..6e26f1b 100644
--- a/drivers/pinctrl/pinctrl-msm.h
+++ b/drivers/pinctrl/pinctrl-msm.h
@@ -84,6 +84,7 @@ struct msm_pingroup {
unsigned intr_target_bit:5;
unsigned intr_raw_status_bit:5;
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-msm8x74.c | 3 ++-
3 files changed, 6 insertions(+), 4 deletions(-)
-diff --git a/drivers/pinctrl/pinctrl-msm.c b/drivers/pinctrl/pinctrl-msm.c
-index 706809e..7d67d34 100644
--- a/drivers/pinctrl/pinctrl-msm.c
+++ b/drivers/pinctrl/pinctrl-msm.c
-@@ -145,12 +145,12 @@ static int msm_pinmux_enable(struct pinctrl_dev *pctldev,
+@@ -145,12 +145,12 @@ static int msm_pinmux_enable(struct pinc
if (WARN_ON(g->mux_bit < 0))
return -EINVAL;
return -EINVAL;
spin_lock_irqsave(&pctrl->lock, flags);
-diff --git a/drivers/pinctrl/pinctrl-msm.h b/drivers/pinctrl/pinctrl-msm.h
-index 6e26f1b..7b2a227 100644
--- a/drivers/pinctrl/pinctrl-msm.h
+++ b/drivers/pinctrl/pinctrl-msm.h
@@ -65,7 +65,8 @@ struct msm_pingroup {
s16 ctl_reg;
s16 io_reg;
-diff --git a/drivers/pinctrl/pinctrl-msm8x74.c b/drivers/pinctrl/pinctrl-msm8x74.c
-index dde5529..57766d5 100644
--- a/drivers/pinctrl/pinctrl-msm8x74.c
+++ b/drivers/pinctrl/pinctrl-msm8x74.c
-@@ -341,7 +341,7 @@ static const unsigned int sdc2_data_pins[] = { 151 };
+@@ -341,7 +341,7 @@ static const unsigned int sdc2_data_pins
.name = "gpio" #id, \
.pins = gpio##id##_pins, \
.npins = ARRAY_SIZE(gpio##id##_pins), \
MSM_MUX_NA, /* gpio mode */ \
MSM_MUX_##f1, \
MSM_MUX_##f2, \
-@@ -351,6 +351,7 @@ static const unsigned int sdc2_data_pins[] = { 151 };
+@@ -351,6 +351,7 @@ static const unsigned int sdc2_data_pins
MSM_MUX_##f6, \
MSM_MUX_##f7 \
}, \
.ctl_reg = 0x1000 + 0x10 * id, \
.io_reg = 0x1004 + 0x10 * id, \
.intr_cfg_reg = 0x1008 + 0x10 * id, \
---
-1.7.10.4
-
3 files changed, 575 insertions(+)
create mode 100644 drivers/pinctrl/pinctrl-apq8064.c
-diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
-index 06cee01..91993a6 100644
--- a/drivers/pinctrl/Kconfig
+++ b/drivers/pinctrl/Kconfig
@@ -222,6 +222,14 @@ config PINCTRL_MSM
config PINCTRL_MSM8X74
tristate "Qualcomm 8x74 pin controller driver"
depends on GPIOLIB && OF
-diff --git a/drivers/pinctrl/Makefile b/drivers/pinctrl/Makefile
-index 4b83588..9e1fb67 100644
--- a/drivers/pinctrl/Makefile
+++ b/drivers/pinctrl/Makefile
-@@ -38,6 +38,7 @@ obj-$(CONFIG_PINCTRL_IMX23) += pinctrl-imx23.o
+@@ -38,6 +38,7 @@ obj-$(CONFIG_PINCTRL_IMX23) += pinctrl-i
obj-$(CONFIG_PINCTRL_IMX25) += pinctrl-imx25.o
obj-$(CONFIG_PINCTRL_IMX28) += pinctrl-imx28.o
obj-$(CONFIG_PINCTRL_MSM) += pinctrl-msm.o
obj-$(CONFIG_PINCTRL_MSM8X74) += pinctrl-msm8x74.o
obj-$(CONFIG_PINCTRL_NOMADIK) += pinctrl-nomadik.o
obj-$(CONFIG_PINCTRL_STN8815) += pinctrl-nomadik-stn8815.o
-diff --git a/drivers/pinctrl/pinctrl-apq8064.c b/drivers/pinctrl/pinctrl-apq8064.c
-new file mode 100644
-index 0000000..7c2a8ba
--- /dev/null
+++ b/drivers/pinctrl/pinctrl-apq8064.c
@@ -0,0 +1,566 @@
+MODULE_DESCRIPTION("Qualcomm APQ8064 pinctrl driver");
+MODULE_LICENSE("GPL v2");
+MODULE_DEVICE_TABLE(of, apq8064_pinctrl_of_match);
---
-1.7.10.4
-
drivers/pinctrl/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
-index 91993a6..d34639d 100644
--- a/drivers/pinctrl/Kconfig
+++ b/drivers/pinctrl/Kconfig
@@ -232,7 +232,7 @@ config PINCTRL_APQ8064
select PINCTRL_MSM
help
This is the pinctrl, pinmux, pinconf and gpiolib driver for the
---
-1.7.10.4
-
3 files changed, 662 insertions(+)
create mode 100644 drivers/pinctrl/pinctrl-ipq8064.c
-diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig
-index d34639d..232e6bc 100644
--- a/drivers/pinctrl/Kconfig
+++ b/drivers/pinctrl/Kconfig
@@ -230,6 +230,14 @@ config PINCTRL_APQ8064
config PINCTRL_MSM8X74
tristate "Qualcomm 8x74 pin controller driver"
depends on GPIOLIB && OF && (ARCH_QCOM || COMPILE_TEST)
-diff --git a/drivers/pinctrl/Makefile b/drivers/pinctrl/Makefile
-index 9e1fb67..6b8474a 100644
--- a/drivers/pinctrl/Makefile
+++ b/drivers/pinctrl/Makefile
-@@ -39,6 +39,7 @@ obj-$(CONFIG_PINCTRL_IMX25) += pinctrl-imx25.o
+@@ -39,6 +39,7 @@ obj-$(CONFIG_PINCTRL_IMX25) += pinctrl-i
obj-$(CONFIG_PINCTRL_IMX28) += pinctrl-imx28.o
obj-$(CONFIG_PINCTRL_MSM) += pinctrl-msm.o
obj-$(CONFIG_PINCTRL_APQ8064) += pinctrl-apq8064.o
obj-$(CONFIG_PINCTRL_MSM8X74) += pinctrl-msm8x74.o
obj-$(CONFIG_PINCTRL_NOMADIK) += pinctrl-nomadik.o
obj-$(CONFIG_PINCTRL_STN8815) += pinctrl-nomadik-stn8815.o
-diff --git a/drivers/pinctrl/pinctrl-ipq8064.c b/drivers/pinctrl/pinctrl-ipq8064.c
-new file mode 100644
-index 0000000..1700b49
--- /dev/null
+++ b/drivers/pinctrl/pinctrl-ipq8064.c
@@ -0,0 +1,653 @@
+MODULE_DESCRIPTION("Qualcomm IPQ8064 pinctrl driver");
+MODULE_LICENSE("GPL v2");
+MODULE_DEVICE_TABLE(of, ipq8064_pinctrl_of_match);
---
-1.7.10.4
-
1 file changed, 95 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.txt
-diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.txt
-new file mode 100644
-index 0000000..e0d35a4
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,ipq8064-pinctrl.txt
@@ -0,0 +1,95 @@
+ };
+ };
+ };
---
-1.7.10.4
-
arch/arm/mach-qcom/Kconfig | 1 +
1 file changed, 1 insertion(+)
-diff --git a/arch/arm/mach-qcom/Kconfig b/arch/arm/mach-qcom/Kconfig
-index a028be2..6440c11 100644
--- a/arch/arm/mach-qcom/Kconfig
+++ b/arch/arm/mach-qcom/Kconfig
@@ -5,6 +5,7 @@ config ARCH_QCOM
select QCOM_SCM if SMP
help
Support for Qualcomm's devicetree based systems.
---
-1.7.10.4
-
drivers/pinctrl/pinctrl-ipq8064.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/pinctrl/pinctrl-ipq8064.c b/drivers/pinctrl/pinctrl-ipq8064.c
-index 1700b49..54aba9f 100644
--- a/drivers/pinctrl/pinctrl-ipq8064.c
+++ b/drivers/pinctrl/pinctrl-ipq8064.c
@@ -20,7 +20,7 @@
PINCTRL_PIN(1, "GPIO_1"),
PINCTRL_PIN(2, "GPIO_2"),
PINCTRL_PIN(3, "GPIO_3"),
---
-1.7.10.4
-
1 file changed, 41 insertions(+)
create mode 100644 Documentation/devicetree/bindings/dma/qcom_bam_dma.txt
-diff --git a/Documentation/devicetree/bindings/dma/qcom_bam_dma.txt b/Documentation/devicetree/bindings/dma/qcom_bam_dma.txt
-new file mode 100644
-index 0000000..d75a9d7
--- /dev/null
+++ b/Documentation/devicetree/bindings/dma/qcom_bam_dma.txt
@@ -0,0 +1,41 @@
+ dmas = <&uart-bam 0>, <&uart-bam 1>;
+ dma-names = "rx", "tx";
+ };
---
-1.7.10.4
-
3 files changed, 1122 insertions(+)
create mode 100644 drivers/dma/qcom_bam_dma.c
-diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig
-index 605b016..f87cef9 100644
--- a/drivers/dma/Kconfig
+++ b/drivers/dma/Kconfig
@@ -401,4 +401,13 @@ config DMATEST
+ provides DMA capabilities for a variety of on-chip devices.
+
endif
-diff --git a/drivers/dma/Makefile b/drivers/dma/Makefile
-index a029d0f4..5150c82 100644
--- a/drivers/dma/Makefile
+++ b/drivers/dma/Makefile
@@ -44,3 +44,5 @@ obj-$(CONFIG_DMA_JZ4740) += dma-jz4740.o
obj-$(CONFIG_MOXART_DMA) += moxart-dma.o
+obj-$(CONFIG_FSL_EDMA) += fsl-edma.o
+obj-$(CONFIG_QCOM_BAM_DMA) += qcom_bam_dma.o
-diff --git a/drivers/dma/qcom_bam_dma.c b/drivers/dma/qcom_bam_dma.c
-new file mode 100644
-index 0000000..82c9231
--- /dev/null
+++ b/drivers/dma/qcom_bam_dma.c
@@ -0,0 +1,1111 @@
+MODULE_AUTHOR("Andy Gross <agross@codeaurora.org>");
+MODULE_DESCRIPTION("QCOM BAM DMA engine driver");
+MODULE_LICENSE("GPL v2");
---
-1.7.10.4
-
1 file changed, 55 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mmc/sdhci-msm.txt
-diff --git a/Documentation/devicetree/bindings/mmc/sdhci-msm.txt b/Documentation/devicetree/bindings/mmc/sdhci-msm.txt
-new file mode 100644
-index 0000000..81b33b5
--- /dev/null
+++ b/Documentation/devicetree/bindings/mmc/sdhci-msm.txt
@@ -0,0 +1,55 @@
+ clocks = <&gcc GCC_SDCC2_APPS_CLK>, <&gcc GCC_SDCC2_AHB_CLK>;
+ clock-names = "core", "iface";
+ };
---
-1.7.10.4
-
3 files changed, 222 insertions(+)
create mode 100644 drivers/mmc/host/sdhci-msm.c
-diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
-index 1384f67..c0ea72a 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -334,6 +334,19 @@ config MMC_ATMELMCI
config MMC_MSM
tristate "Qualcomm SDCC Controller Support"
depends on MMC && (ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50)
-diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile
-index 3483b6b..bbc8445 100644
--- a/drivers/mmc/host/Makefile
+++ b/drivers/mmc/host/Makefile
-@@ -64,6 +64,7 @@ obj-$(CONFIG_MMC_SDHCI_OF_ESDHC) += sdhci-of-esdhc.o
+@@ -65,6 +65,7 @@ obj-$(CONFIG_MMC_SDHCI_OF_ESDHC) += sdhc
obj-$(CONFIG_MMC_SDHCI_OF_HLWD) += sdhci-of-hlwd.o
obj-$(CONFIG_MMC_SDHCI_BCM_KONA) += sdhci-bcm-kona.o
obj-$(CONFIG_MMC_SDHCI_BCM2835) += sdhci-bcm2835.o
ifeq ($(CONFIG_CB710_DEBUG),y)
CFLAGS-cb710-mmc += -DDEBUG
-diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c
-new file mode 100644
-index 0000000..3b0606f
--- /dev/null
+++ b/drivers/mmc/host/sdhci-msm.c
@@ -0,0 +1,208 @@
+
+MODULE_DESCRIPTION("Qualcomm Secure Digital Host Controller Interface driver");
+MODULE_LICENSE("GPL v2");
---
-1.7.10.4
-
drivers/mmc/host/sdhci-msm.c | 420 +++++++++++++++++++++++++++++++++++++++++-
1 file changed, 415 insertions(+), 5 deletions(-)
-diff --git a/drivers/mmc/host/sdhci-msm.c b/drivers/mmc/host/sdhci-msm.c
-index 3b0606f..acb0e9e 100644
--- a/drivers/mmc/host/sdhci-msm.c
+++ b/drivers/mmc/host/sdhci-msm.c
@@ -18,6 +18,8 @@
static const struct of_device_id sdhci_msm_dt_match[] = {
{ .compatible = "qcom,sdhci-msm-v4" },
{},
---
-1.7.10.4
-
include/linux/of_fdt.h | 4 ++
2 files changed, 135 insertions(+)
-diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
-index 758b4f8..819e112 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -15,6 +15,7 @@
#include <linux/string.h>
#include <linux/errno.h>
#include <linux/slab.h>
-@@ -440,6 +441,118 @@ struct boot_param_header *initial_boot_params;
+@@ -440,6 +441,118 @@ struct boot_param_header *initial_boot_p
#ifdef CONFIG_OF_EARLY_FLATTREE
/**
* of_scan_flat_dt - scan flattened tree blob and call callback on each.
* @it: callback function
* @data: context data pointer
-@@ -856,6 +969,16 @@ void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size)
+@@ -859,6 +972,16 @@ void __init __weak early_init_dt_add_mem
memblock_add(base, size);
}
/*
* called from unflatten_device_tree() to bootstrap devicetree itself
* Architectures can override this definition if memblock isn't used
-@@ -864,6 +987,14 @@ void * __init __weak early_init_dt_alloc_memory_arch(u64 size, u64 align)
+@@ -867,6 +990,14 @@ void * __init __weak early_init_dt_alloc
{
return __va(memblock_alloc(size, align));
}
#endif
bool __init early_init_dt_scan(void *params)
-diff --git a/include/linux/of_fdt.h b/include/linux/of_fdt.h
-index 2b77058..ddd7219 100644
--- a/include/linux/of_fdt.h
+++ b/include/linux/of_fdt.h
-@@ -98,7 +98,10 @@ extern int early_init_dt_scan_chosen(unsigned long node, const char *uname,
+@@ -98,7 +98,10 @@ extern int early_init_dt_scan_chosen(uns
int depth, void *data);
extern int early_init_dt_scan_memory(unsigned long node, const char *uname,
int depth, void *data);
extern void * early_init_dt_alloc_memory_arch(u64 size, u64 align);
extern u64 dt_mem_next_cell(int s, __be32 **cellp);
-@@ -118,6 +121,7 @@ extern void unflatten_and_copy_device_tree(void);
+@@ -118,6 +121,7 @@ extern void unflatten_and_copy_device_tr
extern void early_init_devtree(void *);
extern void early_get_first_memblock_info(void *, phys_addr_t *);
#else /* CONFIG_OF_FLATTREE */
static inline const char *of_flat_dt_get_machine_name(void) { return NULL; }
static inline void unflatten_device_tree(void) {}
static inline void unflatten_and_copy_device_tree(void) {}
---
-1.7.10.4
-
create mode 100644 drivers/of/of_reserved_mem.c
create mode 100644 include/linux/of_reserved_mem.h
-diff --git a/drivers/of/Kconfig b/drivers/of/Kconfig
-index c6973f1..30a7d87 100644
--- a/drivers/of/Kconfig
+++ b/drivers/of/Kconfig
@@ -75,4 +75,10 @@ config OF_MTD
+ Helpers to allow for reservation of memory regions
+
endmenu # OF
-diff --git a/drivers/of/Makefile b/drivers/of/Makefile
-index efd0510..ed9660a 100644
--- a/drivers/of/Makefile
+++ b/drivers/of/Makefile
@@ -9,3 +9,4 @@ obj-$(CONFIG_OF_MDIO) += of_mdio.o
obj-$(CONFIG_OF_PCI_IRQ) += of_pci_irq.o
obj-$(CONFIG_OF_MTD) += of_mtd.o
+obj-$(CONFIG_OF_RESERVED_MEM) += of_reserved_mem.o
-diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
-index 819e112..510c0d8 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -15,6 +15,7 @@
#include <linux/sizes.h>
#include <linux/string.h>
#include <linux/errno.h>
-@@ -450,7 +451,7 @@ static int __init __reserved_mem_reserve_reg(unsigned long node,
+@@ -450,7 +451,7 @@ static int __init __reserved_mem_reserve
phys_addr_t base, size;
unsigned long len;
__be32 *prop;
prop = of_get_flat_dt_prop(node, "reg", &len);
if (!prop)
-@@ -477,6 +478,10 @@ static int __init __reserved_mem_reserve_reg(unsigned long node,
+@@ -477,6 +478,10 @@ static int __init __reserved_mem_reserve
uname, &base, (unsigned long)size / SZ_1M);
len -= t_len;
}
return 0;
}
-@@ -512,6 +517,7 @@ static int __init __fdt_scan_reserved_mem(unsigned long node, const char *uname,
+@@ -512,6 +517,7 @@ static int __init __fdt_scan_reserved_me
{
static int found;
const char *status;
if (!found && depth == 1 && strcmp(uname, "reserved-memory") == 0) {
if (__reserved_mem_check_root(node) != 0) {
-@@ -534,7 +540,9 @@ static int __init __fdt_scan_reserved_mem(unsigned long node, const char *uname,
+@@ -534,7 +540,9 @@ static int __init __fdt_scan_reserved_me
if (status && strcmp(status, "okay") != 0 && strcmp(status, "ok") != 0)
return 0;
/* scan next node */
return 0;
-@@ -550,6 +558,7 @@ static int __init __fdt_scan_reserved_mem(unsigned long node, const char *uname,
+@@ -550,6 +558,7 @@ static int __init __fdt_scan_reserved_me
void __init early_init_fdt_scan_reserved_mem(void)
{
of_scan_flat_dt(__fdt_scan_reserved_mem, NULL);
}
/**
-diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c
-new file mode 100644
-index 0000000..69b8117
--- /dev/null
+++ b/drivers/of/of_reserved_mem.c
@@ -0,0 +1,188 @@
+ &rmem->base, &rmem->size);
+ }
+}
-diff --git a/include/linux/of_reserved_mem.h b/include/linux/of_reserved_mem.h
-new file mode 100644
-index 0000000..89226ed
--- /dev/null
+++ b/include/linux/of_reserved_mem.h
@@ -0,0 +1,21 @@
+#endif
+
+#endif /* __OF_RESERVED_MEM_H */
---
-1.7.10.4
-
include/linux/of_reserved_mem.h | 32 ++++++++++++++++++++++++++++++++
3 files changed, 72 insertions(+)
-diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c
-index 69b8117..daaaf93 100644
--- a/drivers/of/of_reserved_mem.c
+++ b/drivers/of/of_reserved_mem.c
-@@ -170,6 +170,33 @@ static int __init __reserved_mem_alloc_size(unsigned long node,
+@@ -170,6 +170,33 @@ static int __init __reserved_mem_alloc_s
return 0;
}
+ __reserved_mem_init_node(rmem);
}
}
-diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
-index bd02ca7..146e4ff 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
-@@ -167,6 +167,16 @@
+@@ -177,6 +177,16 @@
#define CLK_OF_TABLES()
#endif
#ifdef CONFIG_SMP
#define CPU_METHOD_OF_TABLES() . = ALIGN(8); \
VMLINUX_SYMBOL(__cpu_method_of_table_begin) = .; \
-@@ -499,6 +509,7 @@
+@@ -510,6 +520,7 @@
TRACE_SYSCALLS() \
MEM_DISCARD(init.rodata) \
CLK_OF_TABLES() \
CLKSRC_OF_TABLES() \
CPU_METHOD_OF_TABLES() \
KERNEL_DTB() \
-diff --git a/include/linux/of_reserved_mem.h b/include/linux/of_reserved_mem.h
-index 89226ed..9b1fbb7 100644
--- a/include/linux/of_reserved_mem.h
+++ b/include/linux/of_reserved_mem.h
@@ -1,21 +1,53 @@
#endif
#endif /* __OF_RESERVED_MEM_H */
---
-1.7.10.4
-
arch/arm/mm/init.c | 2 ++
2 files changed, 3 insertions(+)
-diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
-index d02ce70..4332e8d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -1922,6 +1922,7 @@ config USE_OF
+@@ -1923,6 +1923,7 @@ config USE_OF
select IRQ_DOMAIN
select OF
select OF_EARLY_FLATTREE
help
Include support for flattened device tree machine descriptions.
-diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c
-index 804d615..2a77ba8 100644
--- a/arch/arm/mm/init.c
+++ b/arch/arm/mm/init.c
-@@ -323,6 +323,8 @@ void __init arm_memblock_init(struct meminfo *mi,
+@@ -323,6 +323,8 @@ void __init arm_memblock_init(struct mem
if (mdesc->reserve)
mdesc->reserve();
/*
* reserve memory for DMA contigouos allocations,
* must come from DMA area inside low memory
---
-1.7.10.4
-
1 file changed, 133 insertions(+)
create mode 100644 Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
-diff --git a/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt b/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
-new file mode 100644
-index 0000000..3da0ebd
--- /dev/null
+++ b/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt
@@ -0,0 +1,133 @@
+ /* ... */
+ };
+};
---
-1.7.10.4
-
drivers/of/fdt.c | 3 +++
1 file changed, 3 insertions(+)
-diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
-index 510c0d8..501bc83 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
-@@ -557,6 +557,9 @@ static int __init __fdt_scan_reserved_mem(unsigned long node, const char *uname,
+@@ -557,6 +557,9 @@ static int __init __fdt_scan_reserved_me
*/
void __init early_init_fdt_scan_reserved_mem(void)
{
of_scan_flat_dt(__fdt_scan_reserved_mem, NULL);
fdt_init_reserved_mem();
}
---
-1.7.10.4
-
create mode 100644 include/dt-bindings/spmi/spmi.h
create mode 100644 include/linux/spmi.h
-diff --git a/drivers/Kconfig b/drivers/Kconfig
-index b3138fb..e0a4ae6 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -52,6 +52,8 @@ source "drivers/i2c/Kconfig"
source "drivers/hsi/Kconfig"
source "drivers/pps/Kconfig"
-diff --git a/drivers/Makefile b/drivers/Makefile
-index 8e3b8b0..3d6de8b 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -66,6 +66,7 @@ obj-$(CONFIG_ATA) += ata/
obj-y += hsi/
obj-y += net/
obj-$(CONFIG_ATM) += atm/
-diff --git a/drivers/spmi/Kconfig b/drivers/spmi/Kconfig
-new file mode 100644
-index 0000000..1dbfee0
--- /dev/null
+++ b/drivers/spmi/Kconfig
@@ -0,0 +1,9 @@
+ SPMI (System Power Management Interface) is a two-wire
+ serial interface between baseband and application processors
+ and Power Management Integrated Circuits (PMIC).
-diff --git a/drivers/spmi/Makefile b/drivers/spmi/Makefile
-new file mode 100644
-index 0000000..1de1acd
--- /dev/null
+++ b/drivers/spmi/Makefile
@@ -0,0 +1,4 @@
+# Makefile for kernel SPMI framework.
+#
+obj-$(CONFIG_SPMI) += spmi.o
-diff --git a/drivers/spmi/spmi.c b/drivers/spmi/spmi.c
-new file mode 100644
-index 0000000..6122c8f
--- /dev/null
+++ b/drivers/spmi/spmi.c
@@ -0,0 +1,609 @@
+MODULE_LICENSE("GPL v2");
+MODULE_DESCRIPTION("SPMI module");
+MODULE_ALIAS("platform:spmi");
-diff --git a/include/dt-bindings/spmi/spmi.h b/include/dt-bindings/spmi/spmi.h
-new file mode 100644
-index 0000000..d11e1e5
--- /dev/null
+++ b/include/dt-bindings/spmi/spmi.h
@@ -0,0 +1,18 @@
+#define SPMI_GSID 1
+
+#endif
-diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h
-index 45e9214..677e474 100644
--- a/include/linux/mod_devicetable.h
+++ b/include/linux/mod_devicetable.h
@@ -432,6 +432,14 @@ struct spi_device_id {
/* dmi */
enum dmi_field {
DMI_NONE,
-diff --git a/include/linux/spmi.h b/include/linux/spmi.h
-new file mode 100644
-index 0000000..91f5eab
--- /dev/null
+++ b/include/linux/spmi.h
@@ -0,0 +1,191 @@
+int spmi_command_shutdown(struct spmi_device *sdev);
+
+#endif
---
-1.7.10.4
-
3 files changed, 424 insertions(+)
create mode 100644 drivers/spmi/spmi-pmic-arb.c
-diff --git a/drivers/spmi/Kconfig b/drivers/spmi/Kconfig
-index 1dbfee0..80b7901 100644
--- a/drivers/spmi/Kconfig
+++ b/drivers/spmi/Kconfig
@@ -7,3 +7,20 @@ menuconfig SPMI
+ other devices that have the SPMI interface.
+
+endif
-diff --git a/drivers/spmi/Makefile b/drivers/spmi/Makefile
-index 1de1acd..fc75104 100644
--- a/drivers/spmi/Makefile
+++ b/drivers/spmi/Makefile
@@ -2,3 +2,5 @@
obj-$(CONFIG_SPMI) += spmi.o
+
+obj-$(CONFIG_SPMI_MSM_PMIC_ARB) += spmi-pmic-arb.o
-diff --git a/drivers/spmi/spmi-pmic-arb.c b/drivers/spmi/spmi-pmic-arb.c
-new file mode 100644
-index 0000000..2dd27e8
--- /dev/null
+++ b/drivers/spmi/spmi-pmic-arb.c
@@ -0,0 +1,405 @@
+
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:spmi_pmic_arb");
---
-1.7.10.4
-
drivers/spmi/spmi-pmic-arb.c | 377 +++++++++++++++++++++++++++++++++++++++++-
2 files changed, 376 insertions(+), 2 deletions(-)
-diff --git a/drivers/spmi/Kconfig b/drivers/spmi/Kconfig
-index 80b7901..075bd79 100644
--- a/drivers/spmi/Kconfig
+++ b/drivers/spmi/Kconfig
@@ -13,6 +13,7 @@ if SPMI
depends on ARCH_MSM || COMPILE_TEST
default ARCH_MSM
help
-diff --git a/drivers/spmi/spmi-pmic-arb.c b/drivers/spmi/spmi-pmic-arb.c
-index 2dd27e8..246e03a 100644
--- a/drivers/spmi/spmi-pmic-arb.c
+++ b/drivers/spmi/spmi-pmic-arb.c
@@ -13,6 +13,9 @@
};
static inline u32 pmic_arb_base_read(struct spmi_pmic_arb_dev *dev, u32 offset)
-@@ -306,12 +325,316 @@ static int pmic_arb_write_cmd(struct spmi_controller *ctrl, u8 opc, u8 sid,
+@@ -306,12 +325,316 @@ static int pmic_arb_write_cmd(struct spm
return rc;
}
int err, i;
ctrl = spmi_controller_alloc(&pdev->dev, sizeof(*pa));
-@@ -319,6 +642,7 @@ static int spmi_pmic_arb_probe(struct platform_device *pdev)
+@@ -319,6 +642,7 @@ static int spmi_pmic_arb_probe(struct pl
return -ENOMEM;
pa = spmi_controller_get_drvdata(ctrl);
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "core");
pa->base = devm_ioremap_resource(&ctrl->dev, res);
-@@ -341,6 +665,12 @@ static int spmi_pmic_arb_probe(struct platform_device *pdev)
+@@ -341,6 +665,12 @@ static int spmi_pmic_arb_probe(struct pl
goto err_put_ctrl;
}
err = of_property_read_u32(pdev->dev.of_node, "qcom,channel", &channel);
if (err) {
dev_err(&pdev->dev, "channel unspecified.\n");
-@@ -355,6 +685,29 @@ static int spmi_pmic_arb_probe(struct platform_device *pdev)
+@@ -355,6 +685,29 @@ static int spmi_pmic_arb_probe(struct pl
pa->channel = channel;
platform_set_drvdata(pdev, ctrl);
raw_spin_lock_init(&pa->lock);
-@@ -362,15 +715,31 @@ static int spmi_pmic_arb_probe(struct platform_device *pdev)
+@@ -362,15 +715,31 @@ static int spmi_pmic_arb_probe(struct pl
ctrl->read_cmd = pmic_arb_read_cmd;
ctrl->write_cmd = pmic_arb_write_cmd;
spmi_controller_put(ctrl);
return 0;
}
---
-1.7.10.4
-
drivers/spmi/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/spmi/Kconfig b/drivers/spmi/Kconfig
-index 075bd79..bf1295e 100644
--- a/drivers/spmi/Kconfig
+++ b/drivers/spmi/Kconfig
@@ -14,8 +14,8 @@ config SPMI_MSM_PMIC_ARB
help
If you say yes to this option, support will be included for the
built-in SPMI PMIC Arbiter interface on Qualcomm MSM family
---
-1.7.10.4
-
drivers/spmi/spmi.c | 35 -----------------------------------
1 file changed, 35 deletions(-)
-diff --git a/drivers/spmi/spmi.c b/drivers/spmi/spmi.c
-index 6122c8f..3b57807 100644
--- a/drivers/spmi/spmi.c
+++ b/drivers/spmi/spmi.c
-@@ -46,40 +46,6 @@ static const struct device_type spmi_ctrl_type = {
+@@ -46,40 +46,6 @@ static const struct device_type spmi_ctr
.release = spmi_ctrl_release,
};
static int spmi_device_match(struct device *dev, struct device_driver *drv)
{
if (of_driver_match_device(dev, drv))
-@@ -391,7 +357,6 @@ static int spmi_drv_remove(struct device *dev)
+@@ -391,7 +357,6 @@ static int spmi_drv_remove(struct device
static struct bus_type spmi_bus_type = {
.name = "spmi",
.match = spmi_device_match,
.probe = spmi_drv_probe,
.remove = spmi_drv_remove,
};
---
-1.7.10.4
-
3 files changed, 779 insertions(+)
create mode 100644 drivers/i2c/busses/i2c-qup.c
-diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig
-index de17c55..1886315 100644
--- a/drivers/i2c/busses/Kconfig
+++ b/drivers/i2c/busses/Kconfig
-@@ -648,6 +648,16 @@ config I2C_PXA_SLAVE
+@@ -649,6 +649,16 @@ config I2C_PXA_SLAVE
is necessary for systems where the PXA may be a target on the
I2C bus.
config I2C_RIIC
tristate "Renesas RIIC adapter"
depends on ARCH_SHMOBILE || COMPILE_TEST
-diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile
-index a08931f..bf2257b 100644
--- a/drivers/i2c/busses/Makefile
+++ b/drivers/i2c/busses/Makefile
@@ -63,6 +63,7 @@ obj-$(CONFIG_I2C_PNX) += i2c-pnx.o
obj-$(CONFIG_I2C_RIIC) += i2c-riic.o
obj-$(CONFIG_I2C_S3C2410) += i2c-s3c2410.o
obj-$(CONFIG_I2C_S6000) += i2c-s6000.o
-diff --git a/drivers/i2c/busses/i2c-qup.c b/drivers/i2c/busses/i2c-qup.c
-new file mode 100644
-index 0000000..c9d5f78
--- /dev/null
+++ b/drivers/i2c/busses/i2c-qup.c
@@ -0,0 +1,768 @@
+
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:i2c_qup");
---
-1.7.10.4
-
1 file changed, 40 insertions(+)
create mode 100644 Documentation/devicetree/bindings/i2c/qcom,i2c-qup.txt
-diff --git a/Documentation/devicetree/bindings/i2c/qcom,i2c-qup.txt b/Documentation/devicetree/bindings/i2c/qcom,i2c-qup.txt
-new file mode 100644
-index 0000000..dc71754
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/qcom,i2c-qup.txt
@@ -0,0 +1,40 @@
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
---
-1.7.10.4
-
drivers/i2c/busses/i2c-qup.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/i2c/busses/i2c-qup.c b/drivers/i2c/busses/i2c-qup.c
-index c9d5f78..ee40980 100644
--- a/drivers/i2c/busses/i2c-qup.c
+++ b/drivers/i2c/busses/i2c-qup.c
-@@ -633,12 +633,12 @@ static int qup_i2c_probe(struct platform_device *pdev)
+@@ -633,12 +633,12 @@ static int qup_i2c_probe(struct platform
* associated with each byte written/received
*/
size = QUP_OUTPUT_BLOCK_SIZE(io_mode);
return -EIO;
qup->in_blk_sz = blk_sizes[size] / 2;
---
-1.7.10.4
-
drivers/i2c/busses/i2c-qup.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/i2c/busses/i2c-qup.c b/drivers/i2c/busses/i2c-qup.c
-index ee40980..1b4cf14 100644
--- a/drivers/i2c/busses/i2c-qup.c
+++ b/drivers/i2c/busses/i2c-qup.c
-@@ -562,7 +562,7 @@ static int qup_i2c_probe(struct platform_device *pdev)
+@@ -562,7 +562,7 @@ static int qup_i2c_probe(struct platform
u32 io_mode, hw_ver, size;
int ret, fs_div, hs_div;
int src_clk_freq;
qup = devm_kzalloc(&pdev->dev, sizeof(*qup), GFP_KERNEL);
if (!qup)
---
-1.7.10.4
-
drivers/i2c/busses/i2c-qup.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/i2c/busses/i2c-qup.c b/drivers/i2c/busses/i2c-qup.c
-index 1b4cf14..2a5efb5 100644
--- a/drivers/i2c/busses/i2c-qup.c
+++ b/drivers/i2c/busses/i2c-qup.c
-@@ -479,7 +479,7 @@ static int qup_i2c_xfer(struct i2c_adapter *adap,
+@@ -479,7 +479,7 @@ static int qup_i2c_xfer(struct i2c_adapt
int ret, idx;
ret = pm_runtime_get_sync(qup->dev);
goto out;
writel(1, qup->base + QUP_SW_RESET);
---
-1.7.10.4
-
3 files changed, 851 insertions(+)
create mode 100644 drivers/spi/spi-qup.c
-diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
-index 581ee2a..9e9e3ed 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
-@@ -381,6 +381,19 @@ config SPI_RSPI
+@@ -390,6 +390,19 @@ config SPI_RSPI
help
SPI driver for Renesas RSPI and QSPI blocks.
config SPI_S3C24XX
tristate "Samsung S3C24XX series SPI"
depends on ARCH_S3C24XX
-diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile
-index 95af48d..e598147 100644
--- a/drivers/spi/Makefile
+++ b/drivers/spi/Makefile
-@@ -59,6 +59,7 @@ spi-pxa2xx-platform-$(CONFIG_SPI_PXA2XX_PXADMA) += spi-pxa2xx-pxadma.o
+@@ -60,6 +60,7 @@ spi-pxa2xx-platform-$(CONFIG_SPI_PXA2XX_
spi-pxa2xx-platform-$(CONFIG_SPI_PXA2XX_DMA) += spi-pxa2xx-dma.o
obj-$(CONFIG_SPI_PXA2XX) += spi-pxa2xx-platform.o
obj-$(CONFIG_SPI_PXA2XX_PCI) += spi-pxa2xx-pci.o
obj-$(CONFIG_SPI_RSPI) += spi-rspi.o
obj-$(CONFIG_SPI_S3C24XX) += spi-s3c24xx-hw.o
spi-s3c24xx-hw-y := spi-s3c24xx.o
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-new file mode 100644
-index 0000000..b0bcc09
--- /dev/null
+++ b/drivers/spi/spi-qup.c
@@ -0,0 +1,837 @@
+MODULE_LICENSE("GPL v2");
+MODULE_VERSION("0.4");
+MODULE_ALIAS("platform:spi_qup");
---
-1.7.10.4
-
1 file changed, 85 insertions(+)
create mode 100644 Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
-diff --git a/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt b/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
-new file mode 100644
-index 0000000..b82a268
--- /dev/null
+++ b/Documentation/devicetree/bindings/spi/qcom,spi-qup.txt
@@ -0,0 +1,85 @@
+ spi-cs-high;
+ };
+ };
---
-1.7.10.4
-
drivers/spi/spi-qup.c | 1 -
1 file changed, 1 deletion(-)
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-index b0bcc09..5edc56f 100644
--- a/drivers/spi/spi-qup.c
+++ b/drivers/spi/spi-qup.c
-@@ -802,7 +802,6 @@ static int spi_qup_remove(struct platform_device *pdev)
+@@ -802,7 +802,6 @@ static int spi_qup_remove(struct platfor
pm_runtime_put_noidle(&pdev->dev);
pm_runtime_disable(&pdev->dev);
return 0;
}
---
-1.7.10.4
-
drivers/spi/spi-qup.c | 15 +--------------
1 file changed, 1 insertion(+), 14 deletions(-)
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-index 5edc56f..dec339d 100644
--- a/drivers/spi/spi-qup.c
+++ b/drivers/spi/spi-qup.c
@@ -134,7 +134,6 @@ struct spi_qup {
spinlock_t lock;
int in_fifo_sz;
-@@ -517,18 +516,6 @@ static int spi_qup_setup(struct spi_device *spi)
+@@ -517,18 +516,6 @@ static int spi_qup_setup(struct spi_devi
struct spi_qup *controller = spi_master_get_devdata(spi->master);
struct spi_qup_device *chip = spi_get_ctldata(spi);
if (!chip) {
/* First setup */
chip = kzalloc(sizeof(*chip), GFP_KERNEL);
-@@ -629,6 +616,7 @@ static int spi_qup_probe(struct platform_device *pdev)
+@@ -629,6 +616,7 @@ static int spi_qup_probe(struct platform
master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH | SPI_LOOP;
master->num_chipselect = SPI_NUM_CHIPSELECTS;
master->bits_per_word_mask = SPI_BPW_RANGE_MASK(4, 32);
master->setup = spi_qup_setup;
master->cleanup = spi_qup_cleanup;
master->set_cs = spi_qup_set_cs;
-@@ -645,7 +633,6 @@ static int spi_qup_probe(struct platform_device *pdev)
+@@ -645,7 +633,6 @@ static int spi_qup_probe(struct platform
controller->iclk = iclk;
controller->cclk = cclk;
controller->irq = irq;
spin_lock_init(&controller->lock);
init_completion(&controller->done);
---
-1.7.10.4
-
drivers/spi/spi-qup.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-index dec339d..886edb4 100644
--- a/drivers/spi/spi-qup.c
+++ b/drivers/spi/spi-qup.c
-@@ -709,7 +709,7 @@ static int spi_qup_pm_suspend_runtime(struct device *device)
+@@ -709,7 +709,7 @@ static int spi_qup_pm_suspend_runtime(st
/* Enable clocks auto gaiting */
config = readl(controller->base + QUP_CONFIG);
writel_relaxed(config, controller->base + QUP_CONFIG);
return 0;
}
-@@ -722,7 +722,7 @@ static int spi_qup_pm_resume_runtime(struct device *device)
+@@ -722,7 +722,7 @@ static int spi_qup_pm_resume_runtime(str
/* Disable clocks auto gaiting */
config = readl_relaxed(controller->base + QUP_CONFIG);
writel_relaxed(config, controller->base + QUP_CONFIG);
return 0;
}
---
-1.7.10.4
-
drivers/spi/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
-index 9e9e3ed..e6a04f8 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
-@@ -383,7 +383,7 @@ config SPI_RSPI
+@@ -392,7 +392,7 @@ config SPI_RSPI
config SPI_QUP
tristate "Qualcomm SPI controller with QUP interface"
help
Qualcomm Universal Peripheral (QUP) core is an AHB slave that
provides a common data path (an output FIFO and an input FIFO)
---
-1.7.10.4
-
drivers/spi/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
-index e6a04f8..2d9111c 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
-@@ -383,7 +383,7 @@ config SPI_RSPI
+@@ -392,7 +392,7 @@ config SPI_RSPI
config SPI_QUP
tristate "Qualcomm SPI controller with QUP interface"
help
Qualcomm Universal Peripheral (QUP) core is an AHB slave that
provides a common data path (an output FIFO and an input FIFO)
---
-1.7.10.4
-
drivers/spi/spi-qup.c | 1 -
1 file changed, 1 deletion(-)
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-index 886edb4..203f0d4 100644
--- a/drivers/spi/spi-qup.c
+++ b/drivers/spi/spi-qup.c
-@@ -819,5 +819,4 @@ static struct platform_driver spi_qup_driver = {
+@@ -819,5 +819,4 @@ static struct platform_driver spi_qup_dr
module_platform_driver(spi_qup_driver);
MODULE_LICENSE("GPL v2");
-MODULE_VERSION("0.4");
MODULE_ALIAS("platform:spi_qup");
---
-1.7.10.4
-
drivers/spi/spi-qup.c | 61 ++++++++-----------------------------------------
1 file changed, 9 insertions(+), 52 deletions(-)
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-index 203f0d4..b032e88 100644
--- a/drivers/spi/spi-qup.c
+++ b/drivers/spi/spi-qup.c
@@ -123,11 +123,6 @@
struct spi_qup {
void __iomem *base;
struct device *dev;
-@@ -338,14 +333,13 @@ static irqreturn_t spi_qup_qup_irq(int irq, void *dev_id)
+@@ -338,14 +333,13 @@ static irqreturn_t spi_qup_qup_irq(int i
/* set clock freq ... bits per word */
dev_err(controller->dev, "too big size for loopback %d > %d\n",
xfer->len, controller->in_fifo_sz);
return -EIO;
-@@ -399,12 +393,12 @@ static int spi_qup_io_config(struct spi_qup *controller,
+@@ -399,12 +393,12 @@ static int spi_qup_io_config(struct spi_
config = readl_relaxed(controller->base + SPI_CONFIG);
config &= ~SPI_CONFIG_INPUT_FIRST;
else
config |= SPI_CONFIG_INPUT_FIRST;
-@@ -413,7 +407,7 @@ static int spi_qup_io_config(struct spi_qup *controller,
+@@ -413,7 +407,7 @@ static int spi_qup_io_config(struct spi_
* HS_MODE improves signal stability for spi-clk high rates,
* but is invalid in loop back mode.
*/
config |= SPI_CONFIG_HS_MODE;
else
config &= ~SPI_CONFIG_HS_MODE;
-@@ -433,7 +427,6 @@ static int spi_qup_io_config(struct spi_qup *controller,
+@@ -433,7 +427,6 @@ static int spi_qup_io_config(struct spi_
static void spi_qup_set_cs(struct spi_device *spi, bool enable)
{
struct spi_qup *controller = spi_master_get_devdata(spi->master);
u32 iocontol, mask;
-@@ -444,9 +437,9 @@ static void spi_qup_set_cs(struct spi_device *spi, bool enable)
+@@ -444,9 +437,9 @@ static void spi_qup_set_cs(struct spi_de
iocontol |= SPI_IO_C_FORCE_CS;
iocontol &= ~SPI_IO_C_CS_SELECT_MASK;
if (enable)
iocontol |= mask;
-@@ -461,11 +454,10 @@ static int spi_qup_transfer_one(struct spi_master *master,
+@@ -461,11 +454,10 @@ static int spi_qup_transfer_one(struct s
struct spi_transfer *xfer)
{
struct spi_qup *controller = spi_master_get_devdata(master);
static int spi_qup_probe(struct platform_device *pdev)
{
struct spi_master *master;
-@@ -561,7 +521,6 @@ static int spi_qup_probe(struct platform_device *pdev)
+@@ -561,7 +521,6 @@ static int spi_qup_probe(struct platform
return PTR_ERR(base);
irq = platform_get_irq(pdev, 0);
if (irq < 0)
return irq;
-@@ -617,8 +576,6 @@ static int spi_qup_probe(struct platform_device *pdev)
+@@ -617,8 +576,6 @@ static int spi_qup_probe(struct platform
master->num_chipselect = SPI_NUM_CHIPSELECTS;
master->bits_per_word_mask = SPI_BPW_RANGE_MASK(4, 32);
master->max_speed_hz = max_freq;
master->set_cs = spi_qup_set_cs;
master->transfer_one = spi_qup_transfer_one;
master->dev.of_node = pdev->dev.of_node;
---
-1.7.10.4
-
drivers/spi/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig
-index 2d9111c..a2d3570 100644
--- a/drivers/spi/Kconfig
+++ b/drivers/spi/Kconfig
-@@ -383,7 +383,7 @@ config SPI_RSPI
+@@ -392,7 +392,7 @@ config SPI_RSPI
config SPI_QUP
tristate "Qualcomm SPI controller with QUP interface"
help
Qualcomm Universal Peripheral (QUP) core is an AHB slave that
provides a common data path (an output FIFO and an input FIFO)
---
-1.7.10.4
-
drivers/spi/spi-qup.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
-diff --git a/drivers/spi/spi-qup.c b/drivers/spi/spi-qup.c
-index b032e88..65bf18e 100644
--- a/drivers/spi/spi-qup.c
+++ b/drivers/spi/spi-qup.c
-@@ -287,7 +287,7 @@ static irqreturn_t spi_qup_qup_irq(int irq, void *dev_id)
+@@ -287,7 +287,7 @@ static irqreturn_t spi_qup_qup_irq(int i
writel_relaxed(opflags, controller->base + QUP_OPERATIONAL);
if (!xfer) {
qup_err, spi_err, opflags);
return IRQ_HANDLED;
}
-@@ -366,7 +366,7 @@ static int spi_qup_io_config(struct spi_device *spi, struct spi_transfer *xfer)
+@@ -366,7 +366,7 @@ static int spi_qup_io_config(struct spi_
n_words = xfer->len / w_size;
controller->w_size = w_size;
mode = QUP_IO_M_MODE_FIFO;
writel_relaxed(n_words, controller->base + QUP_MX_READ_CNT);
writel_relaxed(n_words, controller->base + QUP_MX_WRITE_CNT);
---
-1.7.10.4
-
create mode 100644 drivers/clk/qcom/common.c
create mode 100644 drivers/clk/qcom/common.h
-diff --git a/drivers/clk/qcom/Makefile b/drivers/clk/qcom/Makefile
-index f60db2e..689e05b 100644
--- a/drivers/clk/qcom/Makefile
+++ b/drivers/clk/qcom/Makefile
@@ -1,5 +1,6 @@
clk-qcom-y += clk-regmap.o
clk-qcom-y += clk-pll.o
clk-qcom-y += clk-rcg.o
-diff --git a/drivers/clk/qcom/common.c b/drivers/clk/qcom/common.c
-new file mode 100644
-index 0000000..86b45fb
--- /dev/null
+++ b/drivers/clk/qcom/common.c
@@ -0,0 +1,99 @@
+ reset_controller_unregister(platform_get_drvdata(pdev));
+}
+EXPORT_SYMBOL_GPL(qcom_cc_remove);
-diff --git a/drivers/clk/qcom/common.h b/drivers/clk/qcom/common.h
-new file mode 100644
-index 0000000..2c3cfc8
--- /dev/null
+++ b/drivers/clk/qcom/common.h
@@ -0,0 +1,34 @@
+extern void qcom_cc_remove(struct platform_device *pdev);
+
+#endif
-diff --git a/drivers/clk/qcom/gcc-msm8660.c b/drivers/clk/qcom/gcc-msm8660.c
-index bc0b7f1..44bc6fa 100644
--- a/drivers/clk/qcom/gcc-msm8660.c
+++ b/drivers/clk/qcom/gcc-msm8660.c
@@ -25,6 +25,7 @@
#include "clk-regmap.h"
#include "clk-pll.h"
#include "clk-rcg.h"
-@@ -2701,94 +2702,28 @@ static const struct regmap_config gcc_msm8660_regmap_config = {
+@@ -2701,94 +2702,28 @@ static const struct regmap_config gcc_ms
.fast_io = true,
};
return 0;
}
-diff --git a/drivers/clk/qcom/gcc-msm8960.c b/drivers/clk/qcom/gcc-msm8960.c
-index fd446ab..633b019 100644
--- a/drivers/clk/qcom/gcc-msm8960.c
+++ b/drivers/clk/qcom/gcc-msm8960.c
@@ -25,6 +25,7 @@
#include "clk-regmap.h"
#include "clk-pll.h"
#include "clk-rcg.h"
-@@ -2875,51 +2876,24 @@ static const struct regmap_config gcc_msm8960_regmap_config = {
+@@ -2875,51 +2876,24 @@ static const struct regmap_config gcc_ms
.fast_io = true,
};
/* Temporary until RPM clocks supported */
clk = clk_register_fixed_rate(dev, "cxo", NULL, CLK_IS_ROOT, 19200000);
-@@ -2930,39 +2904,12 @@ static int gcc_msm8960_probe(struct platform_device *pdev)
+@@ -2930,39 +2904,12 @@ static int gcc_msm8960_probe(struct plat
if (IS_ERR(clk))
return PTR_ERR(clk);
return 0;
}
-diff --git a/drivers/clk/qcom/gcc-msm8974.c b/drivers/clk/qcom/gcc-msm8974.c
-index 51d457e..0d1edc1 100644
--- a/drivers/clk/qcom/gcc-msm8974.c
+++ b/drivers/clk/qcom/gcc-msm8974.c
@@ -25,6 +25,7 @@
#include "clk-regmap.h"
#include "clk-pll.h"
#include "clk-rcg.h"
-@@ -2574,51 +2575,24 @@ static const struct regmap_config gcc_msm8974_regmap_config = {
+@@ -2574,51 +2575,24 @@ static const struct regmap_config gcc_ms
.fast_io = true,
};
/* Temporary until RPM clocks supported */
clk = clk_register_fixed_rate(dev, "xo", NULL, CLK_IS_ROOT, 19200000);
-@@ -2631,39 +2605,12 @@ static int gcc_msm8974_probe(struct platform_device *pdev)
+@@ -2631,39 +2605,12 @@ static int gcc_msm8974_probe(struct plat
if (IS_ERR(clk))
return PTR_ERR(clk);
return 0;
}
-diff --git a/drivers/clk/qcom/mmcc-msm8960.c b/drivers/clk/qcom/mmcc-msm8960.c
-index f9b59c7..12f3c0b 100644
--- a/drivers/clk/qcom/mmcc-msm8960.c
+++ b/drivers/clk/qcom/mmcc-msm8960.c
@@ -26,6 +26,7 @@
#include "clk-regmap.h"
#include "clk-pll.h"
#include "clk-rcg.h"
-@@ -2222,85 +2223,28 @@ static const struct regmap_config mmcc_msm8960_regmap_config = {
+@@ -2222,85 +2223,28 @@ static const struct regmap_config mmcc_m
.fast_io = true,
};
return 0;
}
-diff --git a/drivers/clk/qcom/mmcc-msm8974.c b/drivers/clk/qcom/mmcc-msm8974.c
-index c957745..60b7c24 100644
--- a/drivers/clk/qcom/mmcc-msm8974.c
+++ b/drivers/clk/qcom/mmcc-msm8974.c
@@ -25,6 +25,7 @@
#include "clk-regmap.h"
#include "clk-pll.h"
#include "clk-rcg.h"
-@@ -2524,88 +2525,39 @@ static const struct regmap_config mmcc_msm8974_regmap_config = {
+@@ -2527,88 +2528,39 @@ static const struct regmap_config mmcc_m
.fast_io = true,
};
return 0;
}
---
-1.7.10.4
-
drivers/clk/qcom/gcc-msm8960.c | 30 ++++++++++++++++++--
3 files changed, 30 insertions(+), 5 deletions(-)
-diff --git a/Documentation/devicetree/bindings/clock/qcom,gcc.txt b/Documentation/devicetree/bindings/clock/qcom,gcc.txt
-index 767401f..7b7104e 100644
--- a/Documentation/devicetree/bindings/clock/qcom,gcc.txt
+++ b/Documentation/devicetree/bindings/clock/qcom,gcc.txt
-@@ -4,6 +4,7 @@ Qualcomm Global Clock & Reset Controller Binding
+@@ -4,6 +4,7 @@ Qualcomm Global Clock & Reset Controller
Required properties :
- compatible : shall contain only one of the following:
"qcom,gcc-msm8660"
"qcom,gcc-msm8960"
"qcom,gcc-msm8974"
-diff --git a/drivers/clk/qcom/Kconfig b/drivers/clk/qcom/Kconfig
-index 995bcfa..7f696b7 100644
--- a/drivers/clk/qcom/Kconfig
+++ b/drivers/clk/qcom/Kconfig
@@ -13,10 +13,10 @@ config MSM_GCC_8660
Say Y if you want to use peripheral devices such as UART, SPI,
i2c, USB, SD/eMMC, SATA, PCIe, etc.
-diff --git a/drivers/clk/qcom/gcc-msm8960.c b/drivers/clk/qcom/gcc-msm8960.c
-index 633b019..8e2b6dd 100644
--- a/drivers/clk/qcom/gcc-msm8960.c
+++ b/drivers/clk/qcom/gcc-msm8960.c
@@ -1,5 +1,5 @@
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
-@@ -2868,6 +2868,16 @@ static const struct qcom_reset_map gcc_msm8960_resets[] = {
+@@ -2868,6 +2868,16 @@ static const struct qcom_reset_map gcc_m
[RIVA_RESET] = { 0x35e0 },
};
static const struct regmap_config gcc_msm8960_regmap_config = {
.reg_bits = 32,
.reg_stride = 4,
-@@ -2884,8 +2894,17 @@ static const struct qcom_cc_desc gcc_msm8960_desc = {
+@@ -2884,8 +2894,17 @@ static const struct qcom_cc_desc gcc_msm
.num_resets = ARRAY_SIZE(gcc_msm8960_resets),
};
{ }
};
MODULE_DEVICE_TABLE(of, gcc_msm8960_match_table);
-@@ -2894,6 +2913,11 @@ static int gcc_msm8960_probe(struct platform_device *pdev)
+@@ -2894,6 +2913,11 @@ static int gcc_msm8960_probe(struct plat
{
struct clk *clk;
struct device *dev = &pdev->dev;
/* Temporary until RPM clocks supported */
clk = clk_register_fixed_rate(dev, "cxo", NULL, CLK_IS_ROOT, 19200000);
-@@ -2904,7 +2928,7 @@ static int gcc_msm8960_probe(struct platform_device *pdev)
+@@ -2904,7 +2928,7 @@ static int gcc_msm8960_probe(struct plat
if (IS_ERR(clk))
return PTR_ERR(clk);
}
static int gcc_msm8960_remove(struct platform_device *pdev)
---
-1.7.10.4
-
include/dt-bindings/reset/qcom,gcc-msm8960.h | 2 +-
3 files changed, 6 insertions(+), 7 deletions(-)
-diff --git a/drivers/clk/qcom/gcc-msm8960.c b/drivers/clk/qcom/gcc-msm8960.c
-index 8e2b6dd..f4ffd91 100644
--- a/drivers/clk/qcom/gcc-msm8960.c
+++ b/drivers/clk/qcom/gcc-msm8960.c
-@@ -2810,7 +2810,7 @@ static const struct qcom_reset_map gcc_msm8960_resets[] = {
+@@ -2810,7 +2810,7 @@ static const struct qcom_reset_map gcc_m
[PPSS_PROC_RESET] = { 0x2594, 1 },
[PPSS_RESET] = { 0x2594},
[DMA_BAM_RESET] = { 0x25c0, 7 },
[SLIMBUS_H_RESET] = { 0x2620, 7 },
[SFAB_CFPB_M_RESET] = { 0x2680, 7 },
[SFAB_CFPB_S_RESET] = { 0x26c0, 7 },
-@@ -2823,7 +2823,7 @@ static const struct qcom_reset_map gcc_msm8960_resets[] = {
+@@ -2823,7 +2823,7 @@ static const struct qcom_reset_map gcc_m
[SFAB_SFPB_M_RESET] = { 0x2780, 7 },
[SFAB_SFPB_S_RESET] = { 0x27a0, 7 },
[RPM_PROC_RESET] = { 0x27c0, 7 },
[SDC1_RESET] = { 0x2830 },
[SDC2_RESET] = { 0x2850 },
[SDC3_RESET] = { 0x2870 },
-diff --git a/include/dt-bindings/clock/qcom,gcc-msm8960.h b/include/dt-bindings/clock/qcom,gcc-msm8960.h
-index 03bbf49..f9f5471 100644
--- a/include/dt-bindings/clock/qcom,gcc-msm8960.h
+++ b/include/dt-bindings/clock/qcom,gcc-msm8960.h
@@ -51,7 +51,7 @@
#define SATA_RXOOB_CLK 239
#define SATA_PMALIVE_CLK 240
#define SATA_PHY_REF_CLK 241
-diff --git a/include/dt-bindings/reset/qcom,gcc-msm8960.h b/include/dt-bindings/reset/qcom,gcc-msm8960.h
-index a840e68..07edd0e 100644
--- a/include/dt-bindings/reset/qcom,gcc-msm8960.h
+++ b/include/dt-bindings/reset/qcom,gcc-msm8960.h
@@ -58,7 +58,7 @@
#define SLIMBUS_H_RESET 45
#define SFAB_CFPB_M_RESET 46
#define SFAB_CFPB_S_RESET 47
---
-1.7.10.4
-
1 file changed, 164 insertions(+)
create mode 100644 arch/arm/configs/qcom_defconfig
-diff --git a/arch/arm/configs/qcom_defconfig b/arch/arm/configs/qcom_defconfig
-new file mode 100644
-index 0000000..bfed753
--- /dev/null
+++ b/arch/arm/configs/qcom_defconfig
@@ -0,0 +1,164 @@
+# CONFIG_DETECT_HUNG_TASK is not set
+# CONFIG_SCHED_DEBUG is not set
+CONFIG_TIMER_STATS=y
---
-1.7.10.4
-
arch/arm/configs/qcom_defconfig | 1 +
1 file changed, 1 insertion(+)
-diff --git a/arch/arm/configs/qcom_defconfig b/arch/arm/configs/qcom_defconfig
-index bfed753..42ebd72 100644
--- a/arch/arm/configs/qcom_defconfig
+++ b/arch/arm/configs/qcom_defconfig
@@ -131,6 +131,7 @@ CONFIG_RTC_CLASS=y
CONFIG_COMMON_CLK_QCOM=y
CONFIG_MSM_GCC_8660=y
CONFIG_MSM_MMCC_8960=y
---
-1.7.10.4
-
3 files changed, 8 insertions(+)
create mode 100644 drivers/soc/Kconfig
-diff --git a/drivers/Kconfig b/drivers/Kconfig
-index e0a4ae6..a299cbd 100644
--- a/drivers/Kconfig
+++ b/drivers/Kconfig
@@ -132,6 +132,8 @@ source "drivers/staging/Kconfig"
source "drivers/clk/Kconfig"
source "drivers/hwspinlock/Kconfig"
-diff --git a/drivers/Makefile b/drivers/Makefile
-index 3d6de8b..4c2bdc1 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -33,6 +33,9 @@ obj-y += amba/
obj-$(CONFIG_VIRTIO) += virtio/
obj-$(CONFIG_XEN) += xen/
-diff --git a/drivers/soc/Kconfig b/drivers/soc/Kconfig
-new file mode 100644
-index 0000000..339baa8
--- /dev/null
+++ b/drivers/soc/Kconfig
@@ -0,0 +1,3 @@
+menu "SOC (System On Chip) specific Drivers"
+
+endmenu
---
-1.7.10.4
-
create mode 100644 drivers/soc/qcom/Makefile
create mode 100644 drivers/soc/qcom/qcom_gsbi.c
-diff --git a/drivers/soc/Kconfig b/drivers/soc/Kconfig
-index 339baa8..c854385 100644
--- a/drivers/soc/Kconfig
+++ b/drivers/soc/Kconfig
@@ -1,3 +1,5 @@
+source "drivers/soc/qcom/Kconfig"
+
endmenu
-diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
-new file mode 100644
-index 0000000..0f7c447
--- /dev/null
+++ b/drivers/soc/Makefile
@@ -0,0 +1,5 @@
+#
+
+obj-$(CONFIG_ARCH_QCOM) += qcom/
-diff --git a/drivers/soc/qcom/Kconfig b/drivers/soc/qcom/Kconfig
-new file mode 100644
-index 0000000..7bd2c94
--- /dev/null
+++ b/drivers/soc/qcom/Kconfig
@@ -0,0 +1,11 @@
+ functions for connecting the underlying serial UART, SPI, and I2C
+ devices to the output pins.
+
-diff --git a/drivers/soc/qcom/Makefile b/drivers/soc/qcom/Makefile
-new file mode 100644
-index 0000000..4389012
--- /dev/null
+++ b/drivers/soc/qcom/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_QCOM_GSBI) += qcom_gsbi.o
-diff --git a/drivers/soc/qcom/qcom_gsbi.c b/drivers/soc/qcom/qcom_gsbi.c
-new file mode 100644
-index 0000000..061dd06
--- /dev/null
+++ b/drivers/soc/qcom/qcom_gsbi.c
@@ -0,0 +1,84 @@
+MODULE_AUTHOR("Andy Gross <agross@codeaurora.org>");
+MODULE_DESCRIPTION("QCOM GSBI driver");
+MODULE_LICENSE("GPL v2");
---
-1.7.10.4
-
drivers/soc/qcom/qcom_gsbi.c | 1 +
1 file changed, 1 insertion(+)
-diff --git a/drivers/soc/qcom/qcom_gsbi.c b/drivers/soc/qcom/qcom_gsbi.c
-index 061dd06..447458e 100644
--- a/drivers/soc/qcom/qcom_gsbi.c
+++ b/drivers/soc/qcom/qcom_gsbi.c
-@@ -64,6 +64,7 @@ static int gsbi_probe(struct platform_device *pdev)
+@@ -64,6 +64,7 @@ static int gsbi_probe(struct platform_de
static const struct of_device_id gsbi_dt_match[] = {
{ .compatible = "qcom,gsbi-v1.0.0", },
};
MODULE_DEVICE_TABLE(of, gsbi_dt_match);
---
-1.7.10.4
-
drivers/tty/serial/msm_serial.h | 9 +++
2 files changed, 146 insertions(+), 3 deletions(-)
-diff --git a/drivers/tty/serial/msm_serial.c b/drivers/tty/serial/msm_serial.c
-index b5d779c..053b98e 100644
--- a/drivers/tty/serial/msm_serial.c
+++ b/drivers/tty/serial/msm_serial.c
@@ -39,6 +39,13 @@
struct msm_port {
struct uart_port uart;
char name[16];
-@@ -309,6 +316,8 @@ static unsigned int msm_get_mctrl(struct uart_port *port)
+@@ -309,6 +316,8 @@ static unsigned int msm_get_mctrl(struct
static void msm_reset(struct uart_port *port)
{
/* reset everything */
msm_write(port, UART_CR_CMD_RESET_RX, UART_CR);
msm_write(port, UART_CR_CMD_RESET_TX, UART_CR);
-@@ -316,6 +325,10 @@ static void msm_reset(struct uart_port *port)
+@@ -316,6 +325,10 @@ static void msm_reset(struct uart_port *
msm_write(port, UART_CR_CMD_RESET_BREAK_INT, UART_CR);
msm_write(port, UART_CR_CMD_RESET_CTS, UART_CR);
msm_write(port, UART_CR_CMD_SET_RFR, UART_CR);
}
static void msm_set_mctrl(struct uart_port *port, unsigned int mctrl)
-@@ -711,6 +724,117 @@ static void msm_power(struct uart_port *port, unsigned int state,
+@@ -711,6 +724,117 @@ static void msm_power(struct uart_port *
}
}
};
static struct msm_port msm_uart_ports[] = {
-@@ -900,7 +1029,10 @@ static struct uart_driver msm_uart_driver = {
+@@ -900,7 +1029,10 @@ static struct uart_driver msm_uart_drive
static atomic_t msm_uart_next_id = ATOMIC_INIT(0);
static const struct of_device_id msm_uartdm_table[] = {
{ }
};
-@@ -909,6 +1041,7 @@ static int __init msm_serial_probe(struct platform_device *pdev)
+@@ -909,6 +1041,7 @@ static int __init msm_serial_probe(struc
struct msm_port *msm_port;
struct resource *resource;
struct uart_port *port;
int irq;
if (pdev->id == -1)
-@@ -923,8 +1056,9 @@ static int __init msm_serial_probe(struct platform_device *pdev)
+@@ -923,8 +1056,9 @@ static int __init msm_serial_probe(struc
port->dev = &pdev->dev;
msm_port = UART_TO_MSM(port);
else
msm_port->is_uartdm = 0;
-diff --git a/drivers/tty/serial/msm_serial.h b/drivers/tty/serial/msm_serial.h
-index 469fda5..1e9b68b 100644
--- a/drivers/tty/serial/msm_serial.h
+++ b/drivers/tty/serial/msm_serial.h
@@ -59,6 +59,7 @@
#define UARTDM_DMRX 0x34
#define UARTDM_NCF_TX 0x40
#define UARTDM_RX_TOTAL_SNAP 0x38
---
-1.7.10.4
-
drivers/tty/serial/msm_serial.h | 5 ----
2 files changed, 2 insertions(+), 51 deletions(-)
-diff --git a/drivers/tty/serial/msm_serial.c b/drivers/tty/serial/msm_serial.c
-index 053b98e..778e376 100644
--- a/drivers/tty/serial/msm_serial.c
+++ b/drivers/tty/serial/msm_serial.c
@@ -52,7 +52,6 @@ struct msm_port {
int is_uartdm;
unsigned int old_snap_state;
};
-@@ -599,9 +598,7 @@ static const char *msm_type(struct uart_port *port)
+@@ -599,9 +598,7 @@ static const char *msm_type(struct uart_
static void msm_release_port(struct uart_port *port)
{
struct platform_device *pdev = to_platform_device(port->dev);
resource_size_t size;
uart_resource = platform_get_resource(pdev, IORESOURCE_MEM, 0);
-@@ -612,28 +609,12 @@ static void msm_release_port(struct uart_port *port)
+@@ -612,28 +609,12 @@ static void msm_release_port(struct uart
release_mem_region(port->mapbase, size);
iounmap(port->membase);
port->membase = NULL;
resource_size_t size;
int ret;
-@@ -652,30 +633,8 @@ static int msm_request_port(struct uart_port *port)
+@@ -652,30 +633,8 @@ static int msm_request_port(struct uart_
goto fail_release_port;
}
int ret;
if (flags & UART_CONFIG_TYPE) {
port->type = PORT_MSM;
-@@ -691,9 +649,6 @@ static void msm_config_port(struct uart_port *port, int flags)
+@@ -691,9 +649,6 @@ static void msm_config_port(struct uart_
if (ret)
return;
}
}
static int msm_verify_port(struct uart_port *port, struct serial_struct *ser)
-@@ -1110,6 +1065,7 @@ static struct of_device_id msm_match_table[] = {
+@@ -1110,6 +1065,7 @@ static struct of_device_id msm_match_tab
static struct platform_driver msm_platform_driver = {
.remove = msm_serial_remove,
if (unlikely(ret))
uart_unregister_driver(&msm_uart_driver);
-diff --git a/drivers/tty/serial/msm_serial.h b/drivers/tty/serial/msm_serial.h
-index 1e9b68b..d98d45e 100644
--- a/drivers/tty/serial/msm_serial.h
+++ b/drivers/tty/serial/msm_serial.h
@@ -109,11 +109,6 @@
#define UARTDM_RXFS 0x50
#define UARTDM_RXFS_BUF_SHIFT 0x7
#define UARTDM_RXFS_BUF_MASK 0x7
---
-1.7.10.4
-
create mode 100644 Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.txt
create mode 100644 include/dt-bindings/soc/qcom,gsbi.h
-diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.txt b/Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.txt
-new file mode 100644
-index 0000000..4ce24d4
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,gsbi.txt
@@ -0,0 +1,78 @@
+ };
+ };
+
-diff --git a/include/dt-bindings/soc/qcom,gsbi.h b/include/dt-bindings/soc/qcom,gsbi.h
-new file mode 100644
-index 0000000..7ac4292
--- /dev/null
+++ b/include/dt-bindings/soc/qcom,gsbi.h
@@ -0,0 +1,26 @@
+#define GSBI_CRCI_UART 1
+
+#endif
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8974.dtsi | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
-diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
-index f687239..23aa387 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -198,5 +198,34 @@
+ };
};
};
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8974.dtsi | 22 ++++++++++++++++++++++
2 files changed, 35 insertions(+)
-diff --git a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
-index 13ac3e2..92320c4 100644
--- a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
+++ b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
@@ -3,4 +3,17 @@
+ };
+ };
};
-diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
-index 23aa387..c530a33 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -192,6 +192,28 @@
rng@f9bff000 {
compatible = "qcom,prng";
reg = <0xf9bff000 0x200>;
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8974.dtsi | 49 +++++++++---------------
2 files changed, 45 insertions(+), 32 deletions(-)
-diff --git a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
-index 92320c4..b4dfb01 100644
--- a/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
+++ b/arch/arm/boot/dts/qcom-apq8074-dragonboard.dts
@@ -4,7 +4,11 @@
+ };
};
};
-diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi
-index c530a33..69dca2a 100644
--- a/arch/arm/boot/dts/qcom-msm8974.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8974.dtsi
@@ -13,10 +13,10 @@
};
};
};
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8960.dtsi | 176 ++++++++++++++++++--------------
2 files changed, 108 insertions(+), 78 deletions(-)
-diff --git a/arch/arm/boot/dts/qcom-msm8960-cdp.dts b/arch/arm/boot/dts/qcom-msm8960-cdp.dts
-index a58fb88..8f75cc4 100644
--- a/arch/arm/boot/dts/qcom-msm8960-cdp.dts
+++ b/arch/arm/boot/dts/qcom-msm8960-cdp.dts
@@ -3,4 +3,14 @@
+ };
+ };
};
-diff --git a/arch/arm/boot/dts/qcom-msm8960.dtsi b/arch/arm/boot/dts/qcom-msm8960.dtsi
-index 997b7b9..5303e53 100644
--- a/arch/arm/boot/dts/qcom-msm8960.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8960.dtsi
@@ -3,6 +3,7 @@
+ };
};
};
---
-1.7.10.4
-
arch/arm/boot/dts/qcom-msm8660.dtsi | 115 ++++++++++++++++++-------------
2 files changed, 78 insertions(+), 47 deletions(-)
-diff --git a/arch/arm/boot/dts/qcom-msm8660-surf.dts b/arch/arm/boot/dts/qcom-msm8660-surf.dts
-index 169bad9..45180ad 100644
--- a/arch/arm/boot/dts/qcom-msm8660-surf.dts
+++ b/arch/arm/boot/dts/qcom-msm8660-surf.dts
@@ -3,4 +3,14 @@
+ };
+ };
};
-diff --git a/arch/arm/boot/dts/qcom-msm8660.dtsi b/arch/arm/boot/dts/qcom-msm8660.dtsi
-index c52a9e9..53837aaa2f 100644
--- a/arch/arm/boot/dts/qcom-msm8660.dtsi
+++ b/arch/arm/boot/dts/qcom-msm8660.dtsi
@@ -3,6 +3,7 @@
+ #size-cells = <1>;
+ ranges;
+ compatible = "simple-bus";
++
++ intc: interrupt-controller@2080000 {
++ compatible = "qcom,msm-8660-qgic";
++ interrupt-controller;
++ #interrupt-cells = <3>;
++ reg = < 0x02080000 0x1000 >,
++ < 0x02081000 0x1000 >;
++ };
- timer@2000000 {
- compatible = "qcom,scss-timer", "qcom,msm-timer";
- <32768>;
- cpu-offset = <0x40000>;
- };
-+ intc: interrupt-controller@2080000 {
-+ compatible = "qcom,msm-8660-qgic";
-+ interrupt-controller;
-+ #interrupt-cells = <3>;
-+ reg = < 0x02080000 0x1000 >,
-+ < 0x02081000 0x1000 >;
-+ };
-
-- msmgpio: gpio@800000 {
-- compatible = "qcom,msm-gpio";
-- reg = <0x00800000 0x4000>;
-- gpio-controller;
-- #gpio-cells = <2>;
-- ngpio = <173>;
-- interrupts = <0 16 0x4>;
-- interrupt-controller;
-- #interrupt-cells = <2>;
-- };
+ timer@2000000 {
+ compatible = "qcom,scss-timer", "qcom,msm-timer";
+ interrupts = <1 0 0x301>,
+ cpu-offset = <0x40000>;
+ };
-- gcc: clock-controller@900000 {
-- compatible = "qcom,gcc-msm8660";
-- #clock-cells = <1>;
-- #reset-cells = <1>;
-- reg = <0x900000 0x4000>;
+- msmgpio: gpio@800000 {
+- compatible = "qcom,msm-gpio";
+- reg = <0x00800000 0x4000>;
+- gpio-controller;
+- #gpio-cells = <2>;
+- ngpio = <173>;
+- interrupts = <0 16 0x4>;
+- interrupt-controller;
+- #interrupt-cells = <2>;
- };
+ msmgpio: gpio@800000 {
+ compatible = "qcom,msm-gpio";