-
Notifications
You must be signed in to change notification settings - Fork 6.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
USB: ethernet CDC ECM/EEM support is broken #35338
Comments
CC @jfischer-no |
Seems to be caused by f5fb807. Workaround is to build with -DCONFIG_NET_TC_TX_COUNT=1 |
Thank you for looking into this so quickly. |
Without TX thread support in network stack USB device stack blocks it self by usb_transfer_sync() which is called in the same context as usb_set_interface() in sequence of netusb_enable(), net_if_up(), net_l2_send(). Fixes: zephyrproject-rtos#35338 Signed-off-by: Johann Fischer <[email protected]>
Without queuing in network stack the USB stack blocks it self by usb_transfer_sync() and do not respond to SetInterface request.
|
Without TX thread support in network stack USB device stack blocks it self by usb_transfer_sync() which is called in the same context as usb_set_interface() in sequence of netusb_enable(), net_if_up(), net_l2_send(). Fixes: #35338 Signed-off-by: Johann Fischer <[email protected]>
Without TX thread support in network stack USB device stack blocks it self by usb_transfer_sync() which is called in the same context as usb_set_interface() in sequence of netusb_enable(), net_if_up(), net_l2_send(). Fixes: zephyrproject-rtos#35338 Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 21b3609) Signed-off-by: Andrzej Puzdrowski <[email protected]>
Without TX thread support in network stack USB device stack blocks it self by usb_transfer_sync() which is called in the same context as usb_set_interface() in sequence of netusb_enable(), net_if_up(), net_l2_send(). Fixes: zephyrproject-rtos#35338 Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 21b3609) Signed-off-by: Andrzej Puzdrowski <[email protected]> (cherry picked from commit 410b807)
Describe the bug
When trying to run the echo_server sample with the usbnet overlay, the sample doesn't work as expected. The frdm_k64f/mimxrt1064_evk should appear as a usb ethernet interface in the linux host, but that does not happen.
For the imxrt1064_evk, it becomes entirely unresponsive (no shell activity) after plugging in the second usb cable.
I have tried the usb_hid sample on both boards - both are working as expected.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
According to the USB Device Network guide, the frdm_k64f should show up as a CDC Ethernet Device in dmesg. This does not happen, instead a cdc_ether probe timeout occurs. See dmesg log:
And the corresponding syslog:
And console log for the frdm_k64f:
Impact
It will become a showstopper in a not too distant future. We are planning to use zephyr on a imxrt1064/1024 custom board where USB ethernet will be used to communicate with a host.
Environment (please complete the following information):
The text was updated successfully, but these errors were encountered: