Em Fri, 26 Jan 2018 12:17:37 -0200
Mauro Carvalho Chehab <mche...@s-opensource.com> escreveu:

> Hi Alan,
> 
> Em Mon, 8 Jan 2018 14:15:35 -0500 (EST)
> Alan Stern <st...@rowland.harvard.edu> escreveu:
> 
> > On Mon, 8 Jan 2018, Linus Torvalds wrote:
> >   
> > > Can somebody tell which softirq it is that dvb/usb cares about?    
> > 
> > I don't know about the DVB part.  The USB part is a little difficult to
> > analyze, mostly because the bug reports I've seen are mostly from
> > people running non-vanilla kernels.   
> 
> I suspect that the main reason for people not using non-vanilla Kernels
> is that, among other bugs, the dwc2 upstream driver has serious troubles
> handling ISOCH traffic.
> 
> Using Kernel 4.15-rc7 from this git tree:
>       https://git.linuxtv.org/mchehab/experimental.git/log/?h=softirq_fixup
> 
> (e. g. with the softirq bug partially reverted with Linux patch, and
>  the DWC2 deferred probe fixed)
> 
> With a PCTV 461e device, with uses em28xx driver + Montage frontend
> (with is the same used on dvbsky hardware - except for em28xx).
> 
> This device doesn't support bulk for DVB, just ISOCH. The drivers work 
> fine on x86.
> 
> Using a test signal at the bit rate of 56698,4 Kbits/s, that's what
> happens, when capturing less than one second of data:
> 
> $ dvbv5-zap -c ~/dvb_channel.conf "tv brasil" -l universal -X 100 -m 
> -t2dvbv5-zap -c ~/dvb_channel.conf "tv brasil" -l universal -X 100 -m -t2
> Using LNBf UNIVERSAL
>       Universal, Europe
>       Freqs     : 10800 to 11800 MHz, LO: 9750 MHz
>       Freqs     : 11600 to 12700 MHz, LO: 10600 MHz
> using demux 'dvb0.demux0'
> reading channels from file '/home/mchehab/dvb_channel.conf'
> tuning to 11468000 Hz
>        (0x00) Signal= -33.90dBm
> Lock   (0x1f) Signal= -33.90dBm C/N= 30.28dB postBER= 2.33x10^-6
> dvb_dev_set_bufsize: buffer set to 6160384
>   dvb_set_pesfilter to 0x2000
> 354.08s: Starting capture
> 354.73s: only read 59220 bytes
> 354.73s: Stopping capture
> 
> [  354.000827] dwc2 3f980000.usb: DWC OTG HCD EP DISABLE: 
> bEndpointAddress=0x84, ep->hcpriv=116f41b2
> [  354.000859] dwc2 3f980000.usb: DWC OTG HCD EP RESET: bEndpointAddress=0x84
> [  354.010744] dwc2 3f980000.usb: --Host Channel 5 Interrupt: Frame Overrun--
> ... (hundreds of thousands of Frame Overrun messages)
> [  354.660857] dwc2 3f980000.usb: --Host Channel 5 Interrupt: Frame Overrun--
> [  354.660935] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
> [  354.660959] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
> [  354.660966] dwc2 3f980000.usb:   urb->status = 0
> [  354.660992] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
> [  354.661001] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
> [  354.661008] dwc2 3f980000.usb:   urb->status = 0
> [  354.661054] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
> [  354.661065] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
> [  354.661072] dwc2 3f980000.usb:   urb->status = 0
> [  354.661107] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
> [  354.661120] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
> [  354.661127] dwc2 3f980000.usb:   urb->status = 0
> [  354.661146] dwc2 3f980000.usb: DWC OTG HCD URB Dequeue
> [  354.661158] dwc2 3f980000.usb: Called usb_hcd_giveback_urb()
> [  354.661165] dwc2 3f980000.usb:   urb->status = 0

Btw, 

Just in case, I also applied all recent pending dwc2 patches I found at
linux-usb (even trivial unrelated ones) at:

        https://git.linuxtv.org/mchehab/experimental.git/log/?h=dwc2_patches

No differences. ISOCH is still broken.

If anyone wants to see the full logs, it is there:
        https://pastebin.com/XJYyTwPv


Cheers,
Mauro
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to