[PATCH 2/2] usb: xhci: Load Raspberry Pi 4 VL805's firmware
Marek Vasut
marex at denx.de
Tue Apr 28 19:59:57 CEST 2020
On 4/28/20 7:44 PM, Nicolas Saenz Julienne wrote:
> When needed, RPi4's co-processor (called VideoCore) has to be instructed
> to load VL805's firmware (the chip providing xHCI support). VideCore's
> firmware expects the board's PCIe bus to be already configured in order
> for it to load the xHCI chip firmware. So we have to make sure this
> happens in between the PCIe configuration and xHCI startup.
>
> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne at suse.de>
> ---
> drivers/usb/host/xhci-pci.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/usb/host/xhci-pci.c b/drivers/usb/host/xhci-pci.c
> index c1f60da541..5c17ea6932 100644
> --- a/drivers/usb/host/xhci-pci.c
> +++ b/drivers/usb/host/xhci-pci.c
> @@ -11,6 +11,8 @@
> #include <usb.h>
> #include <usb/xhci.h>
>
> +#include <asm/arch/msg.h>
> +
> static void xhci_pci_init(struct udevice *dev, struct xhci_hccr **ret_hccr,
> struct xhci_hcor **ret_hcor)
> {
> @@ -18,6 +20,10 @@ static void xhci_pci_init(struct udevice *dev, struct xhci_hccr **ret_hccr,
> struct xhci_hcor *hcor;
> u32 cmd;
>
> +#ifdef CONFIG_BCM2711
> + bcm2711_load_vl805_firmware();
> +#endif
> +
> hccr = (struct xhci_hccr *)dm_pci_map_bar(dev,
> PCI_BASE_ADDRESS_0, PCI_REGION_MEM);
> hcor = (struct xhci_hcor *)((uintptr_t) hccr +
I think socfpga arria10 has some firmware loader implementation that is
generic, so can't we use that ?
More information about the U-Boot
mailing list