* [PATCH 3/9] ARM: dts: berlin: add a required reset property in the chip controller node
2014-06-05 15:48 [PATCH 0/9] ARM: Berlin: USB support Antoine Ténart
@ 2014-06-05 15:48 ` Antoine Ténart
[not found] ` <1401983326-19205-4-git-send-email-antoine.tenart-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
2014-06-05 15:48 ` [PATCH 5/9] Documentation: bindings: add doc for the Berlin USB PHY Antoine Ténart
` (4 subsequent siblings)
5 siblings, 1 reply; 11+ messages in thread
From: Antoine Ténart @ 2014-06-05 15:48 UTC (permalink / raw)
To: sebastian.hesselbarth, p.zabel
Cc: thomas.petazzoni, zmxu, devicetree, Antoine Ténart,
linux-kernel, alexandre.belloni, jszhang, linux-arm-kernel
The chip controller node now also describes the Marvell Berlin reset
controller. Add the required 'reset-cells' property.
Signed-off-by: Antoine Ténart <antoine.tenart@free-electrons.com>
---
arch/arm/boot/dts/berlin2.dtsi | 1 +
arch/arm/boot/dts/berlin2cd.dtsi | 1 +
arch/arm/boot/dts/berlin2q.dtsi | 1 +
3 files changed, 3 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2.dtsi b/arch/arm/boot/dts/berlin2.dtsi
index 2477dac4d643..379ff1a38377 100644
--- a/arch/arm/boot/dts/berlin2.dtsi
+++ b/arch/arm/boot/dts/berlin2.dtsi
@@ -243,6 +243,7 @@
chip: chip-control@ea0000 {
compatible = "marvell,berlin2-chip-ctrl";
#clock-cells = <1>;
+ #reset-cells = <1>;
reg = <0xea0000 0x400>;
clocks = <&refclk>;
clock-names = "refclk";
diff --git a/arch/arm/boot/dts/berlin2cd.dtsi b/arch/arm/boot/dts/berlin2cd.dtsi
index cc1df65da504..50d6518b5744 100644
--- a/arch/arm/boot/dts/berlin2cd.dtsi
+++ b/arch/arm/boot/dts/berlin2cd.dtsi
@@ -231,6 +231,7 @@
chip: chip-control@ea0000 {
compatible = "marvell,berlin2cd-chip-ctrl";
#clock-cells = <1>;
+ #reset-cells = <1>;
reg = <0xea0000 0x400>;
clocks = <&refclk>;
clock-names = "refclk";
diff --git a/arch/arm/boot/dts/berlin2q.dtsi b/arch/arm/boot/dts/berlin2q.dtsi
index 81712f5954ef..b74e5ec66354 100644
--- a/arch/arm/boot/dts/berlin2q.dtsi
+++ b/arch/arm/boot/dts/berlin2q.dtsi
@@ -274,6 +274,7 @@
chip: chip-control@ea0000 {
compatible = "marvell,berlin2q-chip-ctrl";
#clock-cells = <1>;
+ #reset-cells = <1>;
reg = <0xea0000 0x400>, <0xdd0170 0x10>;
clocks = <&refclk>;
clock-names = "refclk";
--
1.9.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 5/9] Documentation: bindings: add doc for the Berlin USB PHY
2014-06-05 15:48 [PATCH 0/9] ARM: Berlin: USB support Antoine Ténart
2014-06-05 15:48 ` [PATCH 3/9] ARM: dts: berlin: add a required reset property in the chip controller node Antoine Ténart
@ 2014-06-05 15:48 ` Antoine Ténart
2014-06-05 15:48 ` [PATCH 7/9] Documentation: bindings: add doc for the Berlin ChipIdea USB driver Antoine Ténart
` (3 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Antoine Ténart @ 2014-06-05 15:48 UTC (permalink / raw)
To: sebastian.hesselbarth, balbi
Cc: thomas.petazzoni, zmxu, devicetree, Antoine Ténart,
linux-usb, linux-kernel, alexandre.belloni, jszhang,
linux-arm-kernel
Document the bindings of the Marvell Berlin USB PHY driver.
Signed-off-by: Antoine Ténart <antoine.tenart@free-electrons.com>
---
.../devicetree/bindings/usb/berlin-usbphy.txt | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/berlin-usbphy.txt
diff --git a/Documentation/devicetree/bindings/usb/berlin-usbphy.txt b/Documentation/devicetree/bindings/usb/berlin-usbphy.txt
new file mode 100644
index 000000000000..d97eb1f9d53f
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/berlin-usbphy.txt
@@ -0,0 +1,18 @@
+* Marvell Berlin USB PHY
+
+Required properties:
+- compatible: should be "marvell,berlin-usbphy"
+- reg: base address and length of the registers
+- #phys-cells: should be 0
+- reset: reference to the reset controller
+- power-gpio: reference the GPIO pin to power the PHY
+
+Example:
+
+ usbphy@f774000 {
+ compatible = "marvell,berlin-usbphy";
+ reg = <0xf774000 0x128>;
+ #phy-cells = <0>;
+ resets = <&chip 14>;
+ power-gpio = <&portb 8 GPIO_ACTIVE_HIGH>;
+ };
--
1.9.1
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 7/9] Documentation: bindings: add doc for the Berlin ChipIdea USB driver
2014-06-05 15:48 [PATCH 0/9] ARM: Berlin: USB support Antoine Ténart
2014-06-05 15:48 ` [PATCH 3/9] ARM: dts: berlin: add a required reset property in the chip controller node Antoine Ténart
2014-06-05 15:48 ` [PATCH 5/9] Documentation: bindings: add doc for the Berlin USB PHY Antoine Ténart
@ 2014-06-05 15:48 ` Antoine Ténart
2014-06-05 15:48 ` [PATCH 8/9] ARM: dts: berlin: add BG2Q nodes for USB support Antoine Ténart
` (2 subsequent siblings)
5 siblings, 0 replies; 11+ messages in thread
From: Antoine Ténart @ 2014-06-05 15:48 UTC (permalink / raw)
To: sebastian.hesselbarth, Peter.Chen
Cc: Antoine Ténart, alexandre.belloni, thomas.petazzoni, zmxu,
jszhang, linux-arm-kernel, linux-usb, devicetree, linux-kernel
Document the Marvell Berlin USB driver bindings.
Signed-off-by: Antoine Ténart <antoine.tenart@free-electrons.com>
---
.../devicetree/bindings/usb/ci-hdrc-berlin.txt | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/ci-hdrc-berlin.txt
diff --git a/Documentation/devicetree/bindings/usb/ci-hdrc-berlin.txt b/Documentation/devicetree/bindings/usb/ci-hdrc-berlin.txt
new file mode 100644
index 000000000000..a3fc9054b830
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/ci-hdrc-berlin.txt
@@ -0,0 +1,18 @@
+* Marvell Berlin usb controllers
+
+Required properties:
+- compatible: should be "marvell,berlin-usb"
+- reg: base address and length of the registers
+- interrupts: interrupt for the USB controller
+- clocks: reference to the USB clock
+- marvell,usbphy: reference to the USB PHY
+
+Example:
+
+ usb@f7ed0000 {
+ compatible = "marvell,berlin-usb";
+ reg = <0xf7ed0000 0x10000>;
+ interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&chip CLKID_USB0>;
+ marvell,usbphy = <&usb_phy0>;
+ };
--
1.9.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 8/9] ARM: dts: berlin: add BG2Q nodes for USB support
2014-06-05 15:48 [PATCH 0/9] ARM: Berlin: USB support Antoine Ténart
` (2 preceding siblings ...)
2014-06-05 15:48 ` [PATCH 7/9] Documentation: bindings: add doc for the Berlin ChipIdea USB driver Antoine Ténart
@ 2014-06-05 15:48 ` Antoine Ténart
2014-06-05 15:48 ` [PATCH 9/9] ARM: dts: Berlin: enable USB on the BG2Q DMP Antoine Ténart
[not found] ` <1401983326-19205-1-git-send-email-antoine.tenart-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
5 siblings, 0 replies; 11+ messages in thread
From: Antoine Ténart @ 2014-06-05 15:48 UTC (permalink / raw)
To: sebastian.hesselbarth, Peter.Chen, balbi
Cc: Antoine Ténart, alexandre.belloni, thomas.petazzoni, zmxu,
jszhang, linux-arm-kernel, linux-usb, devicetree, linux-kernel
Adds nodes describing the Marvell Berlin BG2Q USB PHY and USB. The BG2Q
SoC has 3 USB host controller, compatible with ChipIdea.
Signed-off-by: Antoine Ténart <antoine.tenart@free-electrons.com>
---
arch/arm/boot/dts/berlin2q.dtsi | 51 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2q.dtsi b/arch/arm/boot/dts/berlin2q.dtsi
index b74e5ec66354..a6902ea5580c 100644
--- a/arch/arm/boot/dts/berlin2q.dtsi
+++ b/arch/arm/boot/dts/berlin2q.dtsi
@@ -87,6 +87,39 @@
#interrupt-cells = <3>;
};
+ usb_phy2: usbphy@a2f400 {
+ compatible = "marvell,berlin-usbphy";
+ reg = <0xa2f400 0x128>;
+ #phy-cells = <0>;
+ resets = <&chip 14>;
+ status = "disabled";
+ };
+
+ usb2: usb@a30000 {
+ compatible = "marvell,berlin-usb";
+ reg = <0xa30000 0x10000>;
+ interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&chip CLKID_USB2>;
+ marvell,usbphy = <&usb_phy2>;
+ status = "disabled";
+ };
+
+ usb_phy0: usbphy@b74000 {
+ compatible = "marvell,berlin-usbphy";
+ reg = <0xb74000 0x128>;
+ #phy-cells = <0>;
+ resets = <&chip 12>;
+ status = "disabled";
+ };
+
+ usb_phy1: usbphy@b78000 {
+ compatible = "marvell,berlin-usbphy";
+ reg = <0xb78000 0x128>;
+ #phy-cells = <0>;
+ resets = <&chip 13>;
+ status = "disabled";
+ };
+
apb@e80000 {
compatible = "simple-bus";
#address-cells = <1>;
@@ -280,6 +313,24 @@
clock-names = "refclk";
};
+ usb0: usb@ed0000 {
+ compatible = "marvell,berlin-usb";
+ reg = <0xed0000 0x10000>;
+ interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&chip CLKID_USB0>;
+ marvell,usbphy = <&usb_phy0>;
+ status = "disabled";
+ };
+
+ usb1: usb@ee0000 {
+ compatible = "marvell,berlin-usb";
+ reg = <0xee0000 0x10000>;
+ interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&chip CLKID_USB1>;
+ marvell,usbphy = <&usb_phy1>;
+ status = "disabled";
+ };
+
apb@fc0000 {
compatible = "simple-bus";
#address-cells = <1>;
--
1.9.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 9/9] ARM: dts: Berlin: enable USB on the BG2Q DMP
2014-06-05 15:48 [PATCH 0/9] ARM: Berlin: USB support Antoine Ténart
` (3 preceding siblings ...)
2014-06-05 15:48 ` [PATCH 8/9] ARM: dts: berlin: add BG2Q nodes for USB support Antoine Ténart
@ 2014-06-05 15:48 ` Antoine Ténart
[not found] ` <1401983326-19205-1-git-send-email-antoine.tenart-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
5 siblings, 0 replies; 11+ messages in thread
From: Antoine Ténart @ 2014-06-05 15:48 UTC (permalink / raw)
To: sebastian.hesselbarth, Peter.Chen, balbi
Cc: Antoine Ténart, alexandre.belloni, thomas.petazzoni, zmxu,
jszhang, linux-arm-kernel, linux-usb, devicetree, linux-kernel
Enable the 2 available USB PHY and USB nodes on the Marvell Berlin BG2Q
DMP.
Signed-off-by: Antoine Ténart <antoine.tenart@free-electrons.com>
---
arch/arm/boot/dts/berlin2q-marvell-dmp.dts | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/arch/arm/boot/dts/berlin2q-marvell-dmp.dts b/arch/arm/boot/dts/berlin2q-marvell-dmp.dts
index 2da9c41e29d8..4195874b9bed 100644
--- a/arch/arm/boot/dts/berlin2q-marvell-dmp.dts
+++ b/arch/arm/boot/dts/berlin2q-marvell-dmp.dts
@@ -7,6 +7,8 @@
*/
/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
#include "berlin2q.dtsi"
/ {
@@ -26,3 +28,21 @@
&uart0 {
status = "okay";
};
+
+&usb_phy0 {
+ power-gpio = <&portb 8 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+};
+
+&usb_phy2 {
+ power-gpio = <&portb 12 GPIO_ACTIVE_HIGH>;
+ status = "okay";
+};
+
+&usb0 {
+ status = "okay";
+};
+
+&usb2 {
+ status = "okay";
+};
--
1.9.1
^ permalink raw reply related [flat|nested] 11+ messages in thread
[parent not found: <1401983326-19205-1-git-send-email-antoine.tenart-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>]
* Re: [PATCH 0/9] ARM: Berlin: USB support
[not found] ` <1401983326-19205-1-git-send-email-antoine.tenart-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
@ 2014-06-09 4:30 ` Peter Chen
[not found] ` <20140609043019.GA32255-KgLukfWpBlCctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
0 siblings, 1 reply; 11+ messages in thread
From: Peter Chen @ 2014-06-09 4:30 UTC (permalink / raw)
To: Antoine Ténart
Cc: sebastian.hesselbarth-Re5JQEeQqe8AvxtiuMwx3w, balbi-l0cyMroinI0,
p.zabel-bIcnvbaLZ9MEGnE8C9+IrQ,
alexandre.belloni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8,
thomas.petazzoni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8,
zmxu-eYqpPyKDWXRBDgjK7y7TUQ, jszhang-eYqpPyKDWXRBDgjK7y7TUQ,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r,
linux-usb-u79uwXL29TY76Z2rM5mHXA,
devicetree-u79uwXL29TY76Z2rM5mHXA,
linux-kernel-u79uwXL29TY76Z2rM5mHXA
On Thu, Jun 05, 2014 at 05:48:37PM +0200, Antoine Ténart wrote:
> This series adds the support for the Marvell Berlin USB controllers,
> the USB PHYs and also adds a reset controller.
>
> The reset controller is used by the USB PHY driver and shares the
> existing chip controller node with the clocks and one pin controller.
>
> The Marvell Berlin USB controllers are host only on the BG2Q and are
> compatible with USB ChipIdea. We here add a glue to use the available
> common functions for this kind of controllers. A USB PHY driver is also
> added to control the PHY.
>
> Antoine Ténart (9):
> reset: add the Berlin reset controller driver
> ARM: Berlin: select the reset controller
> ARM: dts: berlin: add a required reset property in the chip controller
> node
> usb: phy: add the Berlin USB PHY driver
> Documentation: bindings: add doc for the Berlin USB PHY
> usb: chipidea: add Berlin USB support
> Documentation: bindings: add doc for the Berlin ChipIdea USB driver
> ARM: dts: berlin: add BG2Q nodes for USB support
> ARM: dts: Berlin: enable USB on the BG2Q DMP
>
> .../devicetree/bindings/usb/berlin-usbphy.txt | 18 ++
> .../devicetree/bindings/usb/ci-hdrc-berlin.txt | 18 ++
> arch/arm/boot/dts/berlin2.dtsi | 1 +
> arch/arm/boot/dts/berlin2cd.dtsi | 1 +
> arch/arm/boot/dts/berlin2q-marvell-dmp.dts | 20 ++
> arch/arm/boot/dts/berlin2q.dtsi | 52 +++++
> arch/arm/mach-berlin/Kconfig | 2 +
> drivers/reset/Makefile | 1 +
> drivers/reset/reset-berlin.c | 113 +++++++++++
> drivers/usb/chipidea/Makefile | 1 +
> drivers/usb/chipidea/ci_hdrc_berlin.c | 108 ++++++++++
> drivers/usb/phy/Kconfig | 9 +
> drivers/usb/phy/Makefile | 1 +
> drivers/usb/phy/phy-berlin-usb.c | 223 +++++++++++++++++++++
> 14 files changed, 568 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/usb/berlin-usbphy.txt
> create mode 100644 Documentation/devicetree/bindings/usb/ci-hdrc-berlin.txt
> create mode 100644 drivers/reset/reset-berlin.c
> create mode 100644 drivers/usb/chipidea/ci_hdrc_berlin.c
> create mode 100644 drivers/usb/phy/phy-berlin-usb.c
>
> --
> 1.9.1
>
I am fine with 6/9, 7/9, will queue them if no other objections.
--
Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 11+ messages in thread