On 02/08/17 12:10, Stefan Wahren wrote: > Am 02.08.2017 um 09:03 schrieb Hans Verkuil: >> When testing with my Raspberry Pi 3 and the 4.13-rcX mainline kernel >> I discovered that there was no ethernet. After bisecting I got to commit >> 2bf69867 ('USB: of: fix root-hub device-tree node handling'). >> >> With that commit lsusb outputs: >> >> rpi3: ~ # lsusb >> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub >> >> After reverting just that commit (I'm on 4.13-rc3 now) ethernet is >> restored and lsusb gives me: >> >> rpi3: ~ $ lsusb >> Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter >> Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub >> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub >> >> I don't speak USB, so I have no idea why this patch causes these issues, >> but I am happy to test patches. > > Thanks for finding. > > Just a note, Andreas Färber also found a regression in 4.13-rc1, which > is related to USB & DMA [1]. > Unfortunately i wasn't able to bisect this issue. I think it's related > to the configuration. OK, so from the look of 2bf69867, whatever struct device dwc2 is calling dma_set_mask() on is not the same one as ends up getting used for DMA API calls. That in itself is a bug, but whether it's dwc2's or the USB core's fault I don't know enough to say. I'd guess that previously, either the DMA device was the correct one, or was happening to work due to not having an associated of_node for of_dma_configure() to pick up on and reduce the default 32-bit DMA mask to the smaller once generated from the "dma-ranges" property. The fact that of_dma_configure() incorrectly generates a 30-bit DMA mask from the Rpi3 "dma-ranges" in the first place is an unrelated problem (which I'm working on) but has at least helped reveal this bug ;) Robin. > [1] - > http://lists.infradead.org/pipermail/linux-rpi-kernel/2017-July/006658.html > >> >> Regards, >> >> Hans >> >> _______________________________________________ >> linux-rpi-kernel mailing list >> linux-rpi-kernel@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/linux-rpi-kernel -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html