On Tue, Feb 5, 2019 at 9:52 AM Marc Gonzalez <marc.w.gonzalez@xxxxxxx> wrote: > > On 05/02/2019 18:24, Marc Gonzalez wrote: > > > /*** system hangs here for several seconds, then reboots ***/ > > Silly me. The system crashes in ufshcd_dump_regs() which is a bug > I fixed myself. Once I cherry-pick the appropriate fix, the board > no longer reboots, but UFS init does fail. > > Full boot log here: > https://pastebin.ubuntu.com/p/KwpRnWMFw5/ > > In any case, it's obvious that disabling vccq on this system is > a mistake. How would you solve the problem? (A quirk on top of a > quirk sounds silly.) > I think Bjorn is right that this whole quirk seems to be compensating for an incorrectly specified device tree (one that specifies vccq-supply but that doesn't go anywhere).... though maybe this was made to support boards with footprint-compatible UFS parts from different vendors? Like the same DT is used for two different SKUs, one which stamps down a UFS part that uses VCCQ, and another that doesn't use it, though the wire is there. But the revert itself shouldn't really fix anything for you Marc, should it? It looks like this quirk turns on for Samsung and SKHynix parts, which presumably just don't use VCCQ. So maybe your device tree doesn't match your schematics, where the DT's vccq supply is actually the vccq2 supply going into the UFS chip? -Evan