* [PATCH v3 1/7] ARM: mvebu: Rename DEBUG_LL to indicate UART index
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 2/7] ARM: mvebu: Add UART1 as DEBUG_LL possible target Maxime Ripard
` (6 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
The mvebu SoCs actually have more UARTs than just the one exposed in DEBUG_LL
yet.
In order to differentiate them, Add the index in the configuration options and
their help.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
---
arch/arm/Kconfig.debug | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index 5ddd4906f7a7..eb3991cf63ab 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -455,13 +455,13 @@ choice
Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
options based on your needs.
- config DEBUG_MVEBU_UART
- bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
+ config DEBUG_MVEBU_UART0
+ bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
depends on ARCH_MVEBU
select DEBUG_UART_8250
help
Say Y here if you want kernel low-level debugging support
- on MVEBU based platforms.
+ on MVEBU based platforms on UART0.
This option should be used with the old bootloaders
that left the internal registers mapped at
@@ -474,13 +474,13 @@ choice
when u-boot hands over to the kernel, the system
silently crashes, with no serial output at all.
- config DEBUG_MVEBU_UART_ALTERNATE
- bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
+ config DEBUG_MVEBU_UART0_ALTERNATE
+ bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
depends on ARCH_MVEBU
select DEBUG_UART_8250
help
Say Y here if you want kernel low-level debugging support
- on MVEBU based platforms.
+ on MVEBU based platforms on UART0.
This option should be used with the new bootloaders
that remap the internal registers at 0xf1000000.
@@ -1282,7 +1282,7 @@ config DEBUG_UART_PHYS
default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
- default 0xd0012000 if DEBUG_MVEBU_UART
+ default 0xd0012000 if DEBUG_MVEBU_UART0
default 0xc81004c0 if DEBUG_MESON_UARTAO
default 0xd4017000 if DEBUG_MMP_UART2
default 0xd4018000 if DEBUG_MMP_UART3
@@ -1296,7 +1296,7 @@ config DEBUG_UART_PHYS
default 0xe8008000 if DEBUG_R7S72100_SCIF2
default 0xf0000be0 if ARCH_EBSA110
default 0xf040ab00 if DEBUG_BRCMSTB_UART
- default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
+ default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
ARCH_ORION5X
default 0xf7fc9000 if DEBUG_BERLIN_UART
@@ -1377,7 +1377,7 @@ config DEBUG_UART_VIRT
default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
default 0xfeb31000 if DEBUG_KEYSTONE_UART1
default 0xfec02000 if DEBUG_SOCFPGA_UART
- default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
+ default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
default 0xfec90000 if DEBUG_RK32_UART2
default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 2/7] ARM: mvebu: Add UART1 as DEBUG_LL possible target
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 1/7] ARM: mvebu: Rename DEBUG_LL to indicate UART index Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 3/7] ARM: mvebu: a38x: Fix node names Maxime Ripard
` (5 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
Some mvebu boards have the UART1 more easily accessible than the other UARTs
found on the system.
Add a debug_ll option for this case.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Jason Cooper <jason@lakedaemon.net>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
---
arch/arm/Kconfig.debug | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index eb3991cf63ab..7bd1bbccc43c 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -489,6 +489,21 @@ choice
when u-boot hands over to the kernel, the system
silently crashes, with no serial output at all.
+ config DEBUG_MVEBU_UART1_ALTERNATE
+ bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
+ depends on ARCH_MVEBU
+ select DEBUG_UART_8250
+ help
+ Say Y here if you want kernel low-level debugging support
+ on MVEBU based platforms on UART1.
+
+ This option should be used with the new bootloaders
+ that remap the internal registers at 0xf1000000.
+
+ If the wrong DEBUG_MVEBU_UART* option is selected,
+ when u-boot hands over to the kernel, the system
+ silently crashes, with no serial output at all.
+
config DEBUG_VF_UART
bool "Vybrid UART"
depends on SOC_VF610
@@ -1297,6 +1312,7 @@ config DEBUG_UART_PHYS
default 0xf0000be0 if ARCH_EBSA110
default 0xf040ab00 if DEBUG_BRCMSTB_UART
default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
+ default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
ARCH_ORION5X
default 0xf7fc9000 if DEBUG_BERLIN_UART
@@ -1378,6 +1394,7 @@ config DEBUG_UART_VIRT
default 0xfeb31000 if DEBUG_KEYSTONE_UART1
default 0xfec02000 if DEBUG_SOCFPGA_UART
default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
+ default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
default 0xfec90000 if DEBUG_RK32_UART2
default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 3/7] ARM: mvebu: a38x: Fix node names
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 1/7] ARM: mvebu: Rename DEBUG_LL to indicate UART index Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 2/7] ARM: mvebu: Add UART1 as DEBUG_LL possible target Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 4/7] pinctrl: mvebu: a38x: Add UART1 muxing options Maxime Ripard
` (4 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
Some nodes in the DTs have a reg property but no unit name in their node name.
This contradicts the way the ePAPR defines the node names. Fix this.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
---
arch/arm/boot/dts/armada-380.dtsi | 2 +-
arch/arm/boot/dts/armada-385-db.dts | 2 +-
arch/arm/boot/dts/armada-385-rd.dts | 2 +-
arch/arm/boot/dts/armada-385.dtsi | 2 +-
arch/arm/boot/dts/armada-38x.dtsi | 4 ++--
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/arm/boot/dts/armada-380.dtsi b/arch/arm/boot/dts/armada-380.dtsi
index 4173a8ab34e7..13400ce88c54 100644
--- a/arch/arm/boot/dts/armada-380.dtsi
+++ b/arch/arm/boot/dts/armada-380.dtsi
@@ -32,7 +32,7 @@
soc {
internal-regs {
- pinctrl {
+ pinctrl at 18000 {
compatible = "marvell,mv88f6810-pinctrl";
reg = <0x18000 0x20>;
};
diff --git a/arch/arm/boot/dts/armada-385-db.dts b/arch/arm/boot/dts/armada-385-db.dts
index 2aaa9d2ac284..212605ccc7b6 100644
--- a/arch/arm/boot/dts/armada-385-db.dts
+++ b/arch/arm/boot/dts/armada-385-db.dts
@@ -74,7 +74,7 @@
phy-mode = "rgmii-id";
};
- mdio {
+ mdio at 72004 {
phy0: ethernet-phy at 0 {
reg = <0>;
};
diff --git a/arch/arm/boot/dts/armada-385-rd.dts b/arch/arm/boot/dts/armada-385-rd.dts
index aaca2861dc87..74a3bfe6efd7 100644
--- a/arch/arm/boot/dts/armada-385-rd.dts
+++ b/arch/arm/boot/dts/armada-385-rd.dts
@@ -67,7 +67,7 @@
};
- mdio {
+ mdio at 72004 {
phy0: ethernet-phy at 0 {
reg = <0>;
};
diff --git a/arch/arm/boot/dts/armada-385.dtsi b/arch/arm/boot/dts/armada-385.dtsi
index 6283d7912f71..5249a4d3c207 100644
--- a/arch/arm/boot/dts/armada-385.dtsi
+++ b/arch/arm/boot/dts/armada-385.dtsi
@@ -37,7 +37,7 @@
soc {
internal-regs {
- pinctrl {
+ pinctrl at 18000 {
compatible = "marvell,mv88f6820-pinctrl";
reg = <0x18000 0x20>;
};
diff --git a/arch/arm/boot/dts/armada-38x.dtsi b/arch/arm/boot/dts/armada-38x.dtsi
index 74391dace9e7..ada1f206028b 100644
--- a/arch/arm/boot/dts/armada-38x.dtsi
+++ b/arch/arm/boot/dts/armada-38x.dtsi
@@ -193,7 +193,7 @@
status = "disabled";
};
- pinctrl {
+ pinctrl at 18000 {
compatible = "marvell,mv88f6820-pinctrl";
reg = <0x18000 0x20>;
};
@@ -373,7 +373,7 @@
status = "disabled";
};
- mdio {
+ mdio at 72004 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "marvell,orion-mdio";
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 4/7] pinctrl: mvebu: a38x: Add UART1 muxing options
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
` (2 preceding siblings ...)
2015-01-08 14:39 ` [PATCH v3 3/7] ARM: mvebu: a38x: Fix node names Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:48 ` Andrew Lunn
2015-01-08 14:39 ` [PATCH v3 5/7] ARM: mvebu: A38x: Remove redundant pinctrl informations Maxime Ripard
` (3 subsequent siblings)
7 siblings, 1 reply; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
The MPP19 and MMP20 pins also have the ability to be muxed to the uart1
function.
Add this case to the pinctrl driver.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Jason Cooper <jason@lakedaemon.net>
---
drivers/pinctrl/mvebu/pinctrl-armada-38x.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/pinctrl/mvebu/pinctrl-armada-38x.c b/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
index 224c6cff6aa2..7302f66f4f19 100644
--- a/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
+++ b/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
@@ -145,14 +145,16 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
MPP_VAR_FUNCTION(2, "ptp", "event_req", V_88F6810_PLUS),
MPP_VAR_FUNCTION(3, "pcie0", "clkreq", V_88F6810_PLUS),
MPP_VAR_FUNCTION(4, "sata1", "prsnt", V_88F6810_PLUS),
- MPP_VAR_FUNCTION(5, "ua0", "cts", V_88F6810_PLUS)),
+ MPP_VAR_FUNCTION(5, "ua0", "cts", V_88F6810_PLUS),
+ MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)),
MPP_MODE(20,
MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
MPP_VAR_FUNCTION(1, "ge0", "txclk", V_88F6810_PLUS),
MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS),
MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS),
MPP_VAR_FUNCTION(4, "sata0", "prsnt", V_88F6810_PLUS),
- MPP_VAR_FUNCTION(5, "ua0", "rts", V_88F6810_PLUS)),
+ MPP_VAR_FUNCTION(5, "ua0", "rts", V_88F6810_PLUS),
+ MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)),
MPP_MODE(21,
MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
MPP_VAR_FUNCTION(1, "spi0", "cs1", V_88F6810_PLUS),
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 4/7] pinctrl: mvebu: a38x: Add UART1 muxing options
2015-01-08 14:39 ` [PATCH v3 4/7] pinctrl: mvebu: a38x: Add UART1 muxing options Maxime Ripard
@ 2015-01-08 14:48 ` Andrew Lunn
0 siblings, 0 replies; 10+ messages in thread
From: Andrew Lunn @ 2015-01-08 14:48 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, Jan 08, 2015 at 03:39:40PM +0100, Maxime Ripard wrote:
> The MPP19 and MMP20 pins also have the ability to be muxed to the uart1
> function.
>
> Add this case to the pinctrl driver.
>
> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> Acked-by: Jason Cooper <jason@lakedaemon.net>
> ---
> drivers/pinctrl/mvebu/pinctrl-armada-38x.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/pinctrl/mvebu/pinctrl-armada-38x.c b/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
> index 224c6cff6aa2..7302f66f4f19 100644
> --- a/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
> +++ b/drivers/pinctrl/mvebu/pinctrl-armada-38x.c
> @@ -145,14 +145,16 @@ static struct mvebu_mpp_mode armada_38x_mpp_modes[] = {
> MPP_VAR_FUNCTION(2, "ptp", "event_req", V_88F6810_PLUS),
> MPP_VAR_FUNCTION(3, "pcie0", "clkreq", V_88F6810_PLUS),
> MPP_VAR_FUNCTION(4, "sata1", "prsnt", V_88F6810_PLUS),
> - MPP_VAR_FUNCTION(5, "ua0", "cts", V_88F6810_PLUS)),
> + MPP_VAR_FUNCTION(5, "ua0", "cts", V_88F6810_PLUS),
> + MPP_VAR_FUNCTION(6, "ua1", "rxd", V_88F6810_PLUS)),
> MPP_MODE(20,
> MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
> MPP_VAR_FUNCTION(1, "ge0", "txclk", V_88F6810_PLUS),
> MPP_VAR_FUNCTION(2, "ptp", "clk", V_88F6810_PLUS),
> MPP_VAR_FUNCTION(3, "pcie1", "rstout", V_88F6820_PLUS),
> MPP_VAR_FUNCTION(4, "sata0", "prsnt", V_88F6810_PLUS),
> - MPP_VAR_FUNCTION(5, "ua0", "rts", V_88F6810_PLUS)),
> + MPP_VAR_FUNCTION(5, "ua0", "rts", V_88F6810_PLUS),
> + MPP_VAR_FUNCTION(6, "ua1", "txd", V_88F6810_PLUS)),
> MPP_MODE(21,
> MPP_VAR_FUNCTION(0, "gpio", NULL, V_88F6810_PLUS),
> MPP_VAR_FUNCTION(1, "spi0", "cs1", V_88F6810_PLUS),
> --
> 2.2.1
>
Hi Linus
I can take this though mvebu->arm-soc if you want? Or you can take
it. Please let me know your preference.
Andrew
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3 5/7] ARM: mvebu: A38x: Remove redundant pinctrl informations
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
` (3 preceding siblings ...)
2015-01-08 14:39 ` [PATCH v3 4/7] pinctrl: mvebu: a38x: Add UART1 muxing options Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 6/7] ARM: mvebu: Add a number of pinctrl functions Maxime Ripard
` (2 subsequent siblings)
7 siblings, 0 replies; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
The compatible set in the armada-38x DTSI is always overridden, and the reg
defined in there is duplicated in the armada-380 and armada-385 DTSIs.
Remove these useless items.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
---
arch/arm/boot/dts/armada-380.dtsi | 1 -
arch/arm/boot/dts/armada-385.dtsi | 1 -
arch/arm/boot/dts/armada-38x.dtsi | 1 -
3 files changed, 3 deletions(-)
diff --git a/arch/arm/boot/dts/armada-380.dtsi b/arch/arm/boot/dts/armada-380.dtsi
index 13400ce88c54..7e509d2d74d0 100644
--- a/arch/arm/boot/dts/armada-380.dtsi
+++ b/arch/arm/boot/dts/armada-380.dtsi
@@ -34,7 +34,6 @@
internal-regs {
pinctrl at 18000 {
compatible = "marvell,mv88f6810-pinctrl";
- reg = <0x18000 0x20>;
};
};
diff --git a/arch/arm/boot/dts/armada-385.dtsi b/arch/arm/boot/dts/armada-385.dtsi
index 5249a4d3c207..a54a252ddb4c 100644
--- a/arch/arm/boot/dts/armada-385.dtsi
+++ b/arch/arm/boot/dts/armada-385.dtsi
@@ -39,7 +39,6 @@
internal-regs {
pinctrl at 18000 {
compatible = "marvell,mv88f6820-pinctrl";
- reg = <0x18000 0x20>;
};
};
diff --git a/arch/arm/boot/dts/armada-38x.dtsi b/arch/arm/boot/dts/armada-38x.dtsi
index ada1f206028b..40200084c6c8 100644
--- a/arch/arm/boot/dts/armada-38x.dtsi
+++ b/arch/arm/boot/dts/armada-38x.dtsi
@@ -194,7 +194,6 @@
};
pinctrl at 18000 {
- compatible = "marvell,mv88f6820-pinctrl";
reg = <0x18000 0x20>;
};
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 6/7] ARM: mvebu: Add a number of pinctrl functions
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
` (4 preceding siblings ...)
2015-01-08 14:39 ` [PATCH v3 5/7] ARM: mvebu: A38x: Remove redundant pinctrl informations Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:39 ` [PATCH v3 7/7] ARM: mvebu: Add Armada 385 Access Point Development Board support Maxime Ripard
2015-01-08 14:56 ` [PATCH v3 0/7] Gregory CLEMENT
7 siblings, 0 replies; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
Some pinctrl functions can be shared with all DTS out there, since they are
generic, SoC-wide muxing options. Add a number of these to the DTSI to avoid
duplication.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Acked-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
---
arch/arm/boot/dts/armada-38x.dtsi | 39 +++++++++++++++++++++++++++++++++++++++
1 file changed, 39 insertions(+)
diff --git a/arch/arm/boot/dts/armada-38x.dtsi b/arch/arm/boot/dts/armada-38x.dtsi
index 40200084c6c8..98885c58be29 100644
--- a/arch/arm/boot/dts/armada-38x.dtsi
+++ b/arch/arm/boot/dts/armada-38x.dtsi
@@ -195,6 +195,45 @@
pinctrl at 18000 {
reg = <0x18000 0x20>;
+
+ ge0_rgmii_pins: ge-rgmii-pins-0 {
+ marvell,pins = "mpp6", "mpp7", "mpp8",
+ "mpp9", "mpp10", "mpp11",
+ "mpp12", "mpp13", "mpp14",
+ "mpp15", "mpp16", "mpp17";
+ marvell,function = "ge0";
+ };
+
+ i2c0_pins: i2c-pins-0 {
+ marvell,pins = "mpp2", "mpp3";
+ marvell,function = "i2c0";
+ };
+
+ mdio_pins: mdio-pins {
+ marvell,pins = "mpp4", "mpp5";
+ marvell,function = "ge";
+ };
+
+ ref_clk0_pins: ref-clk-pins-0 {
+ marvell,pins = "mpp45";
+ marvell,function = "ref";
+ };
+
+ spi1_pins: spi-pins-1 {
+ marvell,pins = "mpp56", "mpp57", "mpp58",
+ "mpp59";
+ marvell,function = "spi1";
+ };
+
+ uart0_pins: uart-pins-0 {
+ marvell,pins = "mpp0", "mpp1";
+ marvell,function = "ua0";
+ };
+
+ uart1_pins: uart-pins-1 {
+ marvell,pins = "mpp19", "mpp20";
+ marvell,function = "ua1";
+ };
};
gpio0: gpio at 18100 {
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 7/7] ARM: mvebu: Add Armada 385 Access Point Development Board support
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
` (5 preceding siblings ...)
2015-01-08 14:39 ` [PATCH v3 6/7] ARM: mvebu: Add a number of pinctrl functions Maxime Ripard
@ 2015-01-08 14:39 ` Maxime Ripard
2015-01-08 14:56 ` [PATCH v3 0/7] Gregory CLEMENT
7 siblings, 0 replies; 10+ messages in thread
From: Maxime Ripard @ 2015-01-08 14:39 UTC (permalink / raw)
To: linux-arm-kernel
The A385-AP is a board produced by Marvell that holds 3 mPCIe slot, a 16MB
SPI-NOR, 3 Gigabit Ethernet ports, USB3 and NAND flash storage.
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
---
arch/arm/boot/dts/Makefile | 1 +
arch/arm/boot/dts/armada-385-db-ap.dts | 150 +++++++++++++++++++++++++++++++++
2 files changed, 151 insertions(+)
create mode 100644 arch/arm/boot/dts/armada-385-db-ap.dts
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 91bd5bd62857..ce7bc221fae7 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -535,6 +535,7 @@ dtb-$(CONFIG_MACH_ARMADA_375) += \
armada-375-db.dtb
dtb-$(CONFIG_MACH_ARMADA_38X) += \
armada-385-db.dtb \
+ armada-385-db-ap.dtb \
armada-385-rd.dtb
dtb-$(CONFIG_MACH_ARMADA_XP) += \
armada-xp-axpwifiap.dtb \
diff --git a/arch/arm/boot/dts/armada-385-db-ap.dts b/arch/arm/boot/dts/armada-385-db-ap.dts
new file mode 100644
index 000000000000..3a51531eb37b
--- /dev/null
+++ b/arch/arm/boot/dts/armada-385-db-ap.dts
@@ -0,0 +1,150 @@
+/*
+ * Device Tree file for Marvell Armada 385 Access Point Development board
+ * (DB-88F6820-AP)
+ *
+ * Copyright (C) 2014 Marvell
+ *
+ * Nadav Haklai <nadavh@marvell.com>
+ *
+ * This file is licensed under the terms of the GNU General Public
+ * License version 2. This program is licensed "as is" without any
+ * warranty of any kind, whether express or implied.
+ */
+
+/dts-v1/;
+#include "armada-385.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+ model = "Marvell Armada 385 Access Point Development Board";
+ compatible = "marvell,a385-db-ap", "marvell,armada385", "marvell,armada38x";
+
+ chosen {
+ bootargs = "console=ttyS0,115200";
+ stdout-path = &uart1;
+ };
+
+ memory {
+ device_type = "memory";
+ reg = <0x00000000 0x80000000>; /* 2GB */
+ };
+
+ soc {
+ ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000
+ MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000>;
+
+ internal-regs {
+ spi1: spi at 10680 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi1_pins>;
+ status = "okay";
+
+ spi-flash at 0 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "st,m25p128";
+ reg = <0>; /* Chip select 0 */
+ spi-max-frequency = <54000000>;
+ };
+ };
+
+ i2c0: i2c at 11000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins>;
+ status = "okay";
+
+ /*
+ * This bus is wired to two EEPROM
+ * sockets, one of which holding the
+ * board ID used by the bootloader.
+ * Erasing this EEPROM's content will
+ * brick the board.
+ * Use this bus with caution.
+ */
+ };
+
+ mdio at 72004 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&mdio_pins>;
+
+ phy0: ethernet-phy at 1 {
+ reg = <1>;
+ };
+
+ phy1: ethernet-phy at 4 {
+ reg = <4>;
+ };
+
+ phy2: ethernet-phy at 6 {
+ reg = <6>;
+ };
+ };
+
+ /* UART0 is exposed through the JP8 connector */
+ uart0: serial at 12000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pins>;
+ status = "okay";
+ };
+
+ /*
+ * UART1 is exposed through a FTDI chip
+ * wired to the mini-USB connector
+ */
+ uart1: serial at 12100 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart1_pins>;
+ status = "okay";
+ };
+
+ ethernet at 30000 {
+ status = "okay";
+ phy = <&phy2>;
+ phy-mode = "sgmii";
+ };
+
+ ethernet at 34000 {
+ status = "okay";
+ phy = <&phy1>;
+ phy-mode = "sgmii";
+ };
+
+ ethernet at 70000 {
+ pinctrl-names = "default";
+
+ /*
+ * The Reference Clock 0 is used to
+ * provide a clock to the PHY
+ */
+ pinctrl-0 = <&ge0_rgmii_pins>, <&ref_clk0_pins>;
+ status = "okay";
+ phy = <&phy0>;
+ phy-mode = "rgmii-id";
+ };
+ };
+
+ pcie-controller {
+ status = "okay";
+
+ /*
+ * The three PCIe units are accessible through
+ * standard mini-PCIe slots on the board.
+ */
+ pcie at 1,0 {
+ /* Port 0, Lane 0 */
+ status = "okay";
+ };
+
+ pcie at 2,0 {
+ /* Port 1, Lane 0 */
+ status = "okay";
+ };
+
+ pcie at 3,0 {
+ /* Port 2, Lane 0 */
+ status = "okay";
+ };
+ };
+ };
+};
--
2.2.1
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH v3 0/7]
2015-01-08 14:39 [PATCH v3 0/7] Maxime Ripard
` (6 preceding siblings ...)
2015-01-08 14:39 ` [PATCH v3 7/7] ARM: mvebu: Add Armada 385 Access Point Development Board support Maxime Ripard
@ 2015-01-08 14:56 ` Gregory CLEMENT
7 siblings, 0 replies; 10+ messages in thread
From: Gregory CLEMENT @ 2015-01-08 14:56 UTC (permalink / raw)
To: linux-arm-kernel
Hi Maxime, Andrew,
On 08/01/2015 15:39, Maxime Ripard wrote:
> Hi everyone,
>
> This set of patches add the support for the Armada 385 AP board.
>
> It also adds a few clean ups here and there, a few missing pin
> functions needed for the board, etc.
Maxime,
You forgot to write a topic for this email :)
Andrew,
If you want, in order to ease your job, I can send a series
including the patches from Maxime and my patches for this 2 new
Armada 38x boards: AP and GP.
But before this I really would like to have the answer from Nadav
to switch to the dual license GPL/X11.
Thanks,
Gregory
>
> Maxime
>
> Changes from v2:
> - Removed the i2c1 bus that is not used
> - Added comments for the i2c0 and the UARTs
> - Removed the i2c clk-frequency property
> - Fixed the SPI-NOR maximum frequency
> - Fixed the phy nodes unit addresses
> - Add the /chosen/stdout-path property
> - Changed the filename to match the board compatible
>
> Changes from v1:
> - Removed USB3 support. This required some additional patches for
> the phy and USB drivers that are not really related to this
> serie. This will be submitted as a separate one.
> - Removed earlyprintk from the default bootargs
> - Removed two unneeded ranges
> - Changed the phy pins node name to mdio
> - Moved most of the pinctrl nodes to the DTSI
> - Added a comment to mention why the phy reference clock is needed.
> - Rebased on top of 3.19-rc1
>
> Maxime Ripard (7):
> ARM: mvebu: Rename DEBUG_LL to indicate UART index
> ARM: mvebu: Add UART1 as DEBUG_LL possible target
> ARM: mvebu: a38x: Fix node names
> pinctrl: mvebu: a38x: Add UART1 muxing options
> ARM: mvebu: A38x: Remove redundant pinctrl informations
> ARM: mvebu: Add a number of pinctrl functions
> ARM: mvebu: Add Armada 385 Access Point Development Board support
>
> arch/arm/Kconfig.debug | 35 +++++--
> arch/arm/boot/dts/Makefile | 1 +
> arch/arm/boot/dts/armada-380.dtsi | 3 +-
> arch/arm/boot/dts/armada-385-db-ap.dts | 150 +++++++++++++++++++++++++++++
> arch/arm/boot/dts/armada-385-db.dts | 2 +-
> arch/arm/boot/dts/armada-385-rd.dts | 2 +-
> arch/arm/boot/dts/armada-385.dtsi | 3 +-
> arch/arm/boot/dts/armada-38x.dtsi | 44 ++++++++-
> drivers/pinctrl/mvebu/pinctrl-armada-38x.c | 6 +-
> 9 files changed, 226 insertions(+), 20 deletions(-)
> create mode 100644 arch/arm/boot/dts/armada-385-db-ap.dts
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
^ permalink raw reply [flat|nested] 10+ messages in thread