2014-02-27 21:28:20

by Sebastian Hesselbarth

[permalink] [raw]
Subject: [PATCH 0/4] ARM: dove: move Dove DT to MVEBU

Thanks to DT conversion effort, Marvell Dove with DT support is now
ready to leave mach-dove and hop into mach-mvebu. As discussed with
MVEBU maintainers, we first add dove.c now and keep on migrating
it with Armada 3xx SoCs the next cycle.

Patch 1 adds a DT node for the system controller found on Marvell
MVEBU SoCs.

Patch 2 copies an approach taken by Andrew Lunn for Kirkwood-to-MVEBU
patches, that add MACH_DOVE for Dove in mach-mvebu to distinguish it
from ARCH_DOVE in mach-dove, where drivers still support both non-DT
and DT.

Patch 3 then moves mach-dove/board-dt.c to mach-mvebu/dove.c with
minor cleanups and converts drivers/phy/Kconfig to MACH_DOVE for
a DT-only driver.

Patch 4 finally adds MACH_DOVE and some of its drivers to multi_v7
defconfig.

The patches are based on v3.14-rc4, recently posted mvebu/pinctrl-cleanup
and mvebu/pinctrl-dove branches: v3.14-rc4 is required for a irqchip
driver fix when SPARSE_IRQ is set, the pinctrl branches remove hard-coded
addresses from Dove's pinctrl driver.

An unstable branch with above dependencies met, is available at

https://github.com/shesselba/linux-dove.git unstable/dove-mvebu-for-3.15_v1

Sebastian Hesselbarth (4):
ARM: dove: add system controller node
ARM: dove: prepare new Dove DT Kconfig variable
ARM: mvebu: move DT Dove to MVEBU
ARM: add Marvell Dove and some drivers to multi_v7 defconfig

arch/arm/boot/dts/Makefile | 12 ++++++------
arch/arm/boot/dts/dove.dtsi | 5 +++++
arch/arm/configs/multi_v7_defconfig | 4 ++++
arch/arm/mach-dove/Kconfig | 12 ------------
arch/arm/mach-dove/Makefile | 1 -
arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
arch/arm/mach-mvebu/Makefile | 1 +
arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
drivers/mmc/host/Kconfig | 2 +-
drivers/phy/Kconfig | 2 +-
drivers/thermal/Kconfig | 2 +-
drivers/watchdog/Kconfig | 2 +-
sound/soc/kirkwood/Kconfig | 2 +-
13 files changed, 41 insertions(+), 36 deletions(-)
rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)

---
Cc: Russell King <[email protected]>
Cc: Olof Johansson <[email protected]>
Cc: Kevin Hilman <[email protected]>
Cc: Arnd Bergmann <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Andrew Lunn <[email protected]>
Cc: Gregory Clement <[email protected]>
Cc: [email protected]
Cc: [email protected]
--
1.8.5.3


2014-02-27 21:28:21

by Sebastian Hesselbarth

[permalink] [raw]
Subject: [PATCH 1/4] ARM: dove: add system controller node

This adds a DT node for the system-controller found on Marvell Dove
SoCs.

Signed-off-by: Sebastian Hesselbarth <[email protected]>
---
Cc: Rob Herring <[email protected]>
Cc: Pawel Moll <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: Ian Campbell <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Russell King <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Andrew Lunn <[email protected]>
Cc: Gregory Clement <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
arch/arm/boot/dts/dove.dtsi | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi
index 187fd46b7b5e..bd63452b18c0 100644
--- a/arch/arm/boot/dts/dove.dtsi
+++ b/arch/arm/boot/dts/dove.dtsi
@@ -186,6 +186,11 @@
reg = <0x20000 0x80>, <0x800100 0x8>;
};

+ sysc: system-ctrl@20000 {
+ compatible = "marvell,orion-system-controller";
+ reg = <0x20000 0x110>;
+ };
+
bridge_intc: bridge-interrupt-ctrl@20110 {
compatible = "marvell,orion-bridge-intc";
interrupt-controller;
--
1.8.5.3

2014-02-27 21:28:57

by Sebastian Hesselbarth

[permalink] [raw]
Subject: [PATCH 3/4] ARM: mvebu: move DT Dove to MVEBU

With all the DT support preparation done, we are able to move Dove
to MVEBU easily. Legacy non-DT mach-dove is left untouched to rot
for a while before removal. Also, convert SATA PHY Kconfig entry,
which is DT-only.

Signed-off-by: Sebastian Hesselbarth <[email protected]>
---
Cc: Rob Herring <[email protected]>
Cc: Pawel Moll <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: Ian Campbell <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Russell King <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Andrew Lunn <[email protected]>
Cc: Gregory Clement <[email protected]>
Cc: Kishon Vijay Abraham I <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
arch/arm/boot/dts/Makefile | 12 ++++++------
arch/arm/mach-dove/Kconfig | 12 ------------
arch/arm/mach-dove/Makefile | 1 -
arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
arch/arm/mach-mvebu/Makefile | 1 +
arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
drivers/phy/Kconfig | 2 +-
7 files changed, 28 insertions(+), 32 deletions(-)
rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 032030361bef..376a2573e500 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -55,11 +55,6 @@ dtb-$(CONFIG_ARCH_BERLIN) += \
berlin2cd-google-chromecast.dtb
dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \
da850-evm.dtb
-dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \
- dove-cubox.dtb \
- dove-d2plug.dtb \
- dove-d3plug.dtb \
- dove-dove-db.dtb
dtb-$(CONFIG_ARCH_EFM32) += efm32gg-dk3750.dtb
dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \
exynos4210-smdkv310.dtb \
@@ -132,7 +127,12 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
armada-xp-gp.dtb \
armada-xp-netgear-rn2120.dtb \
armada-xp-matrix.dtb \
- armada-xp-openblocks-ax3-4.dtb
+ armada-xp-openblocks-ax3-4.dtb \
+ dove-cm-a510.dtb \
+ dove-cubox.dtb \
+ dove-d2plug.dtb \
+ dove-d3plug.dtb \
+ dove-dove-db.dtb
dtb-$(CONFIG_ARCH_MXC) += \
imx25-karo-tx25.dtb \
imx25-pdk.dtb \
diff --git a/arch/arm/mach-dove/Kconfig b/arch/arm/mach-dove/Kconfig
index 0bc7cdf8cf46..d8c439c89ea9 100644
--- a/arch/arm/mach-dove/Kconfig
+++ b/arch/arm/mach-dove/Kconfig
@@ -20,18 +20,6 @@ config MACH_CM_A510
Say 'Y' here if you want your kernel to support the
CompuLab CM-A510 Board.

-config MACH_DOVE_DT
- bool "Marvell Dove Flattened Device Tree"
- select DOVE_CLK
- select ORION_IRQCHIP
- select ORION_TIMER
- select REGULATOR
- select REGULATOR_FIXED_VOLTAGE
- select USE_OF
- help
- Say 'Y' here if you want your kernel to support the
- Marvell Dove using flattened device tree.
-
endmenu

endif
diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
index cbc5c0618788..b608a21919fb 100644
--- a/arch/arm/mach-dove/Makefile
+++ b/arch/arm/mach-dove/Makefile
@@ -2,5 +2,4 @@ obj-y += common.o
obj-$(CONFIG_DOVE_LEGACY) += irq.o mpp.o
obj-$(CONFIG_PCI) += pcie.o
obj-$(CONFIG_MACH_DOVE_DB) += dove-db-setup.o
-obj-$(CONFIG_MACH_DOVE_DT) += board-dt.o
obj-$(CONFIG_MACH_CM_A510) += cm-a510.o
diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
index 5e269d7263ce..966e5c6b9944 100644
--- a/arch/arm/mach-mvebu/Kconfig
+++ b/arch/arm/mach-mvebu/Kconfig
@@ -46,6 +46,18 @@ config MACH_ARMADA_XP
Say 'Y' here if you want your kernel to support boards based
on the Marvell Armada XP SoC with device tree.

+config MACH_DOVE
+ bool "Marvell Dove boards" if ARCH_MULTI_V7
+ select CACHE_L2X0
+ select CPU_PJ4
+ select DOVE_CLK
+ select ORION_IRQCHIP
+ select ORION_TIMER
+ select PINCTRL_DOVE
+ help
+ Say 'Y' here if you want your kernel to support the
+ Marvell Dove using flattened device tree.
+
endmenu

endif
diff --git a/arch/arm/mach-mvebu/Makefile b/arch/arm/mach-mvebu/Makefile
index 878aebe98dcc..dd3e7188f75d 100644
--- a/arch/arm/mach-mvebu/Makefile
+++ b/arch/arm/mach-mvebu/Makefile
@@ -5,6 +5,7 @@ AFLAGS_coherency_ll.o := -Wa,-march=armv7-a

obj-y += system-controller.o mvebu-soc-id.o
obj-$(CONFIG_MACH_ARMADA_370_XP) += armada-370-xp.o
+obj-$(CONFIG_MACH_DOVE) += dove.o
obj-$(CONFIG_ARCH_MVEBU) += coherency.o coherency_ll.o pmsu.o
obj-$(CONFIG_SMP) += platsmp.o headsmp.o
obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-mvebu/dove.c
similarity index 61%
rename from arch/arm/mach-dove/board-dt.c
rename to arch/arm/mach-mvebu/dove.c
index 49fa9abd09da..5e5a43624237 100644
--- a/arch/arm/mach-dove/board-dt.c
+++ b/arch/arm/mach-mvebu/dove.c
@@ -1,5 +1,5 @@
/*
- * arch/arm/mach-dove/board-dt.c
+ * arch/arm/mach-mvebu/dove.c
*
* Marvell Dove 88AP510 System On Chip FDT Board
*
@@ -9,17 +9,14 @@
*/

#include <linux/init.h>
-#include <linux/clk-provider.h>
+#include <linux/mbus.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <asm/hardware/cache-tauros2.h>
#include <asm/mach/arch.h>
-#include <mach/dove.h>
-#include <mach/pm.h>
-#include <plat/common.h>
#include "common.h"

-static void __init dove_dt_init(void)
+static void __init dove_init(void)
{
pr_info("Dove 88AP510 SoC\n");

@@ -30,14 +27,13 @@ static void __init dove_dt_init(void)
of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
}

-static const char * const dove_dt_board_compat[] = {
+static const char * const dove_dt_compat[] = {
"marvell,dove",
NULL
};

-DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)")
- .map_io = dove_map_io,
- .init_machine = dove_dt_init,
- .restart = dove_restart,
- .dt_compat = dove_dt_board_compat,
+DT_MACHINE_START(DOVE_DT, "Marvell Dove")
+ .init_machine = dove_init,
+ .restart = mvebu_restart,
+ .dt_compat = dove_dt_compat,
MACHINE_END
diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig
index c7a551c2d5f1..ffd7f07adca3 100644
--- a/drivers/phy/Kconfig
+++ b/drivers/phy/Kconfig
@@ -24,7 +24,7 @@ config PHY_EXYNOS_MIPI_VIDEO

config PHY_MVEBU_SATA
def_bool y
- depends on ARCH_KIRKWOOD || ARCH_DOVE
+ depends on ARCH_KIRKWOOD || MACH_DOVE
depends on OF
select GENERIC_PHY

--
1.8.5.3

2014-02-27 21:28:59

by Sebastian Hesselbarth

[permalink] [raw]
Subject: [PATCH 4/4] ARM: add Marvell Dove and some drivers to multi_v7 defconfig

With Marvell Dove now being part of the multi_v7 family, add some Dove
specific drivers to multi_v7 defconfig.

Signed-off-by: Sebastian Hesselbarth <[email protected]>
---
Cc: Russell King <[email protected]>
Cc: Olof Johansson <[email protected]>
Cc: Kevin Hilman <[email protected]>
Cc: Arnd Bergmann <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Andrew Lunn <[email protected]>
Cc: Gregory Clement <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
arch/arm/configs/multi_v7_defconfig | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
index ee6982976d66..a1876b2ed4bd 100644
--- a/arch/arm/configs/multi_v7_defconfig
+++ b/arch/arm/configs/multi_v7_defconfig
@@ -10,6 +10,7 @@ CONFIG_PARTITION_ADVANCED=y
CONFIG_ARCH_MVEBU=y
CONFIG_MACH_ARMADA_370=y
CONFIG_MACH_ARMADA_XP=y
+CONFIG_MACH_DOVE=y
CONFIG_ARCH_BCM=y
CONFIG_ARCH_BCM_MOBILE=y
CONFIG_ARCH_BERLIN=y
@@ -111,6 +112,7 @@ CONFIG_SATA_MV=y
CONFIG_NETDEVICES=y
CONFIG_SUN4I_EMAC=y
CONFIG_NET_CALXEDA_XGMAC=y
+CONFIG_MV643XX_ETH=y
CONFIG_MVNETA=y
CONFIG_KS8851=y
CONFIG_R8169=y
@@ -187,6 +189,7 @@ CONFIG_POWER_RESET_AS3722=y
CONFIG_POWER_RESET_GPIO=y
CONFIG_SENSORS_LM90=y
CONFIG_THERMAL=y
+CONFIG_DOVE_THERMAL=y
CONFIG_ARMADA_THERMAL=y
CONFIG_MFD_AS3722=y
CONFIG_MFD_CROS_EC=y
@@ -253,6 +256,7 @@ CONFIG_MMC_BLOCK_MINORS=16
CONFIG_MMC_ARMMMCI=y
CONFIG_MMC_SDHCI=y
CONFIG_MMC_SDHCI_ESDHC_IMX=y
+CONFIG_MMC_SDHCI_DOVE=y
CONFIG_MMC_SDHCI_TEGRA=y
CONFIG_MMC_SDHCI_SPEAR=y
CONFIG_MMC_SDHCI_BCM_KONA=y
--
1.8.5.3

2014-02-27 21:29:38

by Sebastian Hesselbarth

[permalink] [raw]
Subject: [PATCH 2/4] ARM: dove: prepare new Dove DT Kconfig variable

DT-enabled Dove will move over from ARCH_DOVE in mach-dove to MACH_DOVE in
mach-mvebu. As non-DT ARCH_DOVE will stay to rot for a while, add a new
DT-only MACH_DOVE to mmc, thermal, wdt, and asoc Kconfigs.

Signed-off-by: Sebastian Hesselbarth <[email protected]>
---
Cc: Chris Ball <[email protected]>
Cc: Zhang Rui <[email protected]>
Cc: Eduardo Valentin <[email protected]>
Cc: Wim Van Sebroeck <[email protected]>
Cc: Liam Girdwood <[email protected]>
Cc: Mark Brown <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Andrew Lunn <[email protected]>
Cc: Gregory Clement <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
drivers/mmc/host/Kconfig | 2 +-
drivers/thermal/Kconfig | 2 +-
drivers/watchdog/Kconfig | 2 +-
sound/soc/kirkwood/Kconfig | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
index 1384f67abe21..a69e48b582e5 100644
--- a/drivers/mmc/host/Kconfig
+++ b/drivers/mmc/host/Kconfig
@@ -168,7 +168,7 @@ config MMC_SDHCI_ESDHC_IMX

config MMC_SDHCI_DOVE
tristate "SDHCI support on Marvell's Dove SoC"
- depends on ARCH_DOVE
+ depends on ARCH_DOVE || MACH_DOVE
depends on MMC_SDHCI_PLTFM
select MMC_SDHCI_IO_ACCESSORS
help
diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
index 35c066489a19..07b5e56e9a97 100644
--- a/drivers/thermal/Kconfig
+++ b/drivers/thermal/Kconfig
@@ -150,7 +150,7 @@ config KIRKWOOD_THERMAL

config DOVE_THERMAL
tristate "Temperature sensor on Marvell Dove SoCs"
- depends on ARCH_DOVE
+ depends on ARCH_DOVE || MACH_DOVE
depends on OF
help
Support for the Dove thermal sensor driver in the Linux thermal
diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
index 79d25894343a..5659c62a175c 100644
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
@@ -292,7 +292,7 @@ config DAVINCI_WATCHDOG

config ORION_WATCHDOG
tristate "Orion watchdog"
- depends on ARCH_ORION5X || ARCH_KIRKWOOD || ARCH_DOVE
+ depends on ARCH_ORION5X || ARCH_KIRKWOOD || ARCH_DOVE || MACH_DOVE
select WATCHDOG_CORE
help
Say Y here if to include support for the watchdog timer
diff --git a/sound/soc/kirkwood/Kconfig b/sound/soc/kirkwood/Kconfig
index 78ed4a42ad21..a1506d57e646 100644
--- a/sound/soc/kirkwood/Kconfig
+++ b/sound/soc/kirkwood/Kconfig
@@ -1,6 +1,6 @@
config SND_KIRKWOOD_SOC
tristate "SoC Audio for the Marvell Kirkwood and Dove chips"
- depends on ARCH_KIRKWOOD || ARCH_DOVE || COMPILE_TEST
+ depends on ARCH_KIRKWOOD || ARCH_DOVE || MACH_DOVE || COMPILE_TEST
help
Say Y or M if you want to add support for codecs attached to
the Kirkwood I2S interface. You will also need to select the
--
1.8.5.3

2014-02-27 21:41:08

by Jason Cooper

[permalink] [raw]
Subject: Re: [PATCH 3/4] ARM: mvebu: move DT Dove to MVEBU

On Thu, Feb 27, 2014 at 10:28:04PM +0100, Sebastian Hesselbarth wrote:
> With all the DT support preparation done, we are able to move Dove
> to MVEBU easily. Legacy non-DT mach-dove is left untouched to rot
> for a while before removal. Also, convert SATA PHY Kconfig entry,
> which is DT-only.
>
> Signed-off-by: Sebastian Hesselbarth <[email protected]>
> ---
> Cc: Rob Herring <[email protected]>
> Cc: Pawel Moll <[email protected]>
> Cc: Mark Rutland <[email protected]>
> Cc: Ian Campbell <[email protected]>
> Cc: Kumar Gala <[email protected]>
> Cc: Russell King <[email protected]>
> Cc: Jason Cooper <[email protected]>
> Cc: Andrew Lunn <[email protected]>
> Cc: Gregory Clement <[email protected]>
> Cc: Kishon Vijay Abraham I <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> ---
> arch/arm/boot/dts/Makefile | 12 ++++++------
> arch/arm/mach-dove/Kconfig | 12 ------------
> arch/arm/mach-dove/Makefile | 1 -
> arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
> arch/arm/mach-mvebu/Makefile | 1 +
> arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
> drivers/phy/Kconfig | 2 +-
> 7 files changed, 28 insertions(+), 32 deletions(-)
> rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)
>
> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> index 032030361bef..376a2573e500 100644
> --- a/arch/arm/boot/dts/Makefile
> +++ b/arch/arm/boot/dts/Makefile
> @@ -55,11 +55,6 @@ dtb-$(CONFIG_ARCH_BERLIN) += \
> berlin2cd-google-chromecast.dtb
> dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \
> da850-evm.dtb
> -dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \
> - dove-cubox.dtb \
> - dove-d2plug.dtb \
> - dove-d3plug.dtb \
> - dove-dove-db.dtb
> dtb-$(CONFIG_ARCH_EFM32) += efm32gg-dk3750.dtb
> dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \
> exynos4210-smdkv310.dtb \
> @@ -132,7 +127,12 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
> armada-xp-gp.dtb \
> armada-xp-netgear-rn2120.dtb \
> armada-xp-matrix.dtb \
> - armada-xp-openblocks-ax3-4.dtb
> + armada-xp-openblocks-ax3-4.dtb \
> + dove-cm-a510.dtb \
> + dove-cubox.dtb \
> + dove-d2plug.dtb \
> + dove-d3plug.dtb \
> + dove-dove-db.dtb

This is going to conflict badly with

a02dd0271d01 ARM: mvebu: select dtbs from MACH_ARMADA_*

Perhaps you could mimic what Andrew did in his series:

dove := dove-cm-a510.dtb \
dove-cubox.dtb \
dove-d2plug.dtb \
dove-d3plug.dtb \
dove-dove-db.dtb
dtb-$(CONFIG_ARCH_DOVE) += $(dove)
dtb-$(CONFIG_MACH_DOVE) += $(dove)

We plan on re-alphabetizing next window to prevent bad conflicts in this
window.

thx,

Jason.

2014-02-27 21:44:08

by Sebastian Hesselbarth

[permalink] [raw]
Subject: Re: [PATCH 3/4] ARM: mvebu: move DT Dove to MVEBU

On 02/27/2014 10:40 PM, Jason Cooper wrote:
> On Thu, Feb 27, 2014 at 10:28:04PM +0100, Sebastian Hesselbarth wrote:
>> With all the DT support preparation done, we are able to move Dove
>> to MVEBU easily. Legacy non-DT mach-dove is left untouched to rot
>> for a while before removal. Also, convert SATA PHY Kconfig entry,
>> which is DT-only.
>>
>> Signed-off-by: Sebastian Hesselbarth <[email protected]>
>> ---
>> Cc: Rob Herring <[email protected]>
>> Cc: Pawel Moll <[email protected]>
>> Cc: Mark Rutland <[email protected]>
>> Cc: Ian Campbell <[email protected]>
>> Cc: Kumar Gala <[email protected]>
>> Cc: Russell King <[email protected]>
>> Cc: Jason Cooper <[email protected]>
>> Cc: Andrew Lunn <[email protected]>
>> Cc: Gregory Clement <[email protected]>
>> Cc: Kishon Vijay Abraham I <[email protected]>
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> ---
>> arch/arm/boot/dts/Makefile | 12 ++++++------
>> arch/arm/mach-dove/Kconfig | 12 ------------
>> arch/arm/mach-dove/Makefile | 1 -
>> arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
>> arch/arm/mach-mvebu/Makefile | 1 +
>> arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
>> drivers/phy/Kconfig | 2 +-
>> 7 files changed, 28 insertions(+), 32 deletions(-)
>> rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)
>>
>> diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
>> index 032030361bef..376a2573e500 100644
>> --- a/arch/arm/boot/dts/Makefile
>> +++ b/arch/arm/boot/dts/Makefile
>> @@ -55,11 +55,6 @@ dtb-$(CONFIG_ARCH_BERLIN) += \
>> berlin2cd-google-chromecast.dtb
>> dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \
>> da850-evm.dtb
>> -dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \
>> - dove-cubox.dtb \
>> - dove-d2plug.dtb \
>> - dove-d3plug.dtb \
>> - dove-dove-db.dtb
>> dtb-$(CONFIG_ARCH_EFM32) += efm32gg-dk3750.dtb
>> dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \
>> exynos4210-smdkv310.dtb \
>> @@ -132,7 +127,12 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
>> armada-xp-gp.dtb \
>> armada-xp-netgear-rn2120.dtb \
>> armada-xp-matrix.dtb \
>> - armada-xp-openblocks-ax3-4.dtb
>> + armada-xp-openblocks-ax3-4.dtb \
>> + dove-cm-a510.dtb \
>> + dove-cubox.dtb \
>> + dove-d2plug.dtb \
>> + dove-d3plug.dtb \
>> + dove-dove-db.dtb
>
> This is going to conflict badly with
>
> a02dd0271d01 ARM: mvebu: select dtbs from MACH_ARMADA_*
>
> Perhaps you could mimic what Andrew did in his series:
>
> dove := dove-cm-a510.dtb \
> dove-cubox.dtb \
> dove-d2plug.dtb \
> dove-d3plug.dtb \
> dove-dove-db.dtb
> dtb-$(CONFIG_ARCH_DOVE) += $(dove)
> dtb-$(CONFIG_MACH_DOVE) += $(dove)

Ok, will do - except dtb-$(CONFIG_ARCH_DOVE) above.. there is no
DT in ARCH_DOVE after this patch.

> We plan on re-alphabetizing next window to prevent bad conflicts in this
> window.

Good!

Sebastian

2014-02-27 21:46:03

by Jason Cooper

[permalink] [raw]
Subject: Re: [PATCH 0/4] ARM: dove: move Dove DT to MVEBU

On Thu, Feb 27, 2014 at 10:28:01PM +0100, Sebastian Hesselbarth wrote:
> Thanks to DT conversion effort, Marvell Dove with DT support is now
> ready to leave mach-dove and hop into mach-mvebu. As discussed with
> MVEBU maintainers, we first add dove.c now and keep on migrating
> it with Armada 3xx SoCs the next cycle.
>
> Patch 1 adds a DT node for the system controller found on Marvell
> MVEBU SoCs.
>
> Patch 2 copies an approach taken by Andrew Lunn for Kirkwood-to-MVEBU
> patches, that add MACH_DOVE for Dove in mach-mvebu to distinguish it
> from ARCH_DOVE in mach-dove, where drivers still support both non-DT
> and DT.
>
> Patch 3 then moves mach-dove/board-dt.c to mach-mvebu/dove.c with
> minor cleanups and converts drivers/phy/Kconfig to MACH_DOVE for
> a DT-only driver.
>
> Patch 4 finally adds MACH_DOVE and some of its drivers to multi_v7
> defconfig.
>
> The patches are based on v3.14-rc4, recently posted mvebu/pinctrl-cleanup
> and mvebu/pinctrl-dove branches: v3.14-rc4 is required for a irqchip
> driver fix when SPARSE_IRQ is set, the pinctrl branches remove hard-coded
> addresses from Dove's pinctrl driver.

If I were to base this series on v3.14-rc1, I would need to pull in

mvebu/pinctrl-dove (which draws in mvebu/pinctrl-cleanup)
mvebu/irqchip-fixes

and that should be all. iiuc, these are boot-time requirements, not
build or merge requirements, correct?

thx,

Jason.

> An unstable branch with above dependencies met, is available at
>
> https://github.com/shesselba/linux-dove.git unstable/dove-mvebu-for-3.15_v1
>
> Sebastian Hesselbarth (4):
> ARM: dove: add system controller node
> ARM: dove: prepare new Dove DT Kconfig variable
> ARM: mvebu: move DT Dove to MVEBU
> ARM: add Marvell Dove and some drivers to multi_v7 defconfig
>
> arch/arm/boot/dts/Makefile | 12 ++++++------
> arch/arm/boot/dts/dove.dtsi | 5 +++++
> arch/arm/configs/multi_v7_defconfig | 4 ++++
> arch/arm/mach-dove/Kconfig | 12 ------------
> arch/arm/mach-dove/Makefile | 1 -
> arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
> arch/arm/mach-mvebu/Makefile | 1 +
> arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
> drivers/mmc/host/Kconfig | 2 +-
> drivers/phy/Kconfig | 2 +-
> drivers/thermal/Kconfig | 2 +-
> drivers/watchdog/Kconfig | 2 +-
> sound/soc/kirkwood/Kconfig | 2 +-
> 13 files changed, 41 insertions(+), 36 deletions(-)
> rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)
>
> ---
> Cc: Russell King <[email protected]>
> Cc: Olof Johansson <[email protected]>
> Cc: Kevin Hilman <[email protected]>
> Cc: Arnd Bergmann <[email protected]>
> Cc: Jason Cooper <[email protected]>
> Cc: Andrew Lunn <[email protected]>
> Cc: Gregory Clement <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> --
> 1.8.5.3
>

2014-02-27 21:47:58

by Jason Cooper

[permalink] [raw]
Subject: Re: [PATCH 3/4] ARM: mvebu: move DT Dove to MVEBU

On Thu, Feb 27, 2014 at 10:43:59PM +0100, Sebastian Hesselbarth wrote:
> On 02/27/2014 10:40 PM, Jason Cooper wrote:
> >On Thu, Feb 27, 2014 at 10:28:04PM +0100, Sebastian Hesselbarth wrote:
> >>With all the DT support preparation done, we are able to move Dove
> >>to MVEBU easily. Legacy non-DT mach-dove is left untouched to rot
> >>for a while before removal. Also, convert SATA PHY Kconfig entry,
> >>which is DT-only.
> >>
> >>Signed-off-by: Sebastian Hesselbarth <[email protected]>
> >>---
> >>Cc: Rob Herring <[email protected]>
> >>Cc: Pawel Moll <[email protected]>
> >>Cc: Mark Rutland <[email protected]>
> >>Cc: Ian Campbell <[email protected]>
> >>Cc: Kumar Gala <[email protected]>
> >>Cc: Russell King <[email protected]>
> >>Cc: Jason Cooper <[email protected]>
> >>Cc: Andrew Lunn <[email protected]>
> >>Cc: Gregory Clement <[email protected]>
> >>Cc: Kishon Vijay Abraham I <[email protected]>
> >>Cc: [email protected]
> >>Cc: [email protected]
> >>Cc: [email protected]
> >>---
> >> arch/arm/boot/dts/Makefile | 12 ++++++------
> >> arch/arm/mach-dove/Kconfig | 12 ------------
> >> arch/arm/mach-dove/Makefile | 1 -
> >> arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
> >> arch/arm/mach-mvebu/Makefile | 1 +
> >> arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
> >> drivers/phy/Kconfig | 2 +-
> >> 7 files changed, 28 insertions(+), 32 deletions(-)
> >> rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)
> >>
> >>diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
> >>index 032030361bef..376a2573e500 100644
> >>--- a/arch/arm/boot/dts/Makefile
> >>+++ b/arch/arm/boot/dts/Makefile
> >>@@ -55,11 +55,6 @@ dtb-$(CONFIG_ARCH_BERLIN) += \
> >> berlin2cd-google-chromecast.dtb
> >> dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \
> >> da850-evm.dtb
> >>-dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \
> >>- dove-cubox.dtb \
> >>- dove-d2plug.dtb \
> >>- dove-d3plug.dtb \
> >>- dove-dove-db.dtb
> >> dtb-$(CONFIG_ARCH_EFM32) += efm32gg-dk3750.dtb
> >> dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \
> >> exynos4210-smdkv310.dtb \
> >>@@ -132,7 +127,12 @@ dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \
> >> armada-xp-gp.dtb \
> >> armada-xp-netgear-rn2120.dtb \
> >> armada-xp-matrix.dtb \
> >>- armada-xp-openblocks-ax3-4.dtb
> >>+ armada-xp-openblocks-ax3-4.dtb \
> >>+ dove-cm-a510.dtb \
> >>+ dove-cubox.dtb \
> >>+ dove-d2plug.dtb \
> >>+ dove-d3plug.dtb \
> >>+ dove-dove-db.dtb
> >
> >This is going to conflict badly with
> >
> > a02dd0271d01 ARM: mvebu: select dtbs from MACH_ARMADA_*
> >
> >Perhaps you could mimic what Andrew did in his series:
> >
> >dove := dove-cm-a510.dtb \
> > dove-cubox.dtb \
> > dove-d2plug.dtb \
> > dove-d3plug.dtb \
> > dove-dove-db.dtb
> >dtb-$(CONFIG_ARCH_DOVE) += $(dove)
> >dtb-$(CONFIG_MACH_DOVE) += $(dove)
>
> Ok, will do - except dtb-$(CONFIG_ARCH_DOVE) above.. there is no
> DT in ARCH_DOVE after this patch.

Ok, then there's no need for 'dove :=', just s/ARCH_DOVE/MACH_DOVE/ on
the original without movement.

thx,

Jason.

2014-02-27 21:48:38

by Sebastian Hesselbarth

[permalink] [raw]
Subject: Re: [PATCH 0/4] ARM: dove: move Dove DT to MVEBU

On 02/27/2014 10:45 PM, Jason Cooper wrote:
> On Thu, Feb 27, 2014 at 10:28:01PM +0100, Sebastian Hesselbarth wrote:
>> Thanks to DT conversion effort, Marvell Dove with DT support is now
>> ready to leave mach-dove and hop into mach-mvebu. As discussed with
>> MVEBU maintainers, we first add dove.c now and keep on migrating
>> it with Armada 3xx SoCs the next cycle.
>>
>> Patch 1 adds a DT node for the system controller found on Marvell
>> MVEBU SoCs.
>>
>> Patch 2 copies an approach taken by Andrew Lunn for Kirkwood-to-MVEBU
>> patches, that add MACH_DOVE for Dove in mach-mvebu to distinguish it
>> from ARCH_DOVE in mach-dove, where drivers still support both non-DT
>> and DT.
>>
>> Patch 3 then moves mach-dove/board-dt.c to mach-mvebu/dove.c with
>> minor cleanups and converts drivers/phy/Kconfig to MACH_DOVE for
>> a DT-only driver.
>>
>> Patch 4 finally adds MACH_DOVE and some of its drivers to multi_v7
>> defconfig.
>>
>> The patches are based on v3.14-rc4, recently posted mvebu/pinctrl-cleanup
>> and mvebu/pinctrl-dove branches: v3.14-rc4 is required for a irqchip
>> driver fix when SPARSE_IRQ is set, the pinctrl branches remove hard-coded
>> addresses from Dove's pinctrl driver.
>
> If I were to base this series on v3.14-rc1, I would need to pull in
>
> mvebu/pinctrl-dove (which draws in mvebu/pinctrl-cleanup)
> mvebu/irqchip-fixes
>
> and that should be all. iiuc, these are boot-time requirements, not
> build or merge requirements, correct?

Yes, all are boot-time requirements only.

Sebastian

2014-02-27 21:52:06

by Wim Van Sebroeck

[permalink] [raw]
Subject: Re: [PATCH 2/4] ARM: dove: prepare new Dove DT Kconfig variable

Hi Sebastian,

Acked-by me.

Kind regards,
Wim.

> DT-enabled Dove will move over from ARCH_DOVE in mach-dove to MACH_DOVE in
> mach-mvebu. As non-DT ARCH_DOVE will stay to rot for a while, add a new
> DT-only MACH_DOVE to mmc, thermal, wdt, and asoc Kconfigs.
>
> Signed-off-by: Sebastian Hesselbarth <[email protected]>
> ---
> Cc: Chris Ball <[email protected]>
> Cc: Zhang Rui <[email protected]>
> Cc: Eduardo Valentin <[email protected]>
> Cc: Wim Van Sebroeck <[email protected]>
> Cc: Liam Girdwood <[email protected]>
> Cc: Mark Brown <[email protected]>
> Cc: Jason Cooper <[email protected]>
> Cc: Andrew Lunn <[email protected]>
> Cc: Gregory Clement <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> ---
> drivers/mmc/host/Kconfig | 2 +-
> drivers/thermal/Kconfig | 2 +-
> drivers/watchdog/Kconfig | 2 +-
> sound/soc/kirkwood/Kconfig | 2 +-
> 4 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
> index 1384f67abe21..a69e48b582e5 100644
> --- a/drivers/mmc/host/Kconfig
> +++ b/drivers/mmc/host/Kconfig
> @@ -168,7 +168,7 @@ config MMC_SDHCI_ESDHC_IMX
>
> config MMC_SDHCI_DOVE
> tristate "SDHCI support on Marvell's Dove SoC"
> - depends on ARCH_DOVE
> + depends on ARCH_DOVE || MACH_DOVE
> depends on MMC_SDHCI_PLTFM
> select MMC_SDHCI_IO_ACCESSORS
> help
> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
> index 35c066489a19..07b5e56e9a97 100644
> --- a/drivers/thermal/Kconfig
> +++ b/drivers/thermal/Kconfig
> @@ -150,7 +150,7 @@ config KIRKWOOD_THERMAL
>
> config DOVE_THERMAL
> tristate "Temperature sensor on Marvell Dove SoCs"
> - depends on ARCH_DOVE
> + depends on ARCH_DOVE || MACH_DOVE
> depends on OF
> help
> Support for the Dove thermal sensor driver in the Linux thermal
> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
> index 79d25894343a..5659c62a175c 100644
> --- a/drivers/watchdog/Kconfig
> +++ b/drivers/watchdog/Kconfig
> @@ -292,7 +292,7 @@ config DAVINCI_WATCHDOG
>
> config ORION_WATCHDOG
> tristate "Orion watchdog"
> - depends on ARCH_ORION5X || ARCH_KIRKWOOD || ARCH_DOVE
> + depends on ARCH_ORION5X || ARCH_KIRKWOOD || ARCH_DOVE || MACH_DOVE
> select WATCHDOG_CORE
> help
> Say Y here if to include support for the watchdog timer
> diff --git a/sound/soc/kirkwood/Kconfig b/sound/soc/kirkwood/Kconfig
> index 78ed4a42ad21..a1506d57e646 100644
> --- a/sound/soc/kirkwood/Kconfig
> +++ b/sound/soc/kirkwood/Kconfig
> @@ -1,6 +1,6 @@
> config SND_KIRKWOOD_SOC
> tristate "SoC Audio for the Marvell Kirkwood and Dove chips"
> - depends on ARCH_KIRKWOOD || ARCH_DOVE || COMPILE_TEST
> + depends on ARCH_KIRKWOOD || ARCH_DOVE || MACH_DOVE || COMPILE_TEST
> help
> Say Y or M if you want to add support for codecs attached to
> the Kirkwood I2S interface. You will also need to select the
> --
> 1.8.5.3
>

2014-02-27 22:03:46

by Sebastian Hesselbarth

[permalink] [raw]
Subject: [PATCH v2 3/4] ARM: mvebu: move DT Dove to MVEBU

With all the DT support preparation done, we are able to move Dove
to MVEBU easily. Legacy non-DT mach-dove is left untouched to rot
for a while before removal. Also, convert SATA PHY Kconfig entry,
which is DT-only.

Signed-off-by: Sebastian Hesselbarth <[email protected]>
---
Changelog:
v1->v2:
- just rename CONFIG_ARCH_DOVE to CONFIG_MACH_DOVE in dts/Makefile
(Suggested by Jason Cooper)

Cc: Rob Herring <[email protected]>
Cc: Pawel Moll <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: Ian Campbell <[email protected]>
Cc: Kumar Gala <[email protected]>
Cc: Russell King <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Andrew Lunn <[email protected]>
Cc: Gregory Clement <[email protected]>
Cc: Kishon Vijay Abraham I <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
arch/arm/boot/dts/Makefile | 2 +-
arch/arm/mach-dove/Kconfig | 12 ------------
arch/arm/mach-dove/Makefile | 1 -
arch/arm/mach-mvebu/Kconfig | 12 ++++++++++++
arch/arm/mach-mvebu/Makefile | 1 +
arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} | 20 ++++++++------------
drivers/phy/Kconfig | 2 +-
7 files changed, 23 insertions(+), 27 deletions(-)
rename arch/arm/{mach-dove/board-dt.c => mach-mvebu/dove.c} (61%)

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 032030361bef..21317af7fe48 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -55,7 +55,7 @@ dtb-$(CONFIG_ARCH_BERLIN) += \
berlin2cd-google-chromecast.dtb
dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \
da850-evm.dtb
-dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \
+dtb-$(CONFIG_MACH_DOVE) += dove-cm-a510.dtb \
dove-cubox.dtb \
dove-d2plug.dtb \
dove-d3plug.dtb \
diff --git a/arch/arm/mach-dove/Kconfig b/arch/arm/mach-dove/Kconfig
index 0bc7cdf8cf46..d8c439c89ea9 100644
--- a/arch/arm/mach-dove/Kconfig
+++ b/arch/arm/mach-dove/Kconfig
@@ -20,18 +20,6 @@ config MACH_CM_A510
Say 'Y' here if you want your kernel to support the
CompuLab CM-A510 Board.

-config MACH_DOVE_DT
- bool "Marvell Dove Flattened Device Tree"
- select DOVE_CLK
- select ORION_IRQCHIP
- select ORION_TIMER
- select REGULATOR
- select REGULATOR_FIXED_VOLTAGE
- select USE_OF
- help
- Say 'Y' here if you want your kernel to support the
- Marvell Dove using flattened device tree.
-
endmenu

endif
diff --git a/arch/arm/mach-dove/Makefile b/arch/arm/mach-dove/Makefile
index cbc5c0618788..b608a21919fb 100644
--- a/arch/arm/mach-dove/Makefile
+++ b/arch/arm/mach-dove/Makefile
@@ -2,5 +2,4 @@ obj-y += common.o
obj-$(CONFIG_DOVE_LEGACY) += irq.o mpp.o
obj-$(CONFIG_PCI) += pcie.o
obj-$(CONFIG_MACH_DOVE_DB) += dove-db-setup.o
-obj-$(CONFIG_MACH_DOVE_DT) += board-dt.o
obj-$(CONFIG_MACH_CM_A510) += cm-a510.o
diff --git a/arch/arm/mach-mvebu/Kconfig b/arch/arm/mach-mvebu/Kconfig
index 5e269d7263ce..966e5c6b9944 100644
--- a/arch/arm/mach-mvebu/Kconfig
+++ b/arch/arm/mach-mvebu/Kconfig
@@ -46,6 +46,18 @@ config MACH_ARMADA_XP
Say 'Y' here if you want your kernel to support boards based
on the Marvell Armada XP SoC with device tree.

+config MACH_DOVE
+ bool "Marvell Dove boards" if ARCH_MULTI_V7
+ select CACHE_L2X0
+ select CPU_PJ4
+ select DOVE_CLK
+ select ORION_IRQCHIP
+ select ORION_TIMER
+ select PINCTRL_DOVE
+ help
+ Say 'Y' here if you want your kernel to support the
+ Marvell Dove using flattened device tree.
+
endmenu

endif
diff --git a/arch/arm/mach-mvebu/Makefile b/arch/arm/mach-mvebu/Makefile
index 878aebe98dcc..dd3e7188f75d 100644
--- a/arch/arm/mach-mvebu/Makefile
+++ b/arch/arm/mach-mvebu/Makefile
@@ -5,6 +5,7 @@ AFLAGS_coherency_ll.o := -Wa,-march=armv7-a

obj-y += system-controller.o mvebu-soc-id.o
obj-$(CONFIG_MACH_ARMADA_370_XP) += armada-370-xp.o
+obj-$(CONFIG_MACH_DOVE) += dove.o
obj-$(CONFIG_ARCH_MVEBU) += coherency.o coherency_ll.o pmsu.o
obj-$(CONFIG_SMP) += platsmp.o headsmp.o
obj-$(CONFIG_HOTPLUG_CPU) += hotplug.o
diff --git a/arch/arm/mach-dove/board-dt.c b/arch/arm/mach-mvebu/dove.c
similarity index 61%
rename from arch/arm/mach-dove/board-dt.c
rename to arch/arm/mach-mvebu/dove.c
index 49fa9abd09da..5e5a43624237 100644
--- a/arch/arm/mach-dove/board-dt.c
+++ b/arch/arm/mach-mvebu/dove.c
@@ -1,5 +1,5 @@
/*
- * arch/arm/mach-dove/board-dt.c
+ * arch/arm/mach-mvebu/dove.c
*
* Marvell Dove 88AP510 System On Chip FDT Board
*
@@ -9,17 +9,14 @@
*/

#include <linux/init.h>
-#include <linux/clk-provider.h>
+#include <linux/mbus.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <asm/hardware/cache-tauros2.h>
#include <asm/mach/arch.h>
-#include <mach/dove.h>
-#include <mach/pm.h>
-#include <plat/common.h>
#include "common.h"

-static void __init dove_dt_init(void)
+static void __init dove_init(void)
{
pr_info("Dove 88AP510 SoC\n");

@@ -30,14 +27,13 @@ static void __init dove_dt_init(void)
of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
}

-static const char * const dove_dt_board_compat[] = {
+static const char * const dove_dt_compat[] = {
"marvell,dove",
NULL
};

-DT_MACHINE_START(DOVE_DT, "Marvell Dove (Flattened Device Tree)")
- .map_io = dove_map_io,
- .init_machine = dove_dt_init,
- .restart = dove_restart,
- .dt_compat = dove_dt_board_compat,
+DT_MACHINE_START(DOVE_DT, "Marvell Dove")
+ .init_machine = dove_init,
+ .restart = mvebu_restart,
+ .dt_compat = dove_dt_compat,
MACHINE_END
diff --git a/drivers/phy/Kconfig b/drivers/phy/Kconfig
index c7a551c2d5f1..ffd7f07adca3 100644
--- a/drivers/phy/Kconfig
+++ b/drivers/phy/Kconfig
@@ -24,7 +24,7 @@ config PHY_EXYNOS_MIPI_VIDEO

config PHY_MVEBU_SATA
def_bool y
- depends on ARCH_KIRKWOOD || ARCH_DOVE
+ depends on ARCH_KIRKWOOD || MACH_DOVE
depends on OF
select GENERIC_PHY

--
1.8.5.3

2014-02-27 22:06:03

by Sebastian Hesselbarth

[permalink] [raw]
Subject: Re: [PATCH 2/4] ARM: dove: prepare new Dove DT Kconfig variable

On 02/27/2014 10:51 PM, Wim Van Sebroeck wrote:
> Acked-by me.

Thanks Wim,

as I forgot to explicitly ask for maintainer Acks: It would be great to
get Acked-by's from mmc, thermal, and asoc, too.

Sebastian

>> DT-enabled Dove will move over from ARCH_DOVE in mach-dove to MACH_DOVE in
>> mach-mvebu. As non-DT ARCH_DOVE will stay to rot for a while, add a new
>> DT-only MACH_DOVE to mmc, thermal, wdt, and asoc Kconfigs.
>>
>> Signed-off-by: Sebastian Hesselbarth <[email protected]>
>> ---
>> Cc: Chris Ball <[email protected]>
>> Cc: Zhang Rui <[email protected]>
>> Cc: Eduardo Valentin <[email protected]>
>> Cc: Wim Van Sebroeck <[email protected]>
>> Cc: Liam Girdwood <[email protected]>
>> Cc: Mark Brown <[email protected]>
>> Cc: Jason Cooper <[email protected]>
>> Cc: Andrew Lunn <[email protected]>
>> Cc: Gregory Clement <[email protected]>
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> Cc: [email protected]
>> ---
>> drivers/mmc/host/Kconfig | 2 +-
>> drivers/thermal/Kconfig | 2 +-
>> drivers/watchdog/Kconfig | 2 +-
>> sound/soc/kirkwood/Kconfig | 2 +-
>> 4 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
>> index 1384f67abe21..a69e48b582e5 100644
>> --- a/drivers/mmc/host/Kconfig
>> +++ b/drivers/mmc/host/Kconfig
>> @@ -168,7 +168,7 @@ config MMC_SDHCI_ESDHC_IMX
>>
>> config MMC_SDHCI_DOVE
>> tristate "SDHCI support on Marvell's Dove SoC"
>> - depends on ARCH_DOVE
>> + depends on ARCH_DOVE || MACH_DOVE
>> depends on MMC_SDHCI_PLTFM
>> select MMC_SDHCI_IO_ACCESSORS
>> help
>> diff --git a/drivers/thermal/Kconfig b/drivers/thermal/Kconfig
>> index 35c066489a19..07b5e56e9a97 100644
>> --- a/drivers/thermal/Kconfig
>> +++ b/drivers/thermal/Kconfig
>> @@ -150,7 +150,7 @@ config KIRKWOOD_THERMAL
>>
>> config DOVE_THERMAL
>> tristate "Temperature sensor on Marvell Dove SoCs"
>> - depends on ARCH_DOVE
>> + depends on ARCH_DOVE || MACH_DOVE
>> depends on OF
>> help
>> Support for the Dove thermal sensor driver in the Linux thermal
>> diff --git a/drivers/watchdog/Kconfig b/drivers/watchdog/Kconfig
>> index 79d25894343a..5659c62a175c 100644
>> --- a/drivers/watchdog/Kconfig
>> +++ b/drivers/watchdog/Kconfig
>> @@ -292,7 +292,7 @@ config DAVINCI_WATCHDOG
>>
>> config ORION_WATCHDOG
>> tristate "Orion watchdog"
>> - depends on ARCH_ORION5X || ARCH_KIRKWOOD || ARCH_DOVE
>> + depends on ARCH_ORION5X || ARCH_KIRKWOOD || ARCH_DOVE || MACH_DOVE
>> select WATCHDOG_CORE
>> help
>> Say Y here if to include support for the watchdog timer
>> diff --git a/sound/soc/kirkwood/Kconfig b/sound/soc/kirkwood/Kconfig
>> index 78ed4a42ad21..a1506d57e646 100644
>> --- a/sound/soc/kirkwood/Kconfig
>> +++ b/sound/soc/kirkwood/Kconfig
>> @@ -1,6 +1,6 @@
>> config SND_KIRKWOOD_SOC
>> tristate "SoC Audio for the Marvell Kirkwood and Dove chips"
>> - depends on ARCH_KIRKWOOD || ARCH_DOVE || COMPILE_TEST
>> + depends on ARCH_KIRKWOOD || ARCH_DOVE || MACH_DOVE || COMPILE_TEST
>> help
>> Say Y or M if you want to add support for codecs attached to
>> the Kirkwood I2S interface. You will also need to select the
>> --
>> 1.8.5.3
>>

2014-02-28 01:55:25

by Mark Brown

[permalink] [raw]
Subject: Re: [PATCH 2/4] ARM: dove: prepare new Dove DT Kconfig variable

On Thu, Feb 27, 2014 at 10:28:03PM +0100, Sebastian Hesselbarth wrote:
> DT-enabled Dove will move over from ARCH_DOVE in mach-dove to MACH_DOVE in
> mach-mvebu. As non-DT ARCH_DOVE will stay to rot for a while, add a new
> DT-only MACH_DOVE to mmc, thermal, wdt, and asoc Kconfigs.

I'd be much happier merging this sort of stuff individually through the
subsystems, we already have an annoying conflict here... Is there some
bisection problem with doing that?


Attachments:
(No filename) (463.00 B)
signature.asc (836.00 B)
Digital signature
Download all attachments

2014-02-28 16:35:25

by Jason Cooper

[permalink] [raw]
Subject: Re: [PATCH 2/4] ARM: dove: prepare new Dove DT Kconfig variable

On Fri, Feb 28, 2014 at 10:53:10AM +0900, Mark Brown wrote:
> On Thu, Feb 27, 2014 at 10:28:03PM +0100, Sebastian Hesselbarth wrote:
> > DT-enabled Dove will move over from ARCH_DOVE in mach-dove to MACH_DOVE in
> > mach-mvebu. As non-DT ARCH_DOVE will stay to rot for a while, add a new
> > DT-only MACH_DOVE to mmc, thermal, wdt, and asoc Kconfigs.
>
> I'd be much happier merging this sort of stuff individually through the
> subsystems, we already have an annoying conflict here... Is there some
> bisection problem with doing that?

shouldn't be. Since these changes || the old with the new config
symbols.

Sebastian, can you split this up into individual patches?

thx,

Jason.

2014-02-28 18:12:32

by Sebastian Hesselbarth

[permalink] [raw]
Subject: Re: [PATCH 2/4] ARM: dove: prepare new Dove DT Kconfig variable

On 02/28/2014 05:34 PM, Jason Cooper wrote:
> On Fri, Feb 28, 2014 at 10:53:10AM +0900, Mark Brown wrote:
>> On Thu, Feb 27, 2014 at 10:28:03PM +0100, Sebastian Hesselbarth wrote:
>>> DT-enabled Dove will move over from ARCH_DOVE in mach-dove to MACH_DOVE in
>>> mach-mvebu. As non-DT ARCH_DOVE will stay to rot for a while, add a new
>>> DT-only MACH_DOVE to mmc, thermal, wdt, and asoc Kconfigs.
>>
>> I'd be much happier merging this sort of stuff individually through the
>> subsystems, we already have an annoying conflict here... Is there some
>> bisection problem with doing that?
>
> shouldn't be. Since these changes || the old with the new config
> symbols.
>
> Sebastian, can you split this up into individual patches?

Sure, I'll send them in-reply-to this mail soon. I'll also add the SATA
PHY Kconfig in a bisectable way, i.e. add MACH_DOVE and for now ignore
that the driver is DT-only. We plan to remove mach-dove in one or two
cycles anyway, it will go with it then.

Sebastian