raspberrypi / linux

Kernel source tree for Raspberry Pi-provided kernel builds. Issues unrelated to the linux kernel should be posted on the community forum at https://forums.raspberrypi.com/
Other
11.06k stars 4.97k forks source link

CM3+custom board+last strecth+firmware 4.14.61-v7 #2650

Open JTrotta opened 6 years ago

JTrotta commented 6 years ago

I'm using a custom board with CM3, with two smcs9514 chip connected together. Since last week I'm facing with the following problem: Aug 13 07:26:09 raspberrypi kernel: [ 143.547999] usb 1-1.5-port1: disabled by hub (EMI?), re-enabling... Aug 13 07:26:09 raspberrypi kernel: [ 143.548022] usb 1-1.5.1: USB disconnect, device number 19 Aug 13 07:26:09 raspberrypi kernel: [ 143.548342] smsc95xx 1-1.5.1:1.0 eth1: unregister 'smsc95xx' usb-3f980000.usb-1.5.1, smsc95xx USB 2.0 Ethernet Aug 13 07:26:09 raspberrypi kernel: [ 143.548437] smsc95xx 1-1.5.1:1.0 eth1: hardware isn't capable of remote wakeup Aug 13 07:26:09 raspberrypi kernel: [ 143.896976] usb 1-1.5.1: new high-speed USB device number 20 using dwc_otg Aug 13 07:26:09 raspberrypi kernel: [ 144.027412] usb 1-1.5.1: New USB device found, idVendor=0424, idProduct=ec00 Aug 13 07:26:09 raspberrypi kernel: [ 144.027425] usb 1-1.5.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 Aug 13 07:26:09 raspberrypi kernel: [ 144.030295] smsc95xx v1.0.6 Aug 13 07:26:09 raspberrypi kernel: [ 144.132618] smsc95xx 1-1.5.1:1.0 eth1: register 'smsc95xx' at usb-3f980000.usb-1.5.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:5c:92:c7 Aug 13 07:26:10 raspberrypi kernel: [ 144.319734] smsc95xx 1-1.5.1:1.0 eth1: hardware isn't capable of remote wakeup Aug 13 07:26:10 raspberrypi kernel: [ 144.319877] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready Aug 13 07:27:47 raspberrypi kernel: [ 241.851995] usb 1-1.5-port1: disabled by hub (EMI?), re-enabling... Aug 13 07:27:47 raspberrypi kernel: [ 241.852019] usb 1-1.5.1: USB disconnect, device number 20 Aug 13 07:27:47 raspberrypi kernel: [ 241.852338] smsc95xx 1-1.5.1:1.0 eth1: unregister 'smsc95xx' usb-3f980000.usb-1.5.1, smsc95xx USB 2.0 Ethernet Aug 13 07:27:47 raspberrypi kernel: [ 241.852432] smsc95xx 1-1.5.1:1.0 eth1: hardware isn't capable of remote wakeup Aug 13 07:27:47 raspberrypi kernel: [ 241.857806] smsc95xx 1-1.5.1:1.0 eth1 (unregistering): Failed to read reg index 0x00000114: -19 Aug 13 07:27:47 raspberrypi kernel: [ 241.857835] smsc95xx 1-1.5.1:1.0 eth1 (unregistering): Error reading MII_ACCESS Aug 13 07:27:47 raspberrypi kernel: [ 241.857850] smsc95xx 1-1.5.1:1.0 eth1 (unregistering): MII is busy in smsc95xx_mdio_read Aug 13 07:27:47 raspberrypi kernel: [ 241.857865] smsc95xx 1-1.5.1:1.0 eth1 (unregistering): Failed to read MII_BMSR Aug 13 07:27:47 raspberrypi kernel: [ 242.107827] hub 1-1.5:1.0: hub_ext_port_status failed (err = -71) Aug 13 07:27:47 raspberrypi kernel: [ 242.107838] usb 1-1.5-port1: connect-debounce failed

The smsc9414 is disconnected and reconnected several times, then, after few seconds the CPU freeze, and must be un-powered and re-powered. This happen in my car, when I power the board using the car battery. The strange things is that in my office, with an external power unit, everything works fine for weeks. Any hints? JJ

pelwell commented 6 years ago

I suspect the problem is caused by power fluctuations or EM interference - the USB driver certainly thinks so:

usb 1-1.5-port1: disabled by hub (EMI?)

Try a different power source (at least as a trial), shielding the unit, etc.

JTrotta commented 6 years ago

@pelwell I was wondering if the (EMI?) hints is a real cause , or just a suspicion by the code writers. I mean is the driver capable to check different causes or just suggest one for all?

pelwell commented 6 years ago

It's probably just suspicion, but that doesn't really change anything - you've shown that an environmental factor is affecting performance, so now you have to work through the differences to work out which one was significant in this case. On a regular Pi vcgencmd get_throttled would show you if undervoltage has been detected, but that isn't usually an option on a CM carrier so you'll need some other way of measuring the supply rail voltages under load.

gnulux commented 4 years ago

Hi, Did you solve this problem ? I've encountered the same behavior with a Raspberry 3 . Wondering if this is really related to power supply or if could be a simple driver bug ? Ramdomly , i loose the network interface on this remote device. The only choice i have is to ask my customer to power off/on.

My config is : Linux dev104 4.19.66-v7+ #1253 SMP Thu Aug 15 11:49:46 BST 2019 armv7l GNU/Linux

firmware : ii bluez-firmware 1.2-3+rpt7 all Firmware for Bluetooth devices ii firmware-atheros 1:20161130-3+rpt4 all Binary firmware for Atheros wireless cards ii firmware-brcm80211 1:20161130-3+rpt4 all Binary firmware for Broadcom 802.11 wireless cards ii firmware-libertas 1:20161130-3+rpt4 all Binary firmware for Marvell wireless cards ii firmware-misc-nonfree 1:20161130-3+rpt4 all Binary firmware for various drivers in the Linux kernel ii firmware-realtek 1:20161130-3+rpt4 all Binary firmware for Realtek wired/wifi/BT adapters ii rpi-update 20140705 all Raspberry Pi firmware updating tool

Aug 5 21:58:20 dev104 kernel: [460676.993757] NYET/NAK/ACK/other in non-error case, 0x00000002 Aug 5 21:58:20 dev104 kernel: [460676.993782] NYET/NAK/ACK/other in non-error case, 0x00000002 Aug 5 21:58:20 dev104 kernel: [460676.993807] NYET/NAK/ACK/other in non-error case, 0x00000002 Aug 5 21:58:20 dev104 kernel: [460676.993844] smsc95xx 1-1.1:1.0 eth0: Failed to read reg index 0x00000118: -71 Aug 5 21:58:20 dev104 kernel: [460676.993851] smsc95xx 1-1.1:1.0 eth0: Error reading MII_DATA Aug 5 21:58:20 dev104 kernel: [460676.993859] smsc95xx 1-1.1:1.0 eth0: Failed to read MII_BMSR Aug 5 21:58:20 dev104 kernel: [460677.050427] usb usb1-port1: disabled by hub (EMI?), re-enabling... Aug 5 21:58:20 dev104 kernel: [460677.050446] usb 1-1: USB disconnect, device number 2 Aug 5 21:58:20 dev104 kernel: [460677.050452] usb 1-1.1: USB disconnect, device number 3 Aug 5 21:58:20 dev104 kernel: [460677.050639] smsc95xx 1-1.1:1.0 eth0: unregister 'smsc95xx' usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet Aug 5 21:58:20 dev104 kernel: [460677.050706] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup Aug 5 21:58:20 dev104 kernel: [460677.100887] usb 1-1.3: USB disconnect, device number 4 Aug 5 21:58:20 dev104 kernel: [460677.391652] usb 1-1.4: USB disconnect, device number 5 Aug 5 21:58:20 dev104 kernel: [460677.391669] usb 1-1.4.1: USB disconnect, device number 7 Aug 5 21:58:20 dev104 kernel: [460677.396115] usb 1-1.4.4: USB disconnect, device number 9 Aug 5 21:58:20 dev104 kernel: [460677.402647] usb 1-1.5: USB disconnect, device number 6 Aug 5 21:58:20 dev104 kernel: [460677.402674] usb 1-1.5.1: USB disconnect, device number 8 Aug 5 21:58:20 dev104 kernel: [460677.403421] smsc95xx 1-1.5.1:1.0 eth1: unregister 'smsc95xx' usb-3f980000.usb-1.5.1, smsc95xx USB 2.0 Ethernet Aug 5 21:58:20 dev104 kernel: [460677.403630] smsc95xx 1-1.5.1:1.0 eth1: hardware isn't capable of remote wakeup Aug 5 21:58:20 dev104 kernel: [460677.490839] usb 1-1.5.4: USB disconnect, device number 10 Aug 5 21:58:21 dev104 kernel: [460677.970404] Indeed it is in host mode hprt0 = 00001501 Aug 5 21:58:21 dev104 kernel: [460678.180402] usb 1-1: new high-speed USB device number 11 using dwc_otg Aug 5 21:58:21 dev104 kernel: [460678.180541] Indeed it is in host mode hprt0 = 00001101 Aug 5 21:58:21 dev104 kernel: [460678.420528] usb 1-1: New USB device found, idVendor=0424, idProduct=9514, bcdDevice= 2.00 Aug 5 21:58:21 dev104 kernel: [460678.420538] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 Aug 5 21:58:21 dev104 kernel: [460678.420949] hub 1-1:1.0: USB hub found Aug 5 21:58:21 dev104 kernel: [460678.420998] hub 1-1:1.0: 5 ports detected Aug 5 21:58:22 dev104 kernel: [460678.740383] usb 1-1.1: new high-speed USB device number 12 using dwc_otg Aug 5 21:58:22 dev104 kernel: [460678.870565] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00, bcdDevice= 2.00 Aug 5 21:58:22 dev104 kernel: [460678.870573] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 Aug 5 21:58:22 dev104 kernel: [460678.873122] smsc95xx v1.0.6 Aug 5 21:58:22 dev104 kernel: [460678.972568] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, 00:01:c0:24:8f:ea Aug 5 21:58:22 dev104 kernel: [460679.070483] usb 1-1.3: new full-speed USB device number 13 using dwc_otg Aug 5 21:58:22 dev104 kernel: [460679.208652] usb 1-1.3: New USB device found, idVendor=0d8c, idProduct=0014, bcdDevice= 1.00 Aug 5 21:58:22 dev104 kernel: [460679.208667] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0 Aug 5 21:58:22 dev104 kernel: [460679.208677] usb 1-1.3: Product: USB Audio Device Aug 5 21:58:22 dev104 kernel: [460679.208686] usb 1-1.3: Manufacturer: C-Media Electronics Inc. Aug 5 21:58:22 dev104 kernel: [460679.236188] input: C-Media Electronics Inc. USB Audio Device as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.3/0003:0D8C:0014.0002/input/input1 Aug 5 21:58:22 dev104 kernel: [460679.300907] hid-generic 0003:0D8C:0014.0002: input,hidraw0: USB HID v1.00 Device [C-Media Electronics Inc. USB Audio Device] on usb-3f980000.usb-1.3/input3 Aug 5 21:58:22 dev104 kernel: [460679.400524] usb 1-1.4: new high-speed USB device number 14 using dwc_otg Aug 5 21:58:22 dev104 kernel: [460679.530622] usb 1-1.4: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.11 Aug 5 21:58:22 dev104 kernel: [460679.530630] usb 1-1.4: New USB device strings: Mfr=0, Product=1, SerialNumber=0 Aug 5 21:58:22 dev104 kernel: [460679.530635] usb 1-1.4: Product: USB 2.0 Hub Aug 5 21:58:22 dev104 kernel: [460679.531031] hub 1-1.4:1.0: USB hub found Aug 5 21:58:22 dev104 kernel: [460679.531096] hub 1-1.4:1.0: 4 ports detected Aug 5 21:58:22 dev104 kernel: [460679.640390] usb 1-1.5: new high-speed USB device number 15 using dwc_otg Aug 5 21:58:23 dev104 kernel: [460679.770566] usb 1-1.5: New USB device found, idVendor=0424, idProduct=9514, bcdDevice= 2.00 Aug 5 21:58:23 dev104 kernel: [460679.770575] usb 1-1.5: New USB device strings: Mfr=0, Product=0, SerialNumber=0 Aug 5 21:58:23 dev104 kernel: [460679.770984] hub 1-1.5:1.0: USB hub found Aug 5 21:58:23 dev104 kernel: [460679.771049] hub 1-1.5:1.0: 5 ports detected Aug 5 21:58:23 dev104 kernel: [460679.970394] usb 1-1.4.1: new full-speed USB device number 16 using dwc_otg Aug 5 21:58:23 dev104 kernel: [460680.201138] usb 1-1.4.1: not running at top speed; connect to a high speed hub Aug 5 21:58:23 dev104 kernel: [460680.203135] usb 1-1.4.1: New USB device found, idVendor=072f, idProduct=223e, bcdDevice= 2.07 Aug 5 21:58:23 dev104 kernel: [460680.203147] usb 1-1.4.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 Aug 5 21:58:23 dev104 kernel: [460680.203157] usb 1-1.4.1: Product: ACR1252 Reader Aug 5 21:58:23 dev104 kernel: [460680.203166] usb 1-1.4.1: Manufacturer: ACS Aug 5 21:58:23 dev104 kernel: [460680.271326] usb 1-1.4.1: usbfs: process 8080 (node /opt/filln) did not claim interface 0 before use Aug 5 21:58:23 dev104 kernel: [460680.300520] usb 1-1.5.1: new high-speed USB device number 17 using dwc_otg Aug 5 21:58:23 dev104 kernel: [460680.440642] usb 1-1.5.1: New USB device found, idVendor=0424, idProduct=ec00, bcdDevice= 2.00 Aug 5 21:58:23 dev104 kernel: [460680.440652] usb 1-1.5.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 Aug 5 21:58:23 dev104 kernel: [460680.443208] smsc95xx v1.0.6

pelwell commented 4 years ago

Have you tried using the upstream dwc2 driver instead? Put dtoverlay=dwc2,dr_mode=host.