diff mbox series

[v24,1/2] arm64: dts: qcom: sc7180-trogdor: Add nodes for onboard USB hub

Message ID 20220722093238.v24.1.I7a1a6448d50bdd38e6082204a9818c59cc7a9bfd@changeid
State Accepted
Commit a73dd03bb2e0287497f8fe9e221c332369e05fca
Headers show
Series [v24,1/2] arm64: dts: qcom: sc7180-trogdor: Add nodes for onboard USB hub | expand

Commit Message

Matthias Kaehlcke July 22, 2022, 4:32 p.m. UTC
Add nodes for the onboard USB hub on trogdor devices. Remove the
'always-on' property from the hub regulator, since the regulator
is now managed by the onboard_usb_hub driver.

For anyone using trogdor-based devices on Linux, it should be
noted that this requires "CONFIG_USB_ONBOARD_HUB=y".

Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
---
This series depends on 3a6bf4a08142 ("usb: core: hub: Create platform
devices for onboard hubs in hub_probe()") which landed in -next [1].

[1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=3a6bf4a08142826698121bef16b244dcf50a6431

Changes in v24:
- renamed 'companion-hub' to 'peer-hub' according to the change
  in the binding

Changes in v23:
- added note about enabling CONFIG_USB_ONBOARD_HUB to the commit
  message

Changes in v22:
- none

Changes in v21:
- patch dropped from onboard_usb_hub series

Changes in v20:
- renamed hub labels to 'usb_hub_2/3_x'
- added comment for 'regulator-boot-on' of 'pp3300_hub'
- added 'Reviewed-by' tags from Stephen and Doug

Changes in v19:
- none

Changes in v18:
- also adjust config for pompom rev1

Changes in v17:
- none

Changes in v16:
- none

Changes in v15:
- none

Changes in v14:
- none

Changes in v13:
- none

Changes in v12:
- none

Changes in v11:
- rebased on qcom/arm64-for-5.14 (with the rest of the series)

Changes in v10:
- keep 'regulator-boot-on' property
- updated commit message

Changes in v9:
- none

Changes in v8:
- none

Changes in v7:
- rebased on qcom/arm64-for-5.13 (with the rest of the series)

Changes in v6:
- added 'companion-hub' entry to both USB devices
- added 'vdd-supply' also to hub@2

Changes in v5:
- patch added to the series

 .../boot/dts/qcom/sc7180-trogdor-lazor-r0.dts | 19 ++++++++----------
 .../boot/dts/qcom/sc7180-trogdor-lazor-r1.dts | 12 +++++------
 .../dts/qcom/sc7180-trogdor-pompom-r1.dts     | 11 ++++------
 .../arm64/boot/dts/qcom/sc7180-trogdor-r1.dts | 19 ++++++++----------
 arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi  | 20 ++++++++++++++++++-
 5 files changed, 44 insertions(+), 37 deletions(-)

Comments

Doug Anderson Aug. 18, 2022, 9:31 p.m. UTC | #1
Hi,

On Fri, Jul 22, 2022 at 9:32 AM Matthias Kaehlcke <mka@chromium.org> wrote:
>
> Add nodes for the onboard USB hub on trogdor devices. Remove the
> 'always-on' property from the hub regulator, since the regulator
> is now managed by the onboard_usb_hub driver.
>
> For anyone using trogdor-based devices on Linux, it should be
> noted that this requires "CONFIG_USB_ONBOARD_HUB=y".
>
> Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> Reviewed-by: Stephen Boyd <swboyd@chromium.org>
> Reviewed-by: Douglas Anderson <dianders@chromium.org>
> ---
> This series depends on 3a6bf4a08142 ("usb: core: hub: Create platform
> devices for onboard hubs in hub_probe()") which landed in -next [1].
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=3a6bf4a08142826698121bef16b244dcf50a6431
>
> Changes in v24:
> - renamed 'companion-hub' to 'peer-hub' according to the change
>   in the binding
>
> Changes in v23:
> - added note about enabling CONFIG_USB_ONBOARD_HUB to the commit
>   message
>
> Changes in v22:
> - none
>
> Changes in v21:
> - patch dropped from onboard_usb_hub series
>
> Changes in v20:
> - renamed hub labels to 'usb_hub_2/3_x'
> - added comment for 'regulator-boot-on' of 'pp3300_hub'
> - added 'Reviewed-by' tags from Stephen and Doug
>
> Changes in v19:
> - none
>
> Changes in v18:
> - also adjust config for pompom rev1
>
> Changes in v17:
> - none
>
> Changes in v16:
> - none
>
> Changes in v15:
> - none
>
> Changes in v14:
> - none
>
> Changes in v13:
> - none
>
> Changes in v12:
> - none
>
> Changes in v11:
> - rebased on qcom/arm64-for-5.14 (with the rest of the series)
>
> Changes in v10:
> - keep 'regulator-boot-on' property
> - updated commit message
>
> Changes in v9:
> - none
>
> Changes in v8:
> - none
>
> Changes in v7:
> - rebased on qcom/arm64-for-5.13 (with the rest of the series)
>
> Changes in v6:
> - added 'companion-hub' entry to both USB devices
> - added 'vdd-supply' also to hub@2
>
> Changes in v5:
> - patch added to the series
>
>  .../boot/dts/qcom/sc7180-trogdor-lazor-r0.dts | 19 ++++++++----------
>  .../boot/dts/qcom/sc7180-trogdor-lazor-r1.dts | 12 +++++------
>  .../dts/qcom/sc7180-trogdor-pompom-r1.dts     | 11 ++++------
>  .../arm64/boot/dts/qcom/sc7180-trogdor-r1.dts | 19 ++++++++----------
>  arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi  | 20 ++++++++++++++++++-
>  5 files changed, 44 insertions(+), 37 deletions(-)

The driver changes have landed and stuck. They're in Linus's tree, so
I think we're now ready to land these two patches! Hooray!

FWIW: I've continued my experiment of landing changes that I'm keeping
track of in a github tree:

https://github.com/dianders/kernel-staging/commits/qcom/arm64-staging

-Doug
Doug Anderson Sept. 6, 2022, 10:02 p.m. UTC | #2
Hi,

On Thu, Aug 18, 2022 at 2:31 PM Doug Anderson <dianders@chromium.org> wrote:
>
> Hi,
>
> On Fri, Jul 22, 2022 at 9:32 AM Matthias Kaehlcke <mka@chromium.org> wrote:
> >
> > Add nodes for the onboard USB hub on trogdor devices. Remove the
> > 'always-on' property from the hub regulator, since the regulator
> > is now managed by the onboard_usb_hub driver.
> >
> > For anyone using trogdor-based devices on Linux, it should be
> > noted that this requires "CONFIG_USB_ONBOARD_HUB=y".
> >
> > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > Reviewed-by: Stephen Boyd <swboyd@chromium.org>
> > Reviewed-by: Douglas Anderson <dianders@chromium.org>
> > ---
> > This series depends on 3a6bf4a08142 ("usb: core: hub: Create platform
> > devices for onboard hubs in hub_probe()") which landed in -next [1].
> >
> > [1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=3a6bf4a08142826698121bef16b244dcf50a6431
> >
> > Changes in v24:
> > - renamed 'companion-hub' to 'peer-hub' according to the change
> >   in the binding
> >
> > Changes in v23:
> > - added note about enabling CONFIG_USB_ONBOARD_HUB to the commit
> >   message
> >
> > Changes in v22:
> > - none
> >
> > Changes in v21:
> > - patch dropped from onboard_usb_hub series
> >
> > Changes in v20:
> > - renamed hub labels to 'usb_hub_2/3_x'
> > - added comment for 'regulator-boot-on' of 'pp3300_hub'
> > - added 'Reviewed-by' tags from Stephen and Doug
> >
> > Changes in v19:
> > - none
> >
> > Changes in v18:
> > - also adjust config for pompom rev1
> >
> > Changes in v17:
> > - none
> >
> > Changes in v16:
> > - none
> >
> > Changes in v15:
> > - none
> >
> > Changes in v14:
> > - none
> >
> > Changes in v13:
> > - none
> >
> > Changes in v12:
> > - none
> >
> > Changes in v11:
> > - rebased on qcom/arm64-for-5.14 (with the rest of the series)
> >
> > Changes in v10:
> > - keep 'regulator-boot-on' property
> > - updated commit message
> >
> > Changes in v9:
> > - none
> >
> > Changes in v8:
> > - none
> >
> > Changes in v7:
> > - rebased on qcom/arm64-for-5.13 (with the rest of the series)
> >
> > Changes in v6:
> > - added 'companion-hub' entry to both USB devices
> > - added 'vdd-supply' also to hub@2
> >
> > Changes in v5:
> > - patch added to the series
> >
> >  .../boot/dts/qcom/sc7180-trogdor-lazor-r0.dts | 19 ++++++++----------
> >  .../boot/dts/qcom/sc7180-trogdor-lazor-r1.dts | 12 +++++------
> >  .../dts/qcom/sc7180-trogdor-pompom-r1.dts     | 11 ++++------
> >  .../arm64/boot/dts/qcom/sc7180-trogdor-r1.dts | 19 ++++++++----------
> >  arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi  | 20 ++++++++++++++++++-
> >  5 files changed, 44 insertions(+), 37 deletions(-)
>
> The driver changes have landed and stuck. They're in Linus's tree, so
> I think we're now ready to land these two patches! Hooray!
>
> FWIW: I've continued my experiment of landing changes that I'm keeping
> track of in a github tree:
>
> https://github.com/dianders/kernel-staging/commits/qcom/arm64-staging

I believe this series continues to be ready to land. Perhaps now would
be a good time for it? ;-)

-Doug
Matthias Kaehlcke Sept. 14, 2022, 8:49 p.m. UTC | #3
On Tue, Sep 06, 2022 at 03:02:23PM -0700, Doug Anderson wrote:
> Hi,
> 
> On Thu, Aug 18, 2022 at 2:31 PM Doug Anderson <dianders@chromium.org> wrote:
> >
> > Hi,
> >
> > On Fri, Jul 22, 2022 at 9:32 AM Matthias Kaehlcke <mka@chromium.org> wrote:
> > >
> > > Add nodes for the onboard USB hub on trogdor devices. Remove the
> > > 'always-on' property from the hub regulator, since the regulator
> > > is now managed by the onboard_usb_hub driver.
> > >
> > > For anyone using trogdor-based devices on Linux, it should be
> > > noted that this requires "CONFIG_USB_ONBOARD_HUB=y".
> > >
> > > Signed-off-by: Matthias Kaehlcke <mka@chromium.org>
> > > Reviewed-by: Stephen Boyd <swboyd@chromium.org>
> > > Reviewed-by: Douglas Anderson <dianders@chromium.org>
> > > ---
> > > This series depends on 3a6bf4a08142 ("usb: core: hub: Create platform
> > > devices for onboard hubs in hub_probe()") which landed in -next [1].
> > >
> > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=3a6bf4a08142826698121bef16b244dcf50a6431
> > >
> > > Changes in v24:
> > > - renamed 'companion-hub' to 'peer-hub' according to the change
> > >   in the binding
> > >
> > > Changes in v23:
> > > - added note about enabling CONFIG_USB_ONBOARD_HUB to the commit
> > >   message
> > >
> > > Changes in v22:
> > > - none
> > >
> > > Changes in v21:
> > > - patch dropped from onboard_usb_hub series
> > >
> > > Changes in v20:
> > > - renamed hub labels to 'usb_hub_2/3_x'
> > > - added comment for 'regulator-boot-on' of 'pp3300_hub'
> > > - added 'Reviewed-by' tags from Stephen and Doug
> > >
> > > Changes in v19:
> > > - none
> > >
> > > Changes in v18:
> > > - also adjust config for pompom rev1
> > >
> > > Changes in v17:
> > > - none
> > >
> > > Changes in v16:
> > > - none
> > >
> > > Changes in v15:
> > > - none
> > >
> > > Changes in v14:
> > > - none
> > >
> > > Changes in v13:
> > > - none
> > >
> > > Changes in v12:
> > > - none
> > >
> > > Changes in v11:
> > > - rebased on qcom/arm64-for-5.14 (with the rest of the series)
> > >
> > > Changes in v10:
> > > - keep 'regulator-boot-on' property
> > > - updated commit message
> > >
> > > Changes in v9:
> > > - none
> > >
> > > Changes in v8:
> > > - none
> > >
> > > Changes in v7:
> > > - rebased on qcom/arm64-for-5.13 (with the rest of the series)
> > >
> > > Changes in v6:
> > > - added 'companion-hub' entry to both USB devices
> > > - added 'vdd-supply' also to hub@2
> > >
> > > Changes in v5:
> > > - patch added to the series
> > >
> > >  .../boot/dts/qcom/sc7180-trogdor-lazor-r0.dts | 19 ++++++++----------
> > >  .../boot/dts/qcom/sc7180-trogdor-lazor-r1.dts | 12 +++++------
> > >  .../dts/qcom/sc7180-trogdor-pompom-r1.dts     | 11 ++++------
> > >  .../arm64/boot/dts/qcom/sc7180-trogdor-r1.dts | 19 ++++++++----------
> > >  arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi  | 20 ++++++++++++++++++-
> > >  5 files changed, 44 insertions(+), 37 deletions(-)
> >
> > The driver changes have landed and stuck. They're in Linus's tree, so
> > I think we're now ready to land these two patches! Hooray!
> >
> > FWIW: I've continued my experiment of landing changes that I'm keeping
> > track of in a github tree:
> >
> > https://github.com/dianders/kernel-staging/commits/qcom/arm64-staging
> 
> I believe this series continues to be ready to land. Perhaps now would
> be a good time for it? ;-)

Ping, can these be landed?
Bjorn Andersson Sept. 15, 2022, 3:37 a.m. UTC | #4
On Fri, 22 Jul 2022 09:32:44 -0700, Matthias Kaehlcke wrote:
> Add nodes for the onboard USB hub on trogdor devices. Remove the
> 'always-on' property from the hub regulator, since the regulator
> is now managed by the onboard_usb_hub driver.
> 
> For anyone using trogdor-based devices on Linux, it should be
> noted that this requires "CONFIG_USB_ONBOARD_HUB=y".
> 
> [...]

Applied, thanks!

[1/2] arm64: dts: qcom: sc7180-trogdor: Add nodes for onboard USB hub
      commit: a73dd03bb2e0287497f8fe9e221c332369e05fca
[2/2] arm64: dts: qcom: sc7280-herobrine: Add nodes for onboard USB hub
      commit: dc94156c6694e0ecee32870df94ed8fae07327ca

Best regards,
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dts b/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dts
index bfbf26fd2cd4..d49de65aa960 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r0.dts
@@ -16,17 +16,6 @@  / {
 	compatible = "google,lazor-rev0", "qcom,sc7180";
 };
 
-&pp3300_hub {
-	/* pp3300_l7c is used to power the USB hub */
-	/delete-property/regulator-always-on;
-	/delete-property/regulator-boot-on;
-};
-
-&pp3300_l7c {
-	regulator-always-on;
-	regulator-boot-on;
-};
-
 &sn65dsi86_out {
 	/*
 	 * Lane 0 was incorrectly mapped on the cable, but we've now decided
@@ -35,3 +24,11 @@  &sn65dsi86_out {
 	 */
 	lane-polarities = <1 0>;
 };
+
+&usb_hub_2_x {
+	 vdd-supply = <&pp3300_l7c>;
+};
+
+&usb_hub_3_x {
+	 vdd-supply = <&pp3300_l7c>;
+};
diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dts b/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dts
index d45a59afd7fc..80c7108bc51b 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor-lazor-r1.dts
@@ -16,13 +16,11 @@  / {
 	compatible = "google,lazor-rev1", "google,lazor-rev2", "qcom,sc7180";
 };
 
-&pp3300_hub {
-	/* pp3300_l7c is used to power the USB hub */
-	/delete-property/regulator-always-on;
-	/delete-property/regulator-boot-on;
+
+&usb_hub_2_x {
+	 vdd-supply = <&pp3300_l7c>;
 };
 
-&pp3300_l7c {
-	regulator-always-on;
-	regulator-boot-on;
+&usb_hub_3_x {
+	 vdd-supply = <&pp3300_l7c>;
 };
diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dts b/arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dts
index 76a130bad60a..8467ff41e6d5 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor-pompom-r1.dts
@@ -34,13 +34,10 @@  &pm6150_adc_tm {
 	/delete-node/ charger-thermistor@0;
 };
 
-&pp3300_hub {
-	/* pp3300_l7c is used to power the USB hub */
-	/delete-property/regulator-always-on;
-	/delete-property/regulator-boot-on;
+&usb_hub_2_x {
+	 vdd-supply = <&pp3300_l7c>;
 };
 
-&pp3300_l7c {
-	regulator-always-on;
-	regulator-boot-on;
+&usb_hub_3_x {
+	 vdd-supply = <&pp3300_l7c>;
 };
diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dts b/arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dts
index 59a23d0e9651..bc097d1b1b23 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dts
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor-r1.dts
@@ -44,17 +44,6 @@  &panel {
 	compatible = "auo,b116xa01";
 };
 
-&pp3300_hub {
-	/* pp3300_l7c is used to power the USB hub */
-	/delete-property/regulator-always-on;
-	/delete-property/regulator-boot-on;
-};
-
-&pp3300_l7c {
-	regulator-always-on;
-	regulator-boot-on;
-};
-
 &sdhc_2 {
 	status = "okay";
 };
@@ -63,6 +52,14 @@  &trackpad {
 	interrupts = <58 IRQ_TYPE_EDGE_FALLING>;
 };
 
+&usb_hub_2_x {
+	 vdd-supply = <&pp3300_l7c>;
+};
+
+&usb_hub_3_x {
+	 vdd-supply = <&pp3300_l7c>;
+};
+
 /* PINCTRL - modifications to sc7180-trogdor.dtsi */
 
 &trackpad_int_1v8_odl {
diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
index b5f534db135a..eae22e6e97c1 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
@@ -299,7 +299,7 @@  pp3300_hub: pp3300-hub-regulator {
 		pinctrl-names = "default";
 		pinctrl-0 = <&en_pp3300_hub>;
 
-		regulator-always-on;
+		/* The BIOS leaves this regulator on */
 		regulator-boot-on;
 
 		vin-supply = <&pp3300_a>;
@@ -936,6 +936,24 @@  &usb_1 {
 
 &usb_1_dwc3 {
 	dr_mode = "host";
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	/* 2.x hub on port 1 */
+	usb_hub_2_x: hub@1 {
+		compatible = "usbbda,5411";
+		reg = <1>;
+		vdd-supply = <&pp3300_hub>;
+		peer-hub = <&usb_hub_3_x>;
+	};
+
+	/* 3.x hub on port 2 */
+	usb_hub_3_x: hub@2 {
+		compatible = "usbbda,411";
+		reg = <2>;
+		vdd-supply = <&pp3300_hub>;
+		peer-hub = <&usb_hub_2_x>;
+	};
 };
 
 &usb_1_hsphy {