From 2f1c8eedc108d458fb2566ec582cbd7c45fc280b Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 12 Jan 2022 12:48:53 +0000 Subject: [PATCH] overlays: Add vl805 overlay With the automatic VL805 support being removed from the standard CM4 dtb (since most CM4 carriers don't have a VL805), retain support on those that do by creating a "vl805" overlay that restores the deleted "usb@0,0" node. The "vl805" overlay will be loaded automatically (after an upcoming firmware update) on CM4 boards where the EEPROM config includes the setting VL805=1. See: https://forums.raspberrypi.com/viewtopic.php?t=326088 Signed-off-by: Phil Elwell --- arch/arm/boot/dts/overlays/Makefile | 1 + arch/arm/boot/dts/overlays/README | 8 ++++++++ arch/arm/boot/dts/overlays/vl805-overlay.dts | 18 ++++++++++++++++++ 3 files changed, 27 insertions(+) create mode 100644 arch/arm/boot/dts/overlays/vl805-overlay.dts --- a/arch/arm/boot/dts/overlays/Makefile +++ b/arch/arm/boot/dts/overlays/Makefile @@ -243,6 +243,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \ vc4-kms-v3d-pi4.dtbo \ vc4-kms-vga666.dtbo \ vga666.dtbo \ + vl805.dtbo \ w1-gpio.dtbo \ w1-gpio-pullup.dtbo \ w5500.dtbo \ --- a/arch/arm/boot/dts/overlays/README +++ b/arch/arm/boot/dts/overlays/README @@ -3744,6 +3744,14 @@ Load: dtoverlay=vga666 Params: +Name: vl805 +Info: Overlay to enable a VIA VL805 USB3 controller on CM4 carriers + Will be loaded automatically by up-to-date firmware if "VL805=1" is + set in the EEPROM config. +Load: dtoverlay=vl805 +Params: + + Name: w1-gpio Info: Configures the w1-gpio Onewire interface module. Use this overlay if you *don't* need a GPIO to drive an external pullup. --- /dev/null +++ b/arch/arm/boot/dts/overlays/vl805-overlay.dts @@ -0,0 +1,18 @@ +/dts-v1/; +/plugin/; + +#include + +/ { + compatible = "brcm,bcm2711"; + + fragment@0 { + target-path = "pcie0/pci@0,0"; + __overlay__ { + usb@0,0 { + reg = <0 0 0 0 0>; + resets = <&reset RASPBERRYPI_FIRMWARE_RESET_ID_USB>; + }; + }; + }; +};