
Hi U-Boot folks,
Hopefully this is the right way to report bugs. If not, please do not hesitate to let me know.
I am hitting an issue with U-Boot v2021.07 on the ROCKPro64, when booting Linux with UEFI from USB. The kernel EFI stub will hang:
EFI stub: Booting Linux Kernel... EFI stub: Using DTB from configuration table EFI stub: Exiting boot services and installing virtual address map...
After tracking it down, it appears efi_exit_boot_services() is ultimately calling OHCI hc_reset(), which hangs at this line:
1804 if (ohci_readl(&ohci->regs->control) & OHCI_CTRL_IR) {
This seems to indicate reading the OHCI hardware control register cannot complete, which hints at a clocking issue.
Looking in more details at the clocks changes performed on the efi_exit_boot_services() path, a workaround is indeed to prevent the USB2PHY clocks from being disabled (see the patch following this e-mail).
I don't know enough about the RK3399 clock tree to fully understand what is going on here, and what would be a proper fix. Hopefully others will be able to continue from there.
Best regards,
Vincent Stehlé System Architect - Arm
Vincent Stehlé (1): clk: rk3399: do not disable the USB2PHY clk
drivers/clk/rockchip/clk_rk3399.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)