CAUTION: musb: Babble Interrupt Occurred

Hi!

I’m having this same issue with my BeagleBone Black. I have an USB keyboard connected direct on the beagle’s usb port and I’m using ubuntu 13.04 with kernel 3.12.

After some random amount of time, the keyboard stop working and the only thing I see on dmesg is:

CAUTION: musb: Babble Interrupt Occurred

If I remove keyboard, nothing appears on dmesg and even with the keyboard removed, if I do a lsusb it still shows up as been connected. The only way to get it working again is doing a full reboot.

I’ve already tried to do things like:

echo ‘on’ > /sys/bus/usb/devices/usb1/power/control

on rc.local and to make a script that keeps on a infinite loop doing a cat on /proc/bus/usb/xxx/yyy, but the problem persist.

Thanks

Renato

What version of the 3.12 kernel do you have? The latest version of the 3.12 kernel should have a patch that fixes that problem.

My kernel is:

3.12.3-00082-g6cf1f10-dirty

I tried kernel 3.13 and 3.14 but they didn’t worked for me because I need capemanager.

Thanks

No one is really support the capemgr in v3.12.x, nor does it really work.

Regards,

Very strange, because I have capemanager working here:

`

ubuntu@arm:~$ uname -a
Linux arm 3.12.3-00082-g6cf1f10-dirty #1 SMP Fri Dec 6 11:44:27 BRST 2013 armv7l armv7l armv7l GNU/Linux

`

`

ubuntu@arm:~$ cat /sys/devices/bone_capemgr.6/slots
0: 54:PF—
1: 55:PF—
2: 56:PF—
3: 57:PF—
5: ff:P-O-L Override Board Name,00A0,Override Manuf,NEO-UART0
6: ff:P-O-L Override Board Name,00A0,Override Manuf,NEO-UART1-485
7: ff:P-O-L Override Board Name,00A0,Override Manuf,NEO-UART2
8: ff:P-O-L Override Board Name,00A0,Override Manuf,NEO-UART3
9: ff:P-O-L Override Board Name,00A0,Override Manuf,NEO-UART4
10: ff:P-O-L Override Board Name,00A0,Override Manuf,NEO-UART5

`

`

ubuntu@arm:~$ dmesg | grep capemgr
[ 0.000000] Kernel command line: console= fixrtc capemgr.enable_partno=NEO-UART0,NEO-UART1-485,NEO-UART2,NEO-UART3,NEO-UART4,NEO-UART5 root=/dev/mmcblk0p2 ro rootfstype=ext4 rootwait
[ 0.184969] bone-capemgr bone_capemgr.6: Baseboard: ‘A335BNLT,0A5C,3313BBBK0501’
[ 0.184996] bone-capemgr bone_capemgr.6: compatible-baseboard=ti,beaglebone-black
[ 0.222939] bone-capemgr bone_capemgr.6: slot #0: No cape found
[ 0.262936] bone-capemgr bone_capemgr.6: slot #1: No cape found
[ 0.302934] bone-capemgr bone_capemgr.6: slot #2: No cape found
[ 0.342933] bone-capemgr bone_capemgr.6: slot #3: No cape found
[ 0.342977] bone-capemgr bone_capemgr.6: slot #4: specific override
[ 0.343004] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 4
[ 0.343020] bone-capemgr bone_capemgr.6: slot #4: ‘Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G’
[ 0.343102] bone-capemgr bone_capemgr.6: enabled_partno part_number ‘NEO-UART0’, version ‘N/A’
[ 0.343114] bone-capemgr bone_capemgr.6: slot #5: generic override
[ 0.343126] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 5
[ 0.343141] bone-capemgr bone_capemgr.6: slot #5: ‘Override Board Name,00A0,Override Manuf,NEO-UART0’
[ 0.343207] bone-capemgr bone_capemgr.6: enabled_partno part_number ‘NEO-UART1-485’, version ‘N/A’
[ 0.343220] bone-capemgr bone_capemgr.6: slot #6: generic override
[ 0.343231] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 6
[ 0.343247] bone-capemgr bone_capemgr.6: slot #6: ‘Override Board Name,00A0,Override Manuf,NEO-UART1-485’
[ 0.343307] bone-capemgr bone_capemgr.6: enabled_partno part_number ‘NEO-UART2’, version ‘N/A’
[ 0.343320] bone-capemgr bone_capemgr.6: slot #7: generic override
[ 0.343331] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 7
[ 0.343346] bone-capemgr bone_capemgr.6: slot #7: ‘Override Board Name,00A0,Override Manuf,NEO-UART2’
[ 0.343414] bone-capemgr bone_capemgr.6: enabled_partno part_number ‘NEO-UART3’, version ‘N/A’
[ 0.343429] bone-capemgr bone_capemgr.6: slot #8: generic override
[ 0.343442] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 8
[ 0.343457] bone-capemgr bone_capemgr.6: slot #8: ‘Override Board Name,00A0,Override Manuf,NEO-UART3’
[ 0.343529] bone-capemgr bone_capemgr.6: enabled_partno part_number ‘NEO-UART4’, version ‘N/A’

[ 0.343542] bone-capemgr bone_capemgr.6: slot #9: generic override
[ 0.343554] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 9
[ 0.343569] bone-capemgr bone_capemgr.6: slot #9: ‘Override Board Name,00A0,Override Manuf,NEO-UART4’
[ 0.343630] bone-capemgr bone_capemgr.6: enabled_partno part_number ‘NEO-UART5’, version ‘N/A’
[ 0.343643] bone-capemgr bone_capemgr.6: slot #10: generic override
[ 0.343655] bone-capemgr bone_capemgr.6: bone: Using override eeprom data at slot 10
[ 0.343670] bone-capemgr bone_capemgr.6: slot #10: ‘Override Board Name,00A0,Override Manuf,NEO-UART5’
[ 0.344028] bone-capemgr bone_capemgr.6: loader: before slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.344044] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.344128] bone-capemgr bone_capemgr.6: loader: before slot-5 NEO-UART0:00A0 (prio 0)
[ 0.344141] bone-capemgr bone_capemgr.6: loader: check slot-5 NEO-UART0:00A0 (prio 0)
[ 0.344222] bone-capemgr bone_capemgr.6: loader: before slot-6 NEO-UART1-485:00A0 (prio 0)
[ 0.344236] bone-capemgr bone_capemgr.6: loader: check slot-6 NEO-UART1-485:00A0 (prio 0)
[ 0.344315] bone-capemgr bone_capemgr.6: loader: before slot-7 NEO-UART2:00A0 (prio 0)
[ 0.344330] bone-capemgr bone_capemgr.6: loader: check slot-7 NEO-UART2:00A0 (prio 0)
[ 0.344405] bone-capemgr bone_capemgr.6: loader: before slot-8 NEO-UART3:00A0 (prio 0)
[ 0.344418] bone-capemgr bone_capemgr.6: loader: check slot-8 NEO-UART3:00A0 (prio 0)
[ 0.344496] bone-capemgr bone_capemgr.6: loader: before slot-9 NEO-UART4:00A0 (prio 0)
[ 0.344509] bone-capemgr bone_capemgr.6: loader: check slot-9 NEO-UART4:00A0 (prio 0)
[ 0.344548] bone-capemgr bone_capemgr.6: initialized OK.
[ 0.347060] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 0.347100] bone-capemgr bone_capemgr.6: loader: after slot-5 NEO-UART0:00A0 (prio 0)
[ 0.347115] bone-capemgr bone_capemgr.6: slot #5: Requesting part number/version based 'NEO-UART0-00A0.dtbo
[ 0.347133] bone-capemgr bone_capemgr.6: slot #5: Requesting firmware ‘NEO-UART0-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 0.347405] bone-capemgr bone_capemgr.6: loader: after slot-6 NEO-UART1-485:00A0 (prio 0)
[ 0.347438] bone-capemgr bone_capemgr.6: loader: after slot-7 NEO-UART2:00A0 (prio 0)
[ 0.347463] bone-capemgr bone_capemgr.6: loader: after slot-8 NEO-UART3:00A0 (prio 0)
[ 0.347484] bone-capemgr bone_capemgr.6: loader: after slot-9 NEO-UART4:00A0 (prio 0)

[ 0.350275] bone-capemgr bone_capemgr.6: loader: before slot-10 NEO-UART5:00A0 (prio 0)
[ 0.350291] bone-capemgr bone_capemgr.6: loader: check slot-10 NEO-UART5:00A0 (prio 0)
[ 0.350309] bone-capemgr bone_capemgr.6: loader: after slot-10 NEO-UART5:00A0 (prio 0)
[ 3.884455] bone-capemgr bone_capemgr.6: slot #5: dtbo ‘NEO-UART0-00A0.dtbo’ loaded; converting to live tree
[ 3.884665] bone-capemgr bone_capemgr.6: slot #5: #2 overlays
[ 3.885562] bone-capemgr bone_capemgr.6: slot #6: Requesting part number/version based 'NEO-UART1-485-00A0.dtbo
[ 3.885584] bone-capemgr bone_capemgr.6: slot #6: Requesting firmware ‘NEO-UART1-485-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 3.886898] bone-capemgr bone_capemgr.6: slot #6: dtbo ‘NEO-UART1-485-00A0.dtbo’ loaded; converting to live tree
[ 3.887238] bone-capemgr bone_capemgr.6: slot #6: #2 overlays
[ 3.888249] bone-capemgr bone_capemgr.6: slot #7: Requesting part number/version based 'NEO-UART2-00A0.dtbo
[ 3.888272] bone-capemgr bone_capemgr.6: slot #7: Requesting firmware ‘NEO-UART2-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 3.889736] bone-capemgr bone_capemgr.6: slot #7: dtbo ‘NEO-UART2-00A0.dtbo’ loaded; converting to live tree
[ 3.889962] bone-capemgr bone_capemgr.6: slot #7: #2 overlays
[ 3.890459] bone-capemgr bone_capemgr.6: slot #8: Requesting part number/version based 'NEO-UART3-00A0.dtbo
[ 3.890481] bone-capemgr bone_capemgr.6: slot #8: Requesting firmware ‘NEO-UART3-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 3.891816] bone-capemgr bone_capemgr.6: slot #8: dtbo ‘NEO-UART3-00A0.dtbo’ loaded; converting to live tree
[ 3.892023] bone-capemgr bone_capemgr.6: slot #8: #2 overlays
[ 3.892787] bone-capemgr bone_capemgr.6: slot #9: Requesting part number/version based 'NEO-UART4-00A0.dtbo
[ 3.892806] bone-capemgr bone_capemgr.6: slot #9: Requesting firmware ‘NEO-UART4-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 3.894528] bone-capemgr bone_capemgr.6: slot #9: dtbo ‘NEO-UART4-00A0.dtbo’ loaded; converting to live tree
[ 3.894760] bone-capemgr bone_capemgr.6: slot #9: #2 overlays
[ 3.895368] bone-capemgr bone_capemgr.6: slot #10: Requesting part number/version based 'NEO-UART5-00A0.dtbo
[ 3.895389] bone-capemgr bone_capemgr.6: slot #10: Requesting firmware ‘NEO-UART5-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 3.896831] bone-capemgr bone_capemgr.6: slot #10: dtbo ‘NEO-UART5-00A0.dtbo’ loaded; converting to live tree
[ 3.897076] bone-capemgr bone_capemgr.6: slot #10: #2 overlays
[ 3.906307] bone-capemgr bone_capemgr.6: slot #6: Applied #2 overlays.
[ 3.906325] bone-capemgr bone_capemgr.6: loader: done slot-6 NEO-UART1-485:00A0 (prio 0)
[ 3.906359] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)

[ 3.908897] bone-capemgr bone_capemgr.6: slot #8: Applied #2 overlays.
[ 3.908916] bone-capemgr bone_capemgr.6: loader: done slot-8 NEO-UART3:00A0 (prio 0)
[ 3.908949] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 3.909411] bone-capemgr bone_capemgr.6: slot #7: Applied #2 overlays.
[ 3.909429] bone-capemgr bone_capemgr.6: loader: done slot-7 NEO-UART2:00A0 (prio 0)
[ 3.909534] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 3.909842] bone-capemgr bone_capemgr.6: slot #5: Applied #2 overlays.
[ 3.909857] bone-capemgr bone_capemgr.6: loader: done slot-5 NEO-UART0:00A0 (prio 0)
[ 3.909934] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 3.911658] bone-capemgr bone_capemgr.6: slot #10: Applied #2 overlays.
[ 3.911674] bone-capemgr bone_capemgr.6: loader: done slot-10 NEO-UART5:00A0 (prio 0)
[ 3.911800] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 3.911858] bone-capemgr bone_capemgr.6: slot #9: Applied #2 overlays.
[ 3.911871] bone-capemgr bone_capemgr.6: loader: done slot-9 NEO-UART4:00A0 (prio 0)
[ 3.911897] bone-capemgr bone_capemgr.6: loader: check slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 3.911913] bone-capemgr bone_capemgr.6: loader: after slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)
[ 3.911925] bone-capemgr bone_capemgr.6: slot #4: Requesting part number/version based 'BB-BONE-EMMC-2G-00A0.dtbo
[ 3.911943] bone-capemgr bone_capemgr.6: slot #4: Requesting firmware ‘BB-BONE-EMMC-2G-00A0.dtbo’ for board-name ‘Bone-LT-eMMC-2G’, version ‘00A0’
[ 5.683930] bone-capemgr bone_capemgr.6: failed to load firmware ‘BB-BONE-EMMC-2G-00A0.dtbo’
[ 5.683957] bone-capemgr bone_capemgr.6: loader: failed to load slot-4 BB-BONE-EMMC-2G:00A0 (prio 1)

`

It works fine with the usarts, but lcd/spi/pwm it blows up pretty quickly..

If all you need is the usarts, we have a custom dtb for v3.14.x for you.

Regards,

I use a LCD connected via gpio ( setting the gpio pins thru /sys/class/gpio ) and a DS1307 realtime clock via i2c.

Do they work too on kernel 3.14? Could you point me to the 3.14 kernel and the custom dtb for usart? I need all usarts availables and UART1 needs to be 485.

[]'s

Renato

So the best i can do today on 3.14/3.15 would be:

#include "am335x-boneblack.dts"

&uart1 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart1_pins>;

        status = "okay";
};

&uart2 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart2_pins>;

        status = "okay";
};

&uart4 {
        pinctrl-names = "default";
        pinctrl-0 = <&uart4_pins>;

        status = "okay";
};

So 2/5 of what you need, so don't switch yet.

Regards,

Do you by any chance know in what revision the babble interrupt problem was fixed? Was it only fixed in 3.12 or also in other trees (e.g. 3.8)?

I’ve seen the babble interrupt on all of the kernels I have tried. 3.8, 3.12, and 3.14. I have also seen a lot of vbus errors during the boot process. Could the heart of the problem be the fact that the power filter capacitor is of lower capacitance than is recommended by the USB 2.0 spec?

Anyone know about the patch referenced here? Or any other workaround to make USB usable on BBB?

http://comments.gmane.org/gmane.linux.usb.general/87138

Try to use an USB hub with external power. This solved my problem.

I can confirm, that the issue can be solved by inserting an active USB hub (externally powered).

Zoli

Hi there.

My experience is different, namely that power on the hub is not essential to alleviate babble interrupts. I’ve seen lots of babble using a specific device (GNS-5890 ADS-B receiver from http://www.gns-gmbh.com/index.php?id=238&L=1) when hooked up directly to the BBB USB host port, but adding a non-powered hub or a non-powered USB-extender between device and host makes the babble interrupts that lock up the musb controller go away. Babble does still occur according to the kernel log but apparently no unrecoverable ones.

There has been some development on the musb kernel driver after the one referenced below by Ravi Babu, particularly George Cherian has done a series of patches implementing use of new babble prevention/diagnostic features in recent silicon revisions that seem to have fixed a lot of issues. The latest v7 of his “Add support for SW babble Control” series is at http://thread.gmane.org/gmane.linux.usb.general/111365. There is a lot of background information about babble in the threads of these patches for the curious and courageous of you ;).

How and if the patch has progressed into mainline or BBB kernels I havn’t checked (but my guess is they haven’t at all), and I haven’t come around testingit myself yet because our production systems run fine with the hub-workaround.

Mikkel

update information
4.1.0-rc7-bone7, use usb webcam logitech c920 to take pictures.
Babble interrupt issues still exist…
The following is the part of dmesg while having the issue

[ 349.815873] musb-hdrc musb-hdrc.1.auto: Babble
[ 349.820659] musb-hdrc: setup fifo_mode 4
[ 349.820706] musb-hdrc: 28/31 max ep, 16384/16384 memory
[ 349.821331] usb 1-1: USB disconnect, device number 2
[ 349.848235] ------------[ cut here ]------------
[ 349.848320] WARNING: CPU: 0 PID: 1666 at fs/sysfs/group.c:224 sysfs_remove_group+0x55/0x60()
[ 349.848391] sysfs group c0a3cfcc not found for kobject ‘event0’
[ 349.848408] Modules linked in: usb_f_acm u_serial usb_f_ecm g_multi usb_f_mass_storage usb_f_rndis u_ether libcomposite snd_usb_audio snd_hwdep snd_usbmidi_lib snd_seq_midi snd_seq_midi_event snd_rawmidi snd_pcm snd_seq snd_seq_device snd_timer evdev snd uvcvideo videobuf2_vmalloc videobuf2_memops soundcore videobuf2_core ti_am335x_adc kfifo_buf industrialio tda998x tilcdc omap_aes omap_sham ti_am335x_tsc omap_rng drm_kms_helper rng_core ti_am335x_tscadc uio_pdrv_genirq leds_gpio uio
[ 349.848747] CPU: 0 PID: 1666 Comm: v4l2grab Not tainted 4.1.0-rc6-bone6 #1
[ 349.848769] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 349.848850] [] (unwind_backtrace) from [] (show_stack+0x11/0x14)
[ 349.848917] [] (show_stack) from [] (warn_slowpath_common+0x57/0x84)
[ 349.849026] [] (warn_slowpath_common) from [] (warn_slowpath_fmt+0x23/0x2c)
[ 349.849079] [] (warn_slowpath_fmt) from [] (sysfs_remove_group+0x55/0x60)
[ 349.849133] [] (sysfs_remove_group) from [] (device_del+0x2d/0x16c)
[ 349.849204] [] (device_del) from [] (evdev_disconnect+0x16/0x3c [evdev])
[ 349.849286] [] (evdev_disconnect [evdev]) from [] (__input_unregister_device+0x65/0xe4)
[ 349.849329] [] (__input_unregister_device) from [] (input_unregister_device+0x2f/0x58)
[ 349.849469] [] (input_unregister_device) from [] (uvc_status_cleanup+0x2c/0x30 [uvcvideo])
[ 349.849602] [] (uvc_status_cleanup [uvcvideo]) from [] (uvc_delete+0xe/0xd0 [uvcvideo])
[ 349.849695] [] (uvc_delete [uvcvideo]) from [] (uvc_release+0x2e/0x30 [uvcvideo])
[ 349.849771] [] (uvc_release [uvcvideo]) from [] (v4l2_device_release+0x89/0xac)
[ 349.849814] [] (v4l2_device_release) from [] (device_release+0x23/0x60)
[ 349.849860] [] (device_release) from [] (kobject_cleanup+0x51/0x11c)
[ 349.849899] [] (kobject_cleanup) from [] (v4l2_release+0x37/0x54)
[ 349.849938] [] (v4l2_release) from [] (__fput+0x65/0x144)
[ 349.849994] [] (__fput) from [] (task_work_run+0x69/0x90)
[ 349.850036] [] (task_work_run) from [] (do_exit+0x22d/0x6dc)
[ 349.850071] [] (do_exit) from [] (do_group_exit+0x2d/0x6c)
[ 349.850108] [] (do_group_exit) from [] (__wake_up_parent+0x1/0x18)
[ 349.850131] —[ end trace e9fbe6cf6b19f635 ]—
[ 349.859582] ------------[ cut here ]------------
[ 349.859658] WARNING: CPU: 0 PID: 1666 at fs/sysfs/group.c:224 sysfs_remove_group+0x55/0x60()
[ 349.859681] sysfs group c0a3cfcc not found for kobject ‘input0’
[ 349.859699] Modules linked in: usb_f_acm u_serial usb_f_ecm g_multi usb_f_mass_storage usb_f_rndis u_ether libcomposite snd_usb_audio snd_hwdep snd_usbmidi_lib snd_seq_midi snd_seq_midi_event snd_rawmidi snd_pcm snd_seq snd_seq_device snd_timer evdev snd uvcvideo videobuf2_vmalloc videobuf2_memops soundcore videobuf2_core ti_am335x_adc kfifo_buf industrialio tda998x tilcdc omap_aes omap_sham ti_am335x_tsc omap_rng drm_kms_helper rng_core ti_am335x_tscadc uio_pdrv_genirq leds_gpio uio
[ 349.859968] CPU: 0 PID: 1666 Comm: v4l2grab Tainted: G W 4.1.0-rc6-bone6 #1
[ 349.859989] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 349.860066] [] (unwind_backtrace) from [] (show_stack+0x11/0x14)
[ 349.860131] [] (show_stack) from [] (warn_slowpath_common+0x57/0x84)
[ 349.860173] [] (warn_slowpath_common) from [] (warn_slowpath_fmt+0x23/0x2c)
[ 349.860212] [] (warn_slowpath_fmt) from [] (sysfs_remove_group+0x55/0x60)
[ 349.860264] [] (sysfs_remove_group) from [] (device_del+0x2d/0x16c)
[ 349.860309] [] (device_del) from [] (input_unregister_device+0x2f/0x58)
[ 349.860503] [] (input_unregister_device) from [] (uvc_status_cleanup+0x2c/0x30 [uvcvideo])
[ 349.860704] [] (uvc_status_cleanup [uvcvideo]) from [] (uvc_delete+0xe/0xd0 [uvcvideo])
[ 349.860797] [] (uvc_delete [uvcvideo]) from [] (uvc_release+0x2e/0x30 [uvcvideo])
[ 349.860925] [] (uvc_release [uvcvideo]) from [] (v4l2_device_release+0x89/0xac)
[ 349.860983] [] (v4l2_device_release) from [] (device_release+0x23/0x60)
[ 349.861032] [] (device_release) from [] (kobject_cleanup+0x51/0x11c)
[ 349.861071] [] (kobject_cleanup) from [] (v4l2_release+0x37/0x54)
[ 349.861110] [] (v4l2_release) from [] (__fput+0x65/0x144)
[ 349.861165] [] (__fput) from [] (task_work_run+0x69/0x90)
[ 349.861206] [] (task_work_run) from [] (do_exit+0x22d/0x6dc)
[ 349.861242] [] (do_exit) from [] (do_group_exit+0x2d/0x6c)
[ 349.861278] [] (do_group_exit) from [] (__wake_up_parent+0x1/0x18)
[ 349.861301] —[ end trace e9fbe6cf6b19f636 ]—
[ 349.861357] ------------[ cut here ]------------
[ 349.861391] WARNING: CPU: 0 PID: 1666 at fs/sysfs/group.c:224 sysfs_remove_group+0x55/0x60()
[ 349.861412] sysfs group c0a4ff00 not found for kobject ‘input0’
[ 349.861427] Modules linked in: usb_f_acm u_serial usb_f_ecm g_multi usb_f_mass_storage usb_f_rndis u_ether libcomposite snd_usb_audio snd_hwdep snd_usbmidi_lib snd_seq_midi snd_seq_midi_event snd_rawmidi snd_pcm snd_seq snd_seq_device snd_timer evdev snd uvcvideo videobuf2_vmalloc videobuf2_memops soundcore videobuf2_core ti_am335x_adc kfifo_buf industrialio tda998x tilcdc omap_aes omap_sham ti_am335x_tsc omap_rng drm_kms_helper rng_core ti_am335x_tscadc uio_pdrv_genirq leds_gpio uio
[ 349.861664] CPU: 0 PID: 1666 Comm: v4l2grab Tainted: G W 4.1.0-rc6-bone6 #1
[ 349.861684] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 349.861733] [] (unwind_backtrace) from [] (show_stack+0x11/0x14)
[ 349.861783] [] (show_stack) from [] (warn_slowpath_common+0x57/0x84)
[ 349.861824] [] (warn_slowpath_common) from [] (warn_slowpath_fmt+0x23/0x2c)
[ 349.861862] [] (warn_slowpath_fmt) from [] (sysfs_remove_group+0x55/0x60)
[ 349.861899] [] (sysfs_remove_group) from [] (sysfs_remove_groups+0x19/0x24)
[ 349.861939] [] (sysfs_remove_groups) from [] (device_remove_attrs+0x2f/0x44)
[ 349.861980] [] (device_remove_attrs) from [] (device_del+0xaf/0x16c)
[ 349.862019] [] (device_del) from [] (input_unregister_device+0x2f/0x58)
[ 349.862125] [] (input_unregister_device) from [] (uvc_status_cleanup+0x2c/0x30 [uvcvideo])
[ 349.862254] [] (uvc_status_cleanup [uvcvideo]) from [] (uvc_delete+0xe/0xd0 [uvcvideo])
[ 349.862344] [] (uvc_delete [uvcvideo]) from [] (uvc_release+0x2e/0x30 [uvcvideo])
[ 349.862413] [] (uvc_release [uvcvideo]) from [] (v4l2_device_release+0x89/0xac)
[ 349.862454] [] (v4l2_device_release) from [] (device_release+0x23/0x60)
[ 349.862493] [] (device_release) from [] (kobject_cleanup+0x51/0x11c)
[ 349.862530] [] (kobject_cleanup) from [] (v4l2_release+0x37/0x54)
[ 349.862565] [] (v4l2_release) from [] (__fput+0x65/0x144)
[ 349.862606] [] (__fput) from [] (task_work_run+0x69/0x90)
[ 349.862645] [] (task_work_run) from [] (do_exit+0x22d/0x6dc)
[ 349.862679] [] (do_exit) from [] (do_group_exit+0x2d/0x6c)
[ 349.862714] [] (do_group_exit) from [] (__wake_up_parent+0x1/0x18)
[ 349.862736] —[ end trace e9fbe6cf6b19f637 ]—
[ 349.862756] ------------[ cut here ]------------
[ 349.862788] WARNING: CPU: 0 PID: 1666 at fs/sysfs/group.c:224 sysfs_remove_group+0x55/0x60()
[ 349.862809] sysfs group c0a4ff10 not found for kobject ‘input0’
[ 349.862823] Modules linked in: usb_f_acm u_serial usb_f_ecm g_multi usb_f_mass_storage usb_f_rndis u_ether libcomposite snd_usb_audio snd_hwdep snd_usbmidi_lib snd_seq_midi snd_seq_midi_event snd_rawmidi snd_pcm snd_seq snd_seq_device snd_timer evdev snd uvcvideo videobuf2_vmalloc videobuf2_memops soundcore videobuf2_core ti_am335x_adc kfifo_buf industrialio tda998x tilcdc omap_aes omap_sham ti_am335x_tsc omap_rng drm_kms_helper rng_core ti_am335x_tscadc uio_pdrv_genirq leds_gpio uio
[ 349.863053] CPU: 0 PID: 1666 Comm: v4l2grab Tainted: G W 4.1.0-rc6-bone6 #1
[ 349.863073] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 349.863268] [] (unwind_backtrace) from [] (show_stack+0x11/0x14)
[ 349.863320] [] (show_stack) from [] (warn_slowpath_common+0x57/0x84)
[ 349.863360] [] (warn_slowpath_common) from [] (warn_slowpath_fmt+0x23/0x2c)
[ 349.863398] [] (warn_slowpath_fmt) from [] (sysfs_remove_group+0x55/0x60)
[ 349.863434] [] (sysfs_remove_group) from [] (sysfs_remove_groups+0x19/0x24)
[ 349.863475] [] (sysfs_remove_groups) from [] (device_remove_attrs+0x2f/0x44)
[ 349.863515] [] (device_remove_attrs) from [] (device_del+0xaf/0x16c)
[ 349.863554] [] (device_del) from [] (input_unregister_device+0x2f/0x58)
[ 349.863660] [] (input_unregister_device) from [] (uvc_status_cleanup+0x2c/0x30 [uvcvideo])
[ 349.863789] [] (uvc_status_cleanup [uvcvideo]) from [] (uvc_delete+0xe/0xd0 [uvcvideo])
[ 349.863880] [] (uvc_delete [uvcvideo]) from [] (uvc_release+0x2e/0x30 [uvcvideo])
[ 349.863950] [] (uvc_release [uvcvideo]) from [] (v4l2_device_release+0x89/0xac)
[ 349.863990] [] (v4l2_device_release) from [] (device_release+0x23/0x60)
[ 349.864030] [] (device_release) from [] (kobject_cleanup+0x51/0x11c)
[ 349.864066] [] (kobject_cleanup) from [] (v4l2_release+0x37/0x54)
[ 349.864101] [] (v4l2_release) from [] (__fput+0x65/0x144)
[ 349.864141] [] (__fput) from [] (task_work_run+0x69/0x90)
[ 349.864181] [] (task_work_run) from [] (do_exit+0x22d/0x6dc)
[ 349.864215] [] (do_exit) from [] (do_group_exit+0x2d/0x6c)
[ 349.864250] [] (do_group_exit) from [] (__wake_up_parent+0x1/0x18)
[ 349.864272] —[ end trace e9fbe6cf6b19f638 ]—
[ 349.875203] ------------[ cut here ]------------
[ 349.875271] WARNING: CPU: 0 PID: 1666 at fs/sysfs/group.c:224 sysfs_remove_group+0x55/0x60()
[ 349.875294] sysfs group c0a3cfcc not found for kobject ‘media0’
[ 349.875312] Modules linked in: usb_f_acm u_serial usb_f_ecm g_multi usb_f_mass_storage usb_f_rndis u_ether libcomposite snd_usb_audio snd_hwdep snd_usbmidi_lib snd_seq_midi snd_seq_midi_event snd_rawmidi snd_pcm snd_seq snd_seq_device snd_timer evdev snd uvcvideo videobuf2_vmalloc videobuf2_memops soundcore videobuf2_core ti_am335x_adc kfifo_buf industrialio tda998x tilcdc omap_aes omap_sham ti_am335x_tsc omap_rng drm_kms_helper rng_core ti_am335x_tscadc uio_pdrv_genirq leds_gpio uio
[ 349.875577] CPU: 0 PID: 1666 Comm: v4l2grab Tainted: G W 4.1.0-rc6-bone6 #1
[ 349.875597] Hardware name: Generic AM33XX (Flattened Device Tree)
[ 349.875675] [] (unwind_backtrace) from [] (show_stack+0x11/0x14)
[ 349.875738] [] (show_stack) from [] (warn_slowpath_common+0x57/0x84)
[ 349.875780] [] (warn_slowpath_common) from [] (warn_slowpath_fmt+0x23/0x2c)
[ 349.875818] [] (warn_slowpath_fmt) from [] (sysfs_remove_group+0x55/0x60)
[ 349.875869] [] (sysfs_remove_group) from [] (device_del+0x2d/0x16c)
[ 349.875912] [] (device_del) from [] (device_unregister+0x1b/0x48)
[ 349.876009] [] (device_unregister) from [] (uvc_delete+0xc8/0xd0 [uvcvideo])
[ 349.876105] [] (uvc_delete [uvcvideo]) from [] (uvc_release+0x2e/0x30 [uvcvideo])
[ 349.876180] [] (uvc_release [uvcvideo]) from [] (v4l2_device_release+0x89/0xac)
[ 349.876223] [] (v4l2_device_release) from [] (device_release+0x23/0x60)
[ 349.876269] [] (device_release) from [] (kobject_cleanup+0x51/0x11c)
[ 349.876309] [] (kobject_cleanup) from [] (v4l2_release+0x37/0x54)
[ 349.876385] [] (v4l2_release) from [] (__fput+0x65/0x144)
[ 349.876440] [] (__fput) from [] (task_work_run+0x69/0x90)
[ 349.876542] [] (task_work_run) from [] (do_exit+0x22d/0x6dc)
[ 349.876579] [] (do_exit) from [] (do_group_exit+0x2d/0x6c)
[ 349.876616] [] (do_group_exit) from [] (__wake_up_parent+0x1/0x18)
[ 349.876639] —[ end trace e9fbe6cf6b19f639 ]—
[ 350.323151] usb 1-1: new high-speed USB device number 3 using musb-hdrc
[ 351.585302] usb 1-1: New USB device found, idVendor=046d, idProduct=082d
[ 351.585353] usb 1-1: New USB device strings: Mfr=0, Product=2, SerialNumber=1
[ 351.585382] usb 1-1: Product: HD Pro Webcam C920
[ 351.585408] usb 1-1: SerialNumber: 6FAF985F
[ 351.587413] uvcvideo: Found UVC 1.00 device HD Pro Webcam C920 (046d:082d)
[ 351.594999] input: HD Pro Webcam C920 as /devices/platform/ocp/47400000.usb/47401c00.usb/musb-hdrc.1.auto/usb1/1-1/1-1:1.0/input/input1

jez…@gmail.com於 2013年8月31日星期六 UTC+8下午11時42分09秒寫道:

I found some postings about the issue on the internet at different
other places, but I can't remember anymore, where it was. Many
repliers stated, that it's caused by hardware or cabling. In my case,
when the USB cable is too long, the issue occured. But it also occured
on some specific devices without having a longer cable installed. So,
I proceeded searching, and found the solution:

Babble interrupts occur, when EMI (electromagnetic interference)
occurs. I was able to solve my issue by inserting an actively powered
USB hub into the line. But others also mentioned, that the issue can
also be solved by installing a ferrite core on both sides of the USB
cable, as close to the plug as possible. If you don't know, what a
ferrite core is, please see here:

https://www.google.com/search?q=ferrite+core&num=40&tbm=isch&tbo=u&source=univ&sa=X&ved=0CDoQsARqFQoTCOu63pCTh8YCFWcW2wodeUsAsg&biw=1680&bih=930

If your device is powered externally, you sould also set ferrite cores
onto the power cable, also as much close to the ends as you can. The
ferrite cores will damp EMI to a level, where Babble interrupt error
doesn't occur anymore. Proper shielding of the USB cable you're using
is absolutely mandatory, to avoid interference. So I also highly
recommend to use high quality cabling.