From patchwork Fri Jun 12 16:46:28 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Saenz Julienne X-Patchwork-Id: 242196 List-Id: U-Boot discussion From: nsaenzjulienne at suse.de (Nicolas Saenz Julienne) Date: Fri, 12 Jun 2020 18:46:28 +0200 Subject: [PATCH v4 0/5] usb: xhci: Load Raspberry Pi 4 VL805's firmware Message-ID: <20200612164632.25648-1-nsaenzjulienne@suse.de> Newer revisions of the RPi4 need their xHCI chip, VL805, firmware to be loaded explicitly. Earlier versions didn't need that as they where using an EEPROM for that purpose. This series takes care of setting up the relevant infrastructure and run the firmware loading routine at the right moment. Note that this builds on top of Sylwester Nawrocki's "USB host support for Raspberry Pi 4 board" series. This works hand in hand with a series of device tree changes on the Linux device tree that are still being reviewed: https://patchwork.kernel.org/patch/11596403/ https://patchwork.kernel.org/patch/11596409/ --- Changes since v3: - Use reset controller Changes since v2: - Correct comment on patch #1 - Address Matthias' comments Changes since v1: - Rename function - Use callback in xhci-pci.c Nicolas Saenz Julienne (5): arm: rpi: Add function to trigger VL805's firmware load reset: Add Raspberry Pi 4 firmware reset controller configs: Enable support for reset controllers on RPi4 dm: pci: Assign controller device node to root bridge usb: xhci-pci: Add reset controller support arch/arm/mach-bcm283x/include/mach/mbox.h | 13 ++++ arch/arm/mach-bcm283x/include/mach/msg.h | 7 +++ arch/arm/mach-bcm283x/msg.c | 46 ++++++++++++++ configs/rpi_4_32b_defconfig | 1 + configs/rpi_4_defconfig | 1 + configs/rpi_arm64_defconfig | 1 + drivers/pci/pci-uclass.c | 15 ++++- drivers/reset/Kconfig | 10 ++++ drivers/reset/Makefile | 1 + drivers/reset/reset-raspberrypi.c | 60 +++++++++++++++++++ drivers/usb/host/xhci-pci.c | 38 +++++++++++- .../reset/raspberrypi,firmware-reset.h | 13 ++++ 12 files changed, 203 insertions(+), 3 deletions(-) create mode 100644 drivers/reset/reset-raspberrypi.c create mode 100644 include/dt-bindings/reset/raspberrypi,firmware-reset.h