Hi, On Tue, Jan 26, 2016 at 10:26 AM, Doug Anderson <dianders@xxxxxxxxxxxx> wrote: > Hi, > > On Tue, Jan 26, 2016 at 10:22 AM, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: >> On Tue, 26 Jan 2016, Noralf Trønnes wrote: >> >>> > I installed the rpi-4.4.y branch from the >>> > https://github.com/raspberrypi/linux repository. As is, it generated a >>> > working kernel. Then I tried editing the config; I removed >>> > CONFIG_USB_DWCOTG and added CONFIG_USB_DWC2 and CONFIG_USB_DWC2_HOST. >>> > However, when I booted the resulting kernel it didn't seem to detect >>> > the host controller at all. No USB devices were probed, which meant no >>> > working ethernet or keyboard. >>> > >>> > Then I tried enabling both drivers in the config. That worked, but the >>> > controller was bound to dwc_otg, not to dwc2. >>> > >>> > I get the feeling that some magic DT incantation is missing, although I >>> > have no idea what. The base bcm2709-rpi-2-b.dtb wasn't affected by the >>> > config change, nor was the overlays/dwc2-overlay.dtb file. >>> > >>> > Any suggestions? >>> >>> Have you enabled the dwc2 overlay? >>> Add to /boot/config.txt: >>> dtoverlay=dwc2 >> >> That did it! Thank you. >> >> The dwc2 driver seems to do a better job than dwc_otg -- at least, it >> sends Clear-TT-Buffer requests after each failure. >> >> Doug, do you have a list of patches you'd like me to try on top of the >> rpi-4.4.y branch? > > Nice! You can give this series a try. It aims to improve SPLIT > scheduling quite a bit: > > 8091691 New [v5,01/21] usb: dwc2: rockchip: Make the > max_transfer_size automatic > 8091701 New [v5,02/21] usb: dwc2: host: Get aligned DMA in a > more supported way > 8092101 New [v5,03/21] usb: dwc2: host: Set host_rx_fifo_size > to 528 for rk3066 > 8092091 New [v5,04/21] usb: dwc2: host: Set > host_perio_tx_fifo_size to 304 for rk3066 > 8092081 New [v5,05/21] usb: dwc2: host: Avoid use of chan->qh > after qh freed > 8092071 New [v5,06/21] usb: dwc2: host: Always add to the > tail of queues > 8092061 New [v5,07/21] usb: dwc2: hcd: fix split transfer > schedule sequence > 8091761 New [v5,08/21] usb: dwc2: host: Add scheduler tracing > 8092051 New [v5,09/21] usb: dwc2: host: Add a delay before > releasing periodic bandwidth > 8092041 New [v5,10/21] usb: dwc2: host: Giveback URB in tasklet context > 8092031 New [v5,11/21] usb: dwc2: host: Use periodic > interrupt even with DMA > 8092021 New [v5,12/21] usb: dwc2: host: Rename some fields in > struct dwc2_qh > 8092011 New [v5,13/21] usb: dwc2: host: Reorder things in hcd_queue.c > 8092001 New [v5,14/21] usb: dwc2: host: Split code out to > make dwc2_do_reserve() > 8091991 New [v5,15/21] usb: dwc2: host: Add scheduler logging > for missed SOFs > 8091821 New [v5,16/21] usb: dwc2: host: Manage frame nums > better in scheduler > 8091831 New [v5,17/21] usb: dwc2: host: Schedule periodic > right away if it's time > 8091971 New [v5,18/21] usb: dwc2: host: Add > dwc2_hcd_get_future_frame_number() call > 8091961 New [v5,19/21] usb: dwc2: host: Properly set even/odd frame > 8091981 New [v5,20/21] usb: dwc2: host: Totally redo the > microframe scheduler > 8091951 New [v5,21/21] usb: dwc2: host: If using uframe > scheduler, end splits better > > Plus grab: > > 8094921 New usb: dwc2: host: Properly set the HFIR > > You could ignore the two rk3066 patches, though they won't hurt you. > Hopefully you also saw the note that you should pick the two patches: > > http://marc.info/?l=linux-usb&m=145255851516121&w=2 Oh, and above IDs are patchwork.kernel.org IDs. So the HFIR patch can be found at <https://patchwork.kernel.org/patch/8094921/> (or applied via the pwclient command line tool). -Doug -- 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