From 874e651872c2b9e2a2a7f5e139197b9c8c96240b Mon Sep 17 00:00:00 2001 Message-Id: <874e651872c2b9e2a2a7f5e139197b9c8c96240b.1611839042.git.stefan@agner.ch> In-Reply-To: <625000fe2a9c1f78099895bf14c2f9753e359fba.1611839042.git.stefan@agner.ch> References: <625000fe2a9c1f78099895bf14c2f9753e359fba.1611839042.git.stefan@agner.ch> From: Nicolas Saenz Julienne Date: Mon, 29 Jun 2020 18:18:40 +0200 Subject: [PATCH 6/7] ARM: dts: bcm2711: Add reset controller to xHCI node The chip is hardwired to the board's PCIe bus and needs to be properly setup trough a firmware routine after a PCI fundamental reset. Pass the reset controller phandle that takes care of triggering the initialization to the relevant PCI device. Reviewed-by: Florian Fainelli Signed-off-by: Nicolas Saenz Julienne Link: https://lore.kernel.org/r/20200629161845.6021-5-nsaenzjulienne@suse.de Signed-off-by: Greg Kroah-Hartman (cherry picked from commit 258f92d2f840b6ea62c0b33f04eb4d9270935bba) --- arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 17 +++++++++++++++++ arch/arm/boot/dts/bcm2711-rpi-400.dts | 17 +++++++++++++++++ arch/arm/boot/dts/bcm2711-rpi-cm4.dts | 12 ++++++++++++ 3 files changed, 46 insertions(+) diff --git a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts index 37f14d7fd4f0..1139d60a643d 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts @@ -3,6 +3,8 @@ #include "bcm2711.dtsi" #include "bcm2835-rpi.dtsi" +#include + / { compatible = "raspberrypi,4-model-b", "brcm,bcm2711"; model = "Raspberry Pi 4 Model B"; @@ -195,6 +197,21 @@ }; }; +&pcie0 { + pci@1,0 { + #address-cells = <3>; + #size-cells = <2>; + ranges; + + reg = <0 0 0 0 0>; + + usb@1,0 { + reg = <0x10000 0 0 0 0>; + resets = <&reset RASPBERRYPI_FIRMWARE_RESET_ID_USB>; + }; + }; +}; + /* uart0 communicates with the BT module */ &uart0 { pinctrl-names = "default"; diff --git a/arch/arm/boot/dts/bcm2711-rpi-400.dts b/arch/arm/boot/dts/bcm2711-rpi-400.dts index a4f4e619d83c..264f0226f1b0 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-400.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-400.dts @@ -3,6 +3,8 @@ #include "bcm2711.dtsi" #include "bcm2835-rpi.dtsi" +#include + / { compatible = "raspberrypi,400", "brcm,bcm2711"; model = "Raspberry Pi 400"; @@ -195,6 +197,21 @@ }; }; +&pcie0 { + pci@1,0 { + #address-cells = <3>; + #size-cells = <2>; + ranges; + + reg = <0 0 0 0 0>; + + usb@1,0 { + reg = <0x10000 0 0 0 0>; + resets = <&reset RASPBERRYPI_FIRMWARE_RESET_ID_USB>; + }; + }; +}; + /* uart0 communicates with the BT module */ &uart0 { pinctrl-names = "default"; diff --git a/arch/arm/boot/dts/bcm2711-rpi-cm4.dts b/arch/arm/boot/dts/bcm2711-rpi-cm4.dts index aa346b063b2a..4c0f6b320656 100644 --- a/arch/arm/boot/dts/bcm2711-rpi-cm4.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-cm4.dts @@ -3,6 +3,8 @@ #include "bcm2711.dtsi" #include "bcm2835-rpi.dtsi" +#include + / { compatible = "raspberrypi,4-compute-module", "brcm,bcm2711"; model = "Raspberry Pi Compute Module 4"; @@ -134,6 +136,16 @@ }; }; +&pcie0 { + pci@1,0 { + #address-cells = <3>; + #size-cells = <2>; + ranges; + + reg = <0 0 0 0 0>; + }; +}; + /* uart0 communicates with the BT module */ &uart0 { pinctrl-names = "default"; -- 2.30.0