Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 39fbf984 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'mvebu-soc-3.17-4' of git://git.infradead.org/linux-mvebu into next/soc

Merge "mvebu SoC changes for v3.17 (round 4)" from Jason Cooper:

 - Armada XP
    - Fix return value check in pmsu code
    - Document URLs for new public datasheets (Thanks, Marvell & free-electrons!)

 - Armada 370/38x
    - Add cpuidle support

 - mvebu
    - Fix build when no platforms are selected
    - Update EBU SoC status in docs

* tag 'mvebu-soc-3.17-4' of git://git.infradead.org/linux-mvebu

: (21 commits)
  Documentation: arm: misc updates to Marvell EBU SoC status
  Documentation: arm: add URLs to public datasheets for the Marvell Armada XP SoC
  ARM: mvebu: fix build without platforms selected
  ARM: mvebu: add cpuidle support for Armada 38x
  ARM: mvebu: add cpuidle support for Armada 370
  cpuidle: mvebu: add Armada 38x support
  cpuidle: mvebu: add Armada 370 support
  cpuidle: mvebu: rename the driver from armada-370-xp to mvebu-v7
  ARM: mvebu: export the SCU address
  ARM: mvebu: make the snoop disabling optional in mvebu_v7_pmsu_idle_prepare()
  ARM: mvebu: use a local variable to store the resume address
  ARM: mvebu: make the cpuidle initialization more generic
  ARM: mvebu: rename the armada_370_xp symbols to mvebu_v7 in pmsu.c
  ARM: mvebu: use the common function for Armada 375 SMP workaround
  ARM: mvebu: add a common function for the boot address work around
  ARM: mvebu: sort the #include of pmsu.c in alphabetic order
  ARM: mvebu: split again armada_370_xp_pmsu_idle_enter() in PMSU code
  ARM: mvebu: fix return value check in armada_xp_pmsu_cpufreq_init()
  clk: mvebu: extend clk-cpu for dynamic frequency scaling
  ARM: mvebu: extend PMSU code to support dynamic frequency scaling
  ...

Conflicts:
	arch/arm/mach-mvebu/Kconfig
	drivers/cpuidle/cpuidle-armada-370-xp.c

Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents dffd7e35 b6e9f521
Loading
Loading
Loading
Loading
+10 −9
Original line number Diff line number Diff line
@@ -53,8 +53,8 @@ Kirkwood family
                Functional Spec: http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
  Homepage: http://www.marvell.com/embedded-processors/kirkwood/
  Core: Feroceon ARMv5 compatible
  Linux kernel mach directory: arch/arm/mach-kirkwood
  Linux kernel plat directory: arch/arm/plat-orion
  Linux kernel mach directory: arch/arm/mach-mvebu
  Linux kernel plat directory: none

Discovery family
----------------
@@ -102,8 +102,7 @@ EBU Armada family
        MV78460
    NOTE: not to be confused with the non-SMP 78xx0 SoCs
    Product Brief: http://www.marvell.com/embedded-processors/armada-xp/assets/Marvell-ArmadaXP-SoC-product%20brief.pdf

  No public datasheet available.
    Functional Spec: http://www.marvell.com/embedded-processors/armada-xp/assets/ARMADA-XP-Functional-SpecDatasheet.pdf

  Core: Sheeva ARMv7 compatible

@@ -137,7 +136,9 @@ Dove family (application processor)
                Functional Spec : http://www.marvell.com/application-processors/armada-500/assets/Armada-510-Functional-Spec.pdf
  Homepage: http://www.marvell.com/application-processors/armada-500/
  Core: ARMv7 compatible
  Directory: arch/arm/mach-dove

  Directory: arch/arm/mach-mvebu (DT enabled platforms)
             arch/arm/mach-dove (non-DT enabled platforms)

PXA 2xx/3xx/93x/95x family
--------------------------
@@ -255,10 +256,10 @@ Berlin family (Digital Entertainment)
Long-term plans
---------------

 * Unify the mach-dove/, mach-mv78xx0/, mach-orion5x/ and
   mach-kirkwood/ into the mach-mvebu/ to support all SoCs from the
   Marvell EBU (Engineering Business Unit) in a single mach-<foo>
   directory. The plat-orion/ would therefore disappear.
 * Unify the mach-dove/, mach-mv78xx0/, mach-orion5x/ into the
   mach-mvebu/ to support all SoCs from the Marvell EBU (Engineering
   Business Unit) in a single mach-<foo> directory. The plat-orion/
   would therefore disappear.

 * Unify the mach-mmp/ and mach-pxa/ into the same mach-pxa
   directory. The plat-pxa/ would therefore disappear.
+3 −2
Original line number Diff line number Diff line
@@ -3,14 +3,15 @@ Device Tree Clock bindings for cpu clock of Marvell EBU platforms
Required properties:
- compatible : shall be one of the following:
	"marvell,armada-xp-cpu-clock" - cpu clocks for Armada XP
- reg : Address and length of the clock complex register set
- reg : Address and length of the clock complex register set, followed
        by address and length of the PMU DFS registers
- #clock-cells : should be set to 1.
- clocks : shall be the input parent clock phandle for the clock.

cpuclk: clock-complex@d0018700 {
	#clock-cells = <1>;
	compatible = "marvell,armada-xp-cpu-clock";
	reg = <0xd0018700 0xA0>;
	reg = <0xd0018700 0xA0>, <0x1c054 0x10>;
	clocks = <&coreclk 1>;
}

+6 −0
Original line number Diff line number Diff line
@@ -14,11 +14,15 @@ menuconfig ARCH_MVEBU

if ARCH_MVEBU

config MACH_MVEBU_ANY
	bool

config MACH_MVEBU_V7
	bool
	select ARMADA_370_XP_TIMER
	select CACHE_L2X0
	select ARM_CPU_SUSPEND
	select MACH_MVEBU_ANY

config MACH_ARMADA_370
	bool "Marvell Armada 370 boards" if ARCH_MULTI_V7
@@ -75,6 +79,7 @@ config MACH_DOVE
	select CACHE_L2X0
	select CPU_PJ4
	select DOVE_CLK
	select MACH_MVEBU_ANY
	select ORION_IRQCHIP
	select ORION_TIMER
	select PINCTRL_DOVE
@@ -87,6 +92,7 @@ config MACH_KIRKWOOD
	select ARCH_REQUIRE_GPIOLIB
	select CPU_FEROCEON
	select KIRKWOOD_CLK
	select MACH_MVEBU_ANY
	select ORION_IRQCHIP
	select ORION_TIMER
	select PCI
+1 −1
Original line number Diff line number Diff line
@@ -4,7 +4,7 @@ ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/$(src)/include \
AFLAGS_coherency_ll.o		:= -Wa,-march=armv7-a
CFLAGS_pmsu.o			:= -march=armv7-a

obj-y				 += system-controller.o mvebu-soc-id.o
obj-$(CONFIG_MACH_MVEBU_ANY)	 += system-controller.o mvebu-soc-id.o

ifeq ($(CONFIG_MACH_MVEBU_V7),y)
obj-y				 += cpu-reset.o board-v7.o coherency.o coherency_ll.o pmsu.o pmsu_ll.o
+0 −1
Original line number Diff line number Diff line
@@ -25,6 +25,5 @@ extern struct smp_operations armada_xp_smp_ops;
#endif

int armada_370_xp_pmsu_idle_enter(unsigned long deepidle);
void armada_370_xp_pmsu_idle_exit(void);

#endif /* __MACH_ARMADA_370_XP_H */
Loading