Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-07 Thread Minas Harutyunyan
Hi,

On 4/7/2017 12:18 PM, Felipe Balbi wrote:
>
> Hi,
>
> John Stultz  writes:
> >
> wrote:
>> On 4/4/2017 11:03 PM, John Stultz wrote:
>>>
>>> I did notice when cating the regdump file, I saw:
>>> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
>>> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
>>> regdump again to verify it wasn't just chance).
>>>
>>> Let me know if there is anything else you need!
>>>
>>
>> Could you please apply attached patch and try again.
>
> Thanks for sending this out!
>
> So it didn't build against mainline, but I tweaked it a bit:
> -   if ((hsotg->core_params->dma_enable > 0 &&
> -hsotg->core_params->dma_desc_enable <= 0) ||
> +   if ((hsotg->params.host_dma > 0 &&
> +hsotg->params.dma_desc_enable <= 0) ||
>
>
> But I'm still seeing similar behavior:
> [   91.517417] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 5 -
> ChHltd set, but reason is unknown
> [   91.526693] dwc2 f72c.usb: hcint 0x0002, intsts 0x0429
> [   91.533613] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x8003a0cc, offset 1302
> [   91.534102] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x73ff5a7d, offset 4
> [  169.116866] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 1 -
> ChHltd set, but reason is unknown
> [  169.126146] dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
> [  170.699334] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x36000807, offset 68
>
> And I'm not seeing the "Channel can't be halted" error from the new logic.
>
> Full dmesg and regdump attached.
>
> Let me know if there is something else I should try.
>
> thanks
> -john
 Ok. To enable full dwc2 debug messages, please set USB_DWC2_DEBUG and
 USB_DWC2_VERBOSE in Kernel configuration file.
>>>
>>> Huh. So interestingly adding USB_DWC2_VERBOSE changes some behavior,
>>> which suggests some racy logic somewhere.
>>>
>>> In the dmesg logs provided earlier, I would unplug the micro-B cable,
>>> and the hub would be enabled, detect the mouse, reset to slow-speed,
>>> and then both mouse and eth would be detected (see below for topology
>>> and quirkiness here).
>>>
>>> [  609.726186] dwc2 f72c.usb: Set speed to high-speed
>>> [  609.731529] usb 1-1: new high-speed USB device number 26 using dwc2
>>> [  609.921447] dwc2 f72c.usb: Set speed to high-speed
>>> [  609.949694] hub 1-1:1.0: USB hub found
>>> [  609.954067] hub 1-1:1.0: 3 ports detected
>>> [  610.246008] dwc2 f72c.usb: Set speed to full-speed
>>> [  610.251388] usb 1-1.1: new low-speed USB device number 27 using dwc2
>>> [  610.486571] usb 1-1: USB disconnect, device number 26
>>> [  615.722267] dwc2 f72c.usb: Set speed to full-speed
>>> [  615.727580] usb 1-1: new full-speed USB device number 31 using dwc2
>>> [  615.914674] dwc2 f72c.usb: Set speed to full-speed
>>> [  615.939233] usb 1-1: not running at top speed; connect to a high speed 
>>> hub
>>> [  615.949500] hub 1-1:1.0: USB hub found
>>> [  615.953815] hub 1-1:1.0: 3 ports detected
>>> [  616.246178] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.251539] usb 1-1.1: new low-speed USB device number 32 using dwc2
>>> [  616.342042] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.393609] input: Logitech USB Optical Mouse as
>>> /devices/platform/soc/f72c.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:046D:C058.0004/input/in4
>>> [  616.408426] hid-generic 0003:046D:C058.0004: input,hidraw0: USB HID
>>> v1.11 Mouse [Logitech USB Optical Mouse] on usb-f72c.usb-1.1/inpu0
>>> [  616.506057] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.511449] usb 1-1.2: new full-speed USB device number 33 using dwc2
>>> [  616.598037] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.626890] usb 1-1.2: not running at top speed; connect to a high speed 
>>> hub
>>> [  617.098791] asix 1-1.2:1.0 eth0: register 'asix' at
>>> usb-f72c.usb-1.2, ASIX AX88772B USB 2.0 Ethernet,
>>> 00:50:b6:18:82:98
>>> [  617.112147] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
>>> [  618.660076] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
>>> [  618.682072] asix 1-1.2:1.0 eth0: link up, 100Mbps, full-duplex, lpa 
>>> 0xCDE1
>>>
>>>
>>> But with DWC2_VERBOSE enabled, I'm usually seeing the following (this
>>> is what hit the console, not from the full dmesg output):
>>>
>>> [   83.658545] dwc2 f72c.usb: Set speed to high-speed
>>> [   83.663897] usb 1-1: new high-speed USB device number 2 using dwc2
>>> [   83.854516] dwc2 f72c.usb: Set speed to high-speed
>>> [   83.901097] hub 1-1:1.0: USB hub found
>>> [   83.910054] hub 1-1:1.0: 3 ports detected
>>> [   84.241753] dwc2 

Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-07 Thread Minas Harutyunyan
Hi,

On 4/7/2017 12:18 PM, Felipe Balbi wrote:
>
> Hi,
>
> John Stultz  writes:
> mailto:minas.harutyun...@synopsys.com>>
> wrote:
>> On 4/4/2017 11:03 PM, John Stultz wrote:
>>>
>>> I did notice when cating the regdump file, I saw:
>>> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
>>> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
>>> regdump again to verify it wasn't just chance).
>>>
>>> Let me know if there is anything else you need!
>>>
>>
>> Could you please apply attached patch and try again.
>
> Thanks for sending this out!
>
> So it didn't build against mainline, but I tweaked it a bit:
> -   if ((hsotg->core_params->dma_enable > 0 &&
> -hsotg->core_params->dma_desc_enable <= 0) ||
> +   if ((hsotg->params.host_dma > 0 &&
> +hsotg->params.dma_desc_enable <= 0) ||
>
>
> But I'm still seeing similar behavior:
> [   91.517417] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 5 -
> ChHltd set, but reason is unknown
> [   91.526693] dwc2 f72c.usb: hcint 0x0002, intsts 0x0429
> [   91.533613] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x8003a0cc, offset 1302
> [   91.534102] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x73ff5a7d, offset 4
> [  169.116866] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 1 -
> ChHltd set, but reason is unknown
> [  169.126146] dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
> [  170.699334] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x36000807, offset 68
>
> And I'm not seeing the "Channel can't be halted" error from the new logic.
>
> Full dmesg and regdump attached.
>
> Let me know if there is something else I should try.
>
> thanks
> -john
 Ok. To enable full dwc2 debug messages, please set USB_DWC2_DEBUG and
 USB_DWC2_VERBOSE in Kernel configuration file.
>>>
>>> Huh. So interestingly adding USB_DWC2_VERBOSE changes some behavior,
>>> which suggests some racy logic somewhere.
>>>
>>> In the dmesg logs provided earlier, I would unplug the micro-B cable,
>>> and the hub would be enabled, detect the mouse, reset to slow-speed,
>>> and then both mouse and eth would be detected (see below for topology
>>> and quirkiness here).
>>>
>>> [  609.726186] dwc2 f72c.usb: Set speed to high-speed
>>> [  609.731529] usb 1-1: new high-speed USB device number 26 using dwc2
>>> [  609.921447] dwc2 f72c.usb: Set speed to high-speed
>>> [  609.949694] hub 1-1:1.0: USB hub found
>>> [  609.954067] hub 1-1:1.0: 3 ports detected
>>> [  610.246008] dwc2 f72c.usb: Set speed to full-speed
>>> [  610.251388] usb 1-1.1: new low-speed USB device number 27 using dwc2
>>> [  610.486571] usb 1-1: USB disconnect, device number 26
>>> [  615.722267] dwc2 f72c.usb: Set speed to full-speed
>>> [  615.727580] usb 1-1: new full-speed USB device number 31 using dwc2
>>> [  615.914674] dwc2 f72c.usb: Set speed to full-speed
>>> [  615.939233] usb 1-1: not running at top speed; connect to a high speed 
>>> hub
>>> [  615.949500] hub 1-1:1.0: USB hub found
>>> [  615.953815] hub 1-1:1.0: 3 ports detected
>>> [  616.246178] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.251539] usb 1-1.1: new low-speed USB device number 32 using dwc2
>>> [  616.342042] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.393609] input: Logitech USB Optical Mouse as
>>> /devices/platform/soc/f72c.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:046D:C058.0004/input/in4
>>> [  616.408426] hid-generic 0003:046D:C058.0004: input,hidraw0: USB HID
>>> v1.11 Mouse [Logitech USB Optical Mouse] on usb-f72c.usb-1.1/inpu0
>>> [  616.506057] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.511449] usb 1-1.2: new full-speed USB device number 33 using dwc2
>>> [  616.598037] dwc2 f72c.usb: Set speed to full-speed
>>> [  616.626890] usb 1-1.2: not running at top speed; connect to a high speed 
>>> hub
>>> [  617.098791] asix 1-1.2:1.0 eth0: register 'asix' at
>>> usb-f72c.usb-1.2, ASIX AX88772B USB 2.0 Ethernet,
>>> 00:50:b6:18:82:98
>>> [  617.112147] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
>>> [  618.660076] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
>>> [  618.682072] asix 1-1.2:1.0 eth0: link up, 100Mbps, full-duplex, lpa 
>>> 0xCDE1
>>>
>>>
>>> But with DWC2_VERBOSE enabled, I'm usually seeing the following (this
>>> is what hit the console, not from the full dmesg output):
>>>
>>> [   83.658545] dwc2 f72c.usb: Set speed to high-speed
>>> [   83.663897] usb 1-1: new high-speed USB device number 2 using dwc2
>>> [   83.854516] dwc2 f72c.usb: Set speed to high-speed
>>> [   83.901097] hub 1-1:1.0: USB hub found
>>> [   83.910054] hub 1-1:1.0: 3 ports detected
>>> [   84.241753] dwc2 f72c.usb: Set speed to full-speed
>>> [   84.247008] usb 1-1.1: 

Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-07 Thread Felipe Balbi

Hi,

John Stultz  writes:
 >
 wrote:
> On 4/4/2017 11:03 PM, John Stultz wrote:
>>
>> I did notice when cating the regdump file, I saw:
>> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
>> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
>> regdump again to verify it wasn't just chance).
>>
>> Let me know if there is anything else you need!
>>
>
> Could you please apply attached patch and try again.

 Thanks for sending this out!

 So it didn't build against mainline, but I tweaked it a bit:
 -   if ((hsotg->core_params->dma_enable > 0 &&
 -hsotg->core_params->dma_desc_enable <= 0) ||
 +   if ((hsotg->params.host_dma > 0 &&
 +hsotg->params.dma_desc_enable <= 0) ||


 But I'm still seeing similar behavior:
 [   91.517417] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 5 -
 ChHltd set, but reason is unknown
 [   91.526693] dwc2 f72c.usb: hcint 0x0002, intsts 0x0429
 [   91.533613] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
 0x8003a0cc, offset 1302
 [   91.534102] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
 0x73ff5a7d, offset 4
 [  169.116866] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 1 -
 ChHltd set, but reason is unknown
 [  169.126146] dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
 [  170.699334] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
 0x36000807, offset 68

 And I'm not seeing the "Channel can't be halted" error from the new logic.

 Full dmesg and regdump attached.

 Let me know if there is something else I should try.

 thanks
 -john
>>> Ok. To enable full dwc2 debug messages, please set USB_DWC2_DEBUG and
>>> USB_DWC2_VERBOSE in Kernel configuration file.
>>
>> Huh. So interestingly adding USB_DWC2_VERBOSE changes some behavior,
>> which suggests some racy logic somewhere.
>>
>> In the dmesg logs provided earlier, I would unplug the micro-B cable,
>> and the hub would be enabled, detect the mouse, reset to slow-speed,
>> and then both mouse and eth would be detected (see below for topology
>> and quirkiness here).
>>
>> [  609.726186] dwc2 f72c.usb: Set speed to high-speed
>> [  609.731529] usb 1-1: new high-speed USB device number 26 using dwc2
>> [  609.921447] dwc2 f72c.usb: Set speed to high-speed
>> [  609.949694] hub 1-1:1.0: USB hub found
>> [  609.954067] hub 1-1:1.0: 3 ports detected
>> [  610.246008] dwc2 f72c.usb: Set speed to full-speed
>> [  610.251388] usb 1-1.1: new low-speed USB device number 27 using dwc2
>> [  610.486571] usb 1-1: USB disconnect, device number 26
>> [  615.722267] dwc2 f72c.usb: Set speed to full-speed
>> [  615.727580] usb 1-1: new full-speed USB device number 31 using dwc2
>> [  615.914674] dwc2 f72c.usb: Set speed to full-speed
>> [  615.939233] usb 1-1: not running at top speed; connect to a high speed hub
>> [  615.949500] hub 1-1:1.0: USB hub found
>> [  615.953815] hub 1-1:1.0: 3 ports detected
>> [  616.246178] dwc2 f72c.usb: Set speed to full-speed
>> [  616.251539] usb 1-1.1: new low-speed USB device number 32 using dwc2
>> [  616.342042] dwc2 f72c.usb: Set speed to full-speed
>> [  616.393609] input: Logitech USB Optical Mouse as
>> /devices/platform/soc/f72c.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:046D:C058.0004/input/in4
>> [  616.408426] hid-generic 0003:046D:C058.0004: input,hidraw0: USB HID
>> v1.11 Mouse [Logitech USB Optical Mouse] on usb-f72c.usb-1.1/inpu0
>> [  616.506057] dwc2 f72c.usb: Set speed to full-speed
>> [  616.511449] usb 1-1.2: new full-speed USB device number 33 using dwc2
>> [  616.598037] dwc2 f72c.usb: Set speed to full-speed
>> [  616.626890] usb 1-1.2: not running at top speed; connect to a high speed 
>> hub
>> [  617.098791] asix 1-1.2:1.0 eth0: register 'asix' at
>> usb-f72c.usb-1.2, ASIX AX88772B USB 2.0 Ethernet,
>> 00:50:b6:18:82:98
>> [  617.112147] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
>> [  618.660076] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
>> [  618.682072] asix 1-1.2:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
>>
>>
>> But with DWC2_VERBOSE enabled, I'm usually seeing the following (this
>> is what hit the console, not from the full dmesg output):
>>
>> [   83.658545] dwc2 f72c.usb: Set speed to high-speed
>> [   83.663897] usb 1-1: new high-speed USB device number 2 using dwc2
>> [   83.854516] dwc2 f72c.usb: Set speed to high-speed
>> [   83.901097] hub 1-1:1.0: USB hub found
>> [   83.910054] hub 1-1:1.0: 3 ports detected
>> [   84.241753] dwc2 f72c.usb: Set speed to full-speed
>> [   84.247008] usb 1-1.1: new low-speed USB device number 3 using dwc2
>> [   84.479943] usb 1-1: USB disconnect, device number 2
>> 

Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-07 Thread Felipe Balbi

Hi,

John Stultz  writes:
 mailto:minas.harutyun...@synopsys.com>>
 wrote:
> On 4/4/2017 11:03 PM, John Stultz wrote:
>>
>> I did notice when cating the regdump file, I saw:
>> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
>> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
>> regdump again to verify it wasn't just chance).
>>
>> Let me know if there is anything else you need!
>>
>
> Could you please apply attached patch and try again.

 Thanks for sending this out!

 So it didn't build against mainline, but I tweaked it a bit:
 -   if ((hsotg->core_params->dma_enable > 0 &&
 -hsotg->core_params->dma_desc_enable <= 0) ||
 +   if ((hsotg->params.host_dma > 0 &&
 +hsotg->params.dma_desc_enable <= 0) ||


 But I'm still seeing similar behavior:
 [   91.517417] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 5 -
 ChHltd set, but reason is unknown
 [   91.526693] dwc2 f72c.usb: hcint 0x0002, intsts 0x0429
 [   91.533613] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
 0x8003a0cc, offset 1302
 [   91.534102] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
 0x73ff5a7d, offset 4
 [  169.116866] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 1 -
 ChHltd set, but reason is unknown
 [  169.126146] dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
 [  170.699334] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
 0x36000807, offset 68

 And I'm not seeing the "Channel can't be halted" error from the new logic.

 Full dmesg and regdump attached.

 Let me know if there is something else I should try.

 thanks
 -john
>>> Ok. To enable full dwc2 debug messages, please set USB_DWC2_DEBUG and
>>> USB_DWC2_VERBOSE in Kernel configuration file.
>>
>> Huh. So interestingly adding USB_DWC2_VERBOSE changes some behavior,
>> which suggests some racy logic somewhere.
>>
>> In the dmesg logs provided earlier, I would unplug the micro-B cable,
>> and the hub would be enabled, detect the mouse, reset to slow-speed,
>> and then both mouse and eth would be detected (see below for topology
>> and quirkiness here).
>>
>> [  609.726186] dwc2 f72c.usb: Set speed to high-speed
>> [  609.731529] usb 1-1: new high-speed USB device number 26 using dwc2
>> [  609.921447] dwc2 f72c.usb: Set speed to high-speed
>> [  609.949694] hub 1-1:1.0: USB hub found
>> [  609.954067] hub 1-1:1.0: 3 ports detected
>> [  610.246008] dwc2 f72c.usb: Set speed to full-speed
>> [  610.251388] usb 1-1.1: new low-speed USB device number 27 using dwc2
>> [  610.486571] usb 1-1: USB disconnect, device number 26
>> [  615.722267] dwc2 f72c.usb: Set speed to full-speed
>> [  615.727580] usb 1-1: new full-speed USB device number 31 using dwc2
>> [  615.914674] dwc2 f72c.usb: Set speed to full-speed
>> [  615.939233] usb 1-1: not running at top speed; connect to a high speed hub
>> [  615.949500] hub 1-1:1.0: USB hub found
>> [  615.953815] hub 1-1:1.0: 3 ports detected
>> [  616.246178] dwc2 f72c.usb: Set speed to full-speed
>> [  616.251539] usb 1-1.1: new low-speed USB device number 32 using dwc2
>> [  616.342042] dwc2 f72c.usb: Set speed to full-speed
>> [  616.393609] input: Logitech USB Optical Mouse as
>> /devices/platform/soc/f72c.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:046D:C058.0004/input/in4
>> [  616.408426] hid-generic 0003:046D:C058.0004: input,hidraw0: USB HID
>> v1.11 Mouse [Logitech USB Optical Mouse] on usb-f72c.usb-1.1/inpu0
>> [  616.506057] dwc2 f72c.usb: Set speed to full-speed
>> [  616.511449] usb 1-1.2: new full-speed USB device number 33 using dwc2
>> [  616.598037] dwc2 f72c.usb: Set speed to full-speed
>> [  616.626890] usb 1-1.2: not running at top speed; connect to a high speed 
>> hub
>> [  617.098791] asix 1-1.2:1.0 eth0: register 'asix' at
>> usb-f72c.usb-1.2, ASIX AX88772B USB 2.0 Ethernet,
>> 00:50:b6:18:82:98
>> [  617.112147] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
>> [  618.660076] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
>> [  618.682072] asix 1-1.2:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1
>>
>>
>> But with DWC2_VERBOSE enabled, I'm usually seeing the following (this
>> is what hit the console, not from the full dmesg output):
>>
>> [   83.658545] dwc2 f72c.usb: Set speed to high-speed
>> [   83.663897] usb 1-1: new high-speed USB device number 2 using dwc2
>> [   83.854516] dwc2 f72c.usb: Set speed to high-speed
>> [   83.901097] hub 1-1:1.0: USB hub found
>> [   83.910054] hub 1-1:1.0: 3 ports detected
>> [   84.241753] dwc2 f72c.usb: Set speed to full-speed
>> [   84.247008] usb 1-1.1: new low-speed USB device number 3 using dwc2
>> [   84.479943] usb 1-1: USB disconnect, device number 2
>> [   89.646499] dwc2 f72c.usb: Set speed to full-speed

Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-06 Thread Minas Harutyunyan
On 4/6/2017 1:03 AM, John Stultz wrote:
>
>
> On Wed, Apr 5, 2017 at 5:58 AM, Minas Harutyunyan
> >
> wrote:
>> On 4/4/2017 11:03 PM, John Stultz wrote:
>>>
>>> I did notice when cating the regdump file, I saw:
>>> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
>>> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
>>> regdump again to verify it wasn't just chance).
>>>
>>> Let me know if there is anything else you need!
>>>
>>
>> Could you please apply attached patch and try again.
>
> Thanks for sending this out!
>
> So it didn't build against mainline, but I tweaked it a bit:
> -   if ((hsotg->core_params->dma_enable > 0 &&
> -hsotg->core_params->dma_desc_enable <= 0) ||
> +   if ((hsotg->params.host_dma > 0 &&
> +hsotg->params.dma_desc_enable <= 0) ||
>
>
> But I'm still seeing similar behavior:
> [   91.517417] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 5 -
> ChHltd set, but reason is unknown
> [   91.526693] dwc2 f72c.usb: hcint 0x0002, intsts 0x0429
> [   91.533613] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x8003a0cc, offset 1302
> [   91.534102] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x73ff5a7d, offset 4
> [  169.116866] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 1 -
> ChHltd set, but reason is unknown
> [  169.126146] dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
> [  170.699334] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x36000807, offset 68
>
> And I'm not seeing the "Channel can't be halted" error from the new logic.
>
> Full dmesg and regdump attached.
>
> Let me know if there is something else I should try.
>
> thanks
> -john
Ok. To enable full dwc2 debug messages, please set USB_DWC2_DEBUG and 
USB_DWC2_VERBOSE in Kernel configuration file.
Also provide the topology of connected devices(class, speed) to dwc2
root hub.
Thanks,
Minas


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-06 Thread Minas Harutyunyan
On 4/6/2017 1:03 AM, John Stultz wrote:
>
>
> On Wed, Apr 5, 2017 at 5:58 AM, Minas Harutyunyan
> mailto:minas.harutyun...@synopsys.com>>
> wrote:
>> On 4/4/2017 11:03 PM, John Stultz wrote:
>>>
>>> I did notice when cating the regdump file, I saw:
>>> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
>>> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
>>> regdump again to verify it wasn't just chance).
>>>
>>> Let me know if there is anything else you need!
>>>
>>
>> Could you please apply attached patch and try again.
>
> Thanks for sending this out!
>
> So it didn't build against mainline, but I tweaked it a bit:
> -   if ((hsotg->core_params->dma_enable > 0 &&
> -hsotg->core_params->dma_desc_enable <= 0) ||
> +   if ((hsotg->params.host_dma > 0 &&
> +hsotg->params.dma_desc_enable <= 0) ||
>
>
> But I'm still seeing similar behavior:
> [   91.517417] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 5 -
> ChHltd set, but reason is unknown
> [   91.526693] dwc2 f72c.usb: hcint 0x0002, intsts 0x0429
> [   91.533613] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x8003a0cc, offset 1302
> [   91.534102] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x73ff5a7d, offset 4
> [  169.116866] dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 1 -
> ChHltd set, but reason is unknown
> [  169.126146] dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
> [  170.699334] asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length
> 0x36000807, offset 68
>
> And I'm not seeing the "Channel can't be halted" error from the new logic.
>
> Full dmesg and regdump attached.
>
> Let me know if there is something else I should try.
>
> thanks
> -john
Ok. To enable full dwc2 debug messages, please set USB_DWC2_DEBUG and 
USB_DWC2_VERBOSE in Kernel configuration file.
Also provide the topology of connected devices(class, speed) to dwc2
root hub.
Thanks,
Minas


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-05 Thread Minas Harutyunyan
Hi,

On 4/4/2017 11:03 PM, John Stultz wrote:
> On Tue, Apr 4, 2017 at 12:38 AM, Felipe Balbi
>  wrote:
>>
>> Hi,
>>
>> Minas Harutyunyan  writes:
   We've noticed that when using usb ethernet adapters on HiKey, we
 occasionally see errors like:

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029

 Sometimes followed up by a usb error in the driver, something like:
 asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, 
 offset 68

 Curious if you've seen any reports like this?
>
> The core version is less than 2.71a, am I right?

 So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
 which looks like DWC2_CORE_REV_3_00a

> Please send full debug log to do more investigation.

 Full dmesg, or is there special debugging you want me to enable?
>>>
>>> Full dmesg around issue.

> Also send us regdump after connecting ethernet adapter.

 Sorry, can you clarify how to generate this?
>>>
>>> cat regdump. To locate dwc2 regdump file: cd /; find -name regdump
>>
>> this won't work if his distro doesn't mount debugfs. Please give
>> complete instructions ;-)
>>
>> # mkdir -p /d
>> # mount -t debugfs none /d
>> # cd /d
>> # find . -name regdump
>>
>> The directory name is the same name as the dwc2 device name, AFAICT. So,
>> check your DTS for the name of the device.
>
> Thanks for the extra details! I didn't have DEBUG_FS built in, so this
> helped clue me in.
>
> Attached are dmesg including the issue and the regdump.
>
> I did notice when cating the regdump file, I saw:
> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
> regdump again to verify it wasn't just chance).
>
> Let me know if there is anything else you need!
>
> thanks
> -john
>

Could you please apply attached patch and try again.

Thanks,
Minas
From 412bf7e3dad8a20af937f3682a08116b654deb02 Mon Sep 17 00:00:00 2001
Message-Id: 
<412bf7e3dad8a20af937f3682a08116b654deb02.1491410224.git.hmi...@synopsys.com>
From: Minas Harutyunyan 
Date: Mon, 11 Jul 2016 03:31:17 -0700
Subject: [PATCH] usb: dwc2: hcd: Fix host channel halt flow

According databook in Buffer and External DMA mode
non-split periodic channels can't be halted.

Change-Id: I7c7c4e16309dda7a3b5af34020d46366c357ed49
Signed-off-by: Minas Harutyunyan 
---
 drivers/usb/dwc2/hcd.c | 19 +++
 1 file changed, 19 insertions(+)

diff --git a/drivers/usb/dwc2/hcd.c b/drivers/usb/dwc2/hcd.c
index f4ef159b538e..4e6ee398efb7 100644
--- a/drivers/usb/dwc2/hcd.c
+++ b/drivers/usb/dwc2/hcd.c
@@ -979,6 +979,25 @@ void dwc2_hc_halt(struct dwc2_hsotg *hsotg, struct 
dwc2_host_chan *chan,
 
if (dbg_hc(chan))
dev_vdbg(hsotg->dev, "%s()\n", __func__);
+
+   /*
+* In buffer DMA or external DMA mode channel can't be halted
+* for non-split periodic channels. At the end of the next
+* uframe/frame (in the worst case), the core generates a channel
+* halted and disables the channel automatically.
+*/
+   if ((hsotg->core_params->dma_enable > 0 &&
+hsotg->core_params->dma_desc_enable <= 0) ||
+   (hsotg->hw_params.arch == GHWCFG2_EXT_DMA_ARCH)) {
+   if (!chan->do_split &&
+   (chan->ep_type == USB_ENDPOINT_XFER_ISOC ||
+chan->ep_type == USB_ENDPOINT_XFER_INT)) {
+   dev_err(hsotg->dev, "%s() Channel can't be halted\n",
+   __func__);
+   return;
+   }
+   }
+
if (halt_status == DWC2_HC_XFER_NO_HALT_STATUS)
dev_err(hsotg->dev, "!!! halt_status = %d !!!\n", halt_status);
 
-- 
2.11.0



Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-05 Thread Minas Harutyunyan
Hi,

On 4/4/2017 11:03 PM, John Stultz wrote:
> On Tue, Apr 4, 2017 at 12:38 AM, Felipe Balbi
>  wrote:
>>
>> Hi,
>>
>> Minas Harutyunyan  writes:
   We've noticed that when using usb ethernet adapters on HiKey, we
 occasionally see errors like:

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029

 Sometimes followed up by a usb error in the driver, something like:
 asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, 
 offset 68

 Curious if you've seen any reports like this?
>
> The core version is less than 2.71a, am I right?

 So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
 which looks like DWC2_CORE_REV_3_00a

> Please send full debug log to do more investigation.

 Full dmesg, or is there special debugging you want me to enable?
>>>
>>> Full dmesg around issue.

> Also send us regdump after connecting ethernet adapter.

 Sorry, can you clarify how to generate this?
>>>
>>> cat regdump. To locate dwc2 regdump file: cd /; find -name regdump
>>
>> this won't work if his distro doesn't mount debugfs. Please give
>> complete instructions ;-)
>>
>> # mkdir -p /d
>> # mount -t debugfs none /d
>> # cd /d
>> # find . -name regdump
>>
>> The directory name is the same name as the dwc2 device name, AFAICT. So,
>> check your DTS for the name of the device.
>
> Thanks for the extra details! I didn't have DEBUG_FS built in, so this
> helped clue me in.
>
> Attached are dmesg including the issue and the regdump.
>
> I did notice when cating the regdump file, I saw:
> dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
> twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
> regdump again to verify it wasn't just chance).
>
> Let me know if there is anything else you need!
>
> thanks
> -john
>

Could you please apply attached patch and try again.

Thanks,
Minas
From 412bf7e3dad8a20af937f3682a08116b654deb02 Mon Sep 17 00:00:00 2001
Message-Id: 
<412bf7e3dad8a20af937f3682a08116b654deb02.1491410224.git.hmi...@synopsys.com>
From: Minas Harutyunyan 
Date: Mon, 11 Jul 2016 03:31:17 -0700
Subject: [PATCH] usb: dwc2: hcd: Fix host channel halt flow

According databook in Buffer and External DMA mode
non-split periodic channels can't be halted.

Change-Id: I7c7c4e16309dda7a3b5af34020d46366c357ed49
Signed-off-by: Minas Harutyunyan 
---
 drivers/usb/dwc2/hcd.c | 19 +++
 1 file changed, 19 insertions(+)

diff --git a/drivers/usb/dwc2/hcd.c b/drivers/usb/dwc2/hcd.c
index f4ef159b538e..4e6ee398efb7 100644
--- a/drivers/usb/dwc2/hcd.c
+++ b/drivers/usb/dwc2/hcd.c
@@ -979,6 +979,25 @@ void dwc2_hc_halt(struct dwc2_hsotg *hsotg, struct 
dwc2_host_chan *chan,
 
if (dbg_hc(chan))
dev_vdbg(hsotg->dev, "%s()\n", __func__);
+
+   /*
+* In buffer DMA or external DMA mode channel can't be halted
+* for non-split periodic channels. At the end of the next
+* uframe/frame (in the worst case), the core generates a channel
+* halted and disables the channel automatically.
+*/
+   if ((hsotg->core_params->dma_enable > 0 &&
+hsotg->core_params->dma_desc_enable <= 0) ||
+   (hsotg->hw_params.arch == GHWCFG2_EXT_DMA_ARCH)) {
+   if (!chan->do_split &&
+   (chan->ep_type == USB_ENDPOINT_XFER_ISOC ||
+chan->ep_type == USB_ENDPOINT_XFER_INT)) {
+   dev_err(hsotg->dev, "%s() Channel can't be halted\n",
+   __func__);
+   return;
+   }
+   }
+
if (halt_status == DWC2_HC_XFER_NO_HALT_STATUS)
dev_err(hsotg->dev, "!!! halt_status = %d !!!\n", halt_status);
 
-- 
2.11.0



Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-04 Thread John Stultz
On Tue, Apr 4, 2017 at 12:38 AM, Felipe Balbi
 wrote:
>
> Hi,
>
> Minas Harutyunyan  writes:
>>>   We've noticed that when using usb ethernet adapters on HiKey, we
>>> occasionally see errors like:
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>>
>>> Sometimes followed up by a usb error in the driver, something like:
>>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, 
>>> offset 68
>>>
>>> Curious if you've seen any reports like this?

 The core version is less than 2.71a, am I right?
>>>
>>> So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
>>> which looks like DWC2_CORE_REV_3_00a
>>>
 Please send full debug log to do more investigation.
>>>
>>> Full dmesg, or is there special debugging you want me to enable?
>>
>> Full dmesg around issue.
>>>
 Also send us regdump after connecting ethernet adapter.
>>>
>>> Sorry, can you clarify how to generate this?
>>
>> cat regdump. To locate dwc2 regdump file: cd /; find -name regdump
>
> this won't work if his distro doesn't mount debugfs. Please give
> complete instructions ;-)
>
> # mkdir -p /d
> # mount -t debugfs none /d
> # cd /d
> # find . -name regdump
>
> The directory name is the same name as the dwc2 device name, AFAICT. So,
> check your DTS for the name of the device.

Thanks for the extra details! I didn't have DEBUG_FS built in, so this
helped clue me in.

Attached are dmesg including the issue and the regdump.

I did notice when cating the regdump file, I saw:
dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
regdump again to verify it wasn't just chance).

Let me know if there is anything else you need!

thanks
-john


hikey-usb.dmesg
Description: Binary data


hikey-usb.regdump
Description: Binary data


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-04 Thread John Stultz
On Tue, Apr 4, 2017 at 12:38 AM, Felipe Balbi
 wrote:
>
> Hi,
>
> Minas Harutyunyan  writes:
>>>   We've noticed that when using usb ethernet adapters on HiKey, we
>>> occasionally see errors like:
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>>
>>> Sometimes followed up by a usb error in the driver, something like:
>>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, 
>>> offset 68
>>>
>>> Curious if you've seen any reports like this?

 The core version is less than 2.71a, am I right?
>>>
>>> So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
>>> which looks like DWC2_CORE_REV_3_00a
>>>
 Please send full debug log to do more investigation.
>>>
>>> Full dmesg, or is there special debugging you want me to enable?
>>
>> Full dmesg around issue.
>>>
 Also send us regdump after connecting ethernet adapter.
>>>
>>> Sorry, can you clarify how to generate this?
>>
>> cat regdump. To locate dwc2 regdump file: cd /; find -name regdump
>
> this won't work if his distro doesn't mount debugfs. Please give
> complete instructions ;-)
>
> # mkdir -p /d
> # mount -t debugfs none /d
> # cd /d
> # find . -name regdump
>
> The directory name is the same name as the dwc2 device name, AFAICT. So,
> check your DTS for the name of the device.

Thanks for the extra details! I didn't have DEBUG_FS built in, so this
helped clue me in.

Attached are dmesg including the issue and the regdump.

I did notice when cating the regdump file, I saw:
dwc2 f72c.usb: Mode Mismatch Interrupt: currently in Host mode
twice. (You'll see it 4 times in the dmesg around 1077 as I cat'ed
regdump again to verify it wasn't just chance).

Let me know if there is anything else you need!

thanks
-john


hikey-usb.dmesg
Description: Binary data


hikey-usb.regdump
Description: Binary data


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-04 Thread Felipe Balbi

Hi,

Minas Harutyunyan  writes:
>>   We've noticed that when using usb ethernet adapters on HiKey, we
>> occasionally see errors like:
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>
>> Sometimes followed up by a usb error in the driver, something like:
>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, 
>> offset 68
>>
>> Curious if you've seen any reports like this?
>>>
>>> The core version is less than 2.71a, am I right?
>>
>> So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
>> which looks like DWC2_CORE_REV_3_00a
>>
>>> Please send full debug log to do more investigation.
>>
>> Full dmesg, or is there special debugging you want me to enable?
>
> Full dmesg around issue.
>>
>>> Also send us regdump after connecting ethernet adapter.
>>
>> Sorry, can you clarify how to generate this?
>
> cat regdump. To locate dwc2 regdump file: cd /; find -name regdump

this won't work if his distro doesn't mount debugfs. Please give
complete instructions ;-)

# mkdir -p /d
# mount -t debugfs none /d
# cd /d
# find . -name regdump

The directory name is the same name as the dwc2 device name, AFAICT. So,
check your DTS for the name of the device.

-- 
balbi


signature.asc
Description: PGP signature


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-04 Thread Felipe Balbi

Hi,

Minas Harutyunyan  writes:
>>   We've noticed that when using usb ethernet adapters on HiKey, we
>> occasionally see errors like:
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>
>> Sometimes followed up by a usb error in the driver, something like:
>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, 
>> offset 68
>>
>> Curious if you've seen any reports like this?
>>>
>>> The core version is less than 2.71a, am I right?
>>
>> So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
>> which looks like DWC2_CORE_REV_3_00a
>>
>>> Please send full debug log to do more investigation.
>>
>> Full dmesg, or is there special debugging you want me to enable?
>
> Full dmesg around issue.
>>
>>> Also send us regdump after connecting ethernet adapter.
>>
>> Sorry, can you clarify how to generate this?
>
> cat regdump. To locate dwc2 regdump file: cd /; find -name regdump

this won't work if his distro doesn't mount debugfs. Please give
complete instructions ;-)

# mkdir -p /d
# mount -t debugfs none /d
# cd /d
# find . -name regdump

The directory name is the same name as the dwc2 device name, AFAICT. So,
check your DTS for the name of the device.

-- 
balbi


signature.asc
Description: PGP signature


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-04 Thread Minas Harutyunyan
Hi,

On 4/4/2017 7:04 AM, John Stultz wrote:
> On Mon, Apr 3, 2017 at 5:54 AM, Minas Harutyunyan
>  wrote:
>> On 4/3/2017 9:23 AM, John Youn wrote:
>>> On 03/31/2017 04:04 PM, John Stultz wrote:
 On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  
 wrote:
> Hey John,
>   We've noticed that when using usb ethernet adapters on HiKey, we
> occasionally see errors like:
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>
> Sometimes followed up by a usb error in the driver, something like:
> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 
> 68
>
> Curious if you've seen any reports like this?
>>
>> The core version is less than 2.71a, am I right?
>
> So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
> which looks like DWC2_CORE_REV_3_00a
>
>> Please send full debug log to do more investigation.
>
> Full dmesg, or is there special debugging you want me to enable?

Full dmesg around issue.
>
>> Also send us regdump after connecting ethernet adapter.
>
> Sorry, can you clarify how to generate this?

cat regdump. To locate dwc2 regdump file: cd /; find -name regdump

>
> thanks
> -john
>

Thanks,
Minas


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-04 Thread Minas Harutyunyan
Hi,

On 4/4/2017 7:04 AM, John Stultz wrote:
> On Mon, Apr 3, 2017 at 5:54 AM, Minas Harutyunyan
>  wrote:
>> On 4/3/2017 9:23 AM, John Youn wrote:
>>> On 03/31/2017 04:04 PM, John Stultz wrote:
 On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  
 wrote:
> Hey John,
>   We've noticed that when using usb ethernet adapters on HiKey, we
> occasionally see errors like:
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>
> Sometimes followed up by a usb error in the driver, something like:
> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 
> 68
>
> Curious if you've seen any reports like this?
>>
>> The core version is less than 2.71a, am I right?
>
> So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
> which looks like DWC2_CORE_REV_3_00a
>
>> Please send full debug log to do more investigation.
>
> Full dmesg, or is there special debugging you want me to enable?

Full dmesg around issue.
>
>> Also send us regdump after connecting ethernet adapter.
>
> Sorry, can you clarify how to generate this?

cat regdump. To locate dwc2 regdump file: cd /; find -name regdump

>
> thanks
> -john
>

Thanks,
Minas


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-03 Thread John Stultz
On Mon, Apr 3, 2017 at 5:54 AM, Minas Harutyunyan
 wrote:
> On 4/3/2017 9:23 AM, John Youn wrote:
>> On 03/31/2017 04:04 PM, John Stultz wrote:
>>> On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
 Hey John,
   We've noticed that when using usb ethernet adapters on HiKey, we
 occasionally see errors like:

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029

 Sometimes followed up by a usb error in the driver, something like:
 asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 
 68

 Curious if you've seen any reports like this?
>
> The core version is less than 2.71a, am I right?

So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
which looks like DWC2_CORE_REV_3_00a

> Please send full debug log to do more investigation.

Full dmesg, or is there special debugging you want me to enable?

> Also send us regdump after connecting ethernet adapter.

Sorry, can you clarify how to generate this?

thanks
-john


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-03 Thread John Stultz
On Mon, Apr 3, 2017 at 5:54 AM, Minas Harutyunyan
 wrote:
> On 4/3/2017 9:23 AM, John Youn wrote:
>> On 03/31/2017 04:04 PM, John Stultz wrote:
>>> On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
 Hey John,
   We've noticed that when using usb ethernet adapters on HiKey, we
 occasionally see errors like:

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029

 dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
 but reason is unknown
 dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029

 Sometimes followed up by a usb error in the driver, something like:
 asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 
 68

 Curious if you've seen any reports like this?
>
> The core version is less than 2.71a, am I right?

So it looks like its reporting 0x4f54300a for hsotg->regs + GSNPSID
which looks like DWC2_CORE_REV_3_00a

> Please send full debug log to do more investigation.

Full dmesg, or is there special debugging you want me to enable?

> Also send us regdump after connecting ethernet adapter.

Sorry, can you clarify how to generate this?

thanks
-john


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-03 Thread Minas Harutyunyan
Hi,

On 4/3/2017 9:23 AM, John Youn wrote:
> On 03/31/2017 04:04 PM, John Stultz wrote:
>> On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
>>> Hey John,
>>>   We've noticed that when using usb ethernet adapters on HiKey, we
>>> occasionally see errors like:
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>>
>>> Sometimes followed up by a usb error in the driver, something like:
>>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68
>>>
>>> Curious if you've seen any reports like this?
>>
>> Hey John,
>>   Just wanted to check in again on this to see if you've seen anything
>> like it? I've not had too much time to debug it, but my attempts so
>> far haven't been productive.
>>
>
> I don't think I've seen that.
>
> We'll try to take a look this week.
>
> Thanks,
> John
>
>
>

The core version is less than 2.71a, am I right?
Please send full debug log to do more investigation.
Also send us regdump after connecting ethernet adapter.

Thanks,
Minas


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-03 Thread Minas Harutyunyan
Hi,

On 4/3/2017 9:23 AM, John Youn wrote:
> On 03/31/2017 04:04 PM, John Stultz wrote:
>> On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
>>> Hey John,
>>>   We've noticed that when using usb ethernet adapters on HiKey, we
>>> occasionally see errors like:
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>>
>>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>>> but reason is unknown
>>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>>
>>> Sometimes followed up by a usb error in the driver, something like:
>>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68
>>>
>>> Curious if you've seen any reports like this?
>>
>> Hey John,
>>   Just wanted to check in again on this to see if you've seen anything
>> like it? I've not had too much time to debug it, but my attempts so
>> far haven't been productive.
>>
>
> I don't think I've seen that.
>
> We'll try to take a look this week.
>
> Thanks,
> John
>
>
>

The core version is less than 2.71a, am I right?
Please send full debug log to do more investigation.
Also send us regdump after connecting ethernet adapter.

Thanks,
Minas


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-02 Thread John Youn
On 03/31/2017 04:04 PM, John Stultz wrote:
> On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
>> Hey John,
>>   We've noticed that when using usb ethernet adapters on HiKey, we
>> occasionally see errors like:
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>
>> Sometimes followed up by a usb error in the driver, something like:
>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68
>>
>> Curious if you've seen any reports like this?
>
> Hey John,
>   Just wanted to check in again on this to see if you've seen anything
> like it? I've not had too much time to debug it, but my attempts so
> far haven't been productive.
>

I don't think I've seen that.

We'll try to take a look this week.

Thanks,
John




Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-04-02 Thread John Youn
On 03/31/2017 04:04 PM, John Stultz wrote:
> On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
>> Hey John,
>>   We've noticed that when using usb ethernet adapters on HiKey, we
>> occasionally see errors like:
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>>
>> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
>> but reason is unknown
>> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>>
>> Sometimes followed up by a usb error in the driver, something like:
>> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68
>>
>> Curious if you've seen any reports like this?
>
> Hey John,
>   Just wanted to check in again on this to see if you've seen anything
> like it? I've not had too much time to debug it, but my attempts so
> far haven't been productive.
>

I don't think I've seen that.

We'll try to take a look this week.

Thanks,
John




Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-03-31 Thread John Stultz
On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
> Hey John,
>   We've noticed that when using usb ethernet adapters on HiKey, we
> occasionally see errors like:
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>
> Sometimes followed up by a usb error in the driver, something like:
> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68
>
> Curious if you've seen any reports like this?

Hey John,
  Just wanted to check in again on this to see if you've seen anything
like it? I've not had too much time to debug it, but my attempts so
far haven't been productive.

thanks
-john


Re: dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-03-31 Thread John Stultz
On Thu, Mar 2, 2017 at 12:00 PM, John Stultz  wrote:
> Hey John,
>   We've noticed that when using usb ethernet adapters on HiKey, we
> occasionally see errors like:
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029
>
> dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
> but reason is unknown
> dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029
>
> Sometimes followed up by a usb error in the driver, something like:
> asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68
>
> Curious if you've seen any reports like this?

Hey John,
  Just wanted to check in again on this to see if you've seen anything
like it? I've not had too much time to debug it, but my attempts so
far haven't been productive.

thanks
-john


dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-03-02 Thread John Stultz
Hey John,
  We've noticed that when using usb ethernet adapters on HiKey, we
occasionally see errors like:

dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
but reason is unknown
dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029

dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
but reason is unknown
dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029

Sometimes followed up by a usb error in the driver, something like:
asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68

Curious if you've seen any reports like this?

We haven't seen it with a older 4.4 tree we've been using (which had a
bit more out of tree changes to it), but it was discovered with the
4.9 branch we have, and I've confirmed its happening with the upstream
kernel too, so I need to try to jump back to some older trees to see
where it might have first cropped up.

thanks
-john


dwc2_hc_chhltd_intr_dma - ChHltd set errors?

2017-03-02 Thread John Stultz
Hey John,
  We've noticed that when using usb ethernet adapters on HiKey, we
occasionally see errors like:

dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 0 - ChHltd set,
but reason is unknown
dwc2 f72c.usb: hcint 0x0002, intsts 0x06200029

dwc2 f72c.usb: dwc2_hc_chhltd_intr_dma: Channel 11 - ChHltd set,
but reason is unknown
dwc2 f72c.usb: hcint 0x0002, intsts 0x04200029

Sometimes followed up by a usb error in the driver, something like:
asix 1-1.2:1.0 eth0: asix_rx_fixup() Bad Header Length 0x36000807, offset 68

Curious if you've seen any reports like this?

We haven't seen it with a older 4.4 tree we've been using (which had a
bit more out of tree changes to it), but it was discovered with the
4.9 branch we have, and I've confirmed its happening with the upstream
kernel too, so I need to try to jump back to some older trees to see
where it might have first cropped up.

thanks
-john