Hi Nicolas, On Mon, Apr 13, 2020 at 11:45 PM Nicolas Saenz Julienne <nsaenzjulie...@suse.de> wrote: > > Hi Bin, > sorry for the late reply but I was off for easter. > > On Fri, 2020-04-03 at 13:54 +0800, Bin Meng wrote: > > Hi Nicolas, > > This is probably caused by the required structure setup by U-Boot is > > viewed as buggy by the xHCI controller, hence there is no response to > > the first "enable slot" command. > > Yes, that's my impression too. That said I can't seem to find the faulty > config. > > Since I wasn't all that clear on my previous mail, this is a VIA805 chip, > directly soldered on the board and interfaced with trough RPi4's PCIe bus (the > PCIe bus isn't exposed, so it's the only user). The Linux version of this > works > fine, and is already supported upstream. > > > Could you please compare all the data structures, with the one set up > > by the Linux kernel? > > I've attached some logs comparing u-boot's and Linux's view of the registers. > I > dumped them before and after calling the 'enable slot' command. I left all the > debuging information just in case it's helpful and also attached some patches > to show my changes. > > Note that I thoughfully compared them myself. The only odd thing I found was > "USBSTS: 0x10" (Port Detect Change is set), which isn't the case in Linux. I > tried to clear it at different places (before and after changing the > individual > port status), without effect. > > That's all. If the data I sent is a little bit too dense, please tell me and > I'll remove all the less important stuff :). >
The following patch should fix this issue you were seeing. Please try. http://patchwork.ozlabs.org/project/uboot/patch/20200421165059.19394-2-s.nawro...@samsung.com/ Regards, Bin