Request: enable USB CDC-ACM, option, and CDC/RNDIS net drivers in SL1680 Common Torizon kernel

Hello Toradex team,

We’re developing a product on the Luna SL1680 running Common Torizon OS 7.5.0-devel-20260123143454+build.0 (scarthgap), kernel 6.12.11-Torizon, and we’d like to request that several USB kernel drivers be enabled in the official SL1680 build.

We attach two USB peripherals that currently enumerate but have no usable driver, because the relevant class drivers aren’t compiled in the SL1680 kernel:

1. A Teensy 4.1 in USB Serial mode (CDC-ACM, VID:PID 16c0:0483) — needs the host-side CDC-ACM driver.

2. A Quectel EC200U-CN LTE modem — needs the USB serial ‘option’ driver for its AT/control ports, plus a USB-Ethernet class driver (ECM/RNDIS/NCM) for the data path.

Request: please enable the following as loadable modules (=m) in the SL1680 Torizon OS kernel:

CONFIG_USB_ACM (cdc_acm — CDC-ACM serial devices, e.g. Teensy)

CONFIG_USB_SERIAL_OPTION (option — WWAN modem AT/control ports)

CONFIG_USB_NET_CDCETHER (cdc_ether — modem ECM data mode)

CONFIG_USB_NET_RNDIS_HOST (rndis_host — modem RNDIS data mode)

Optionally, if they’re low-cost to include:

CONFIG_USB_NET_CDC_NCM (cdc_ncm — modem NCM data mode)

CONFIG_PPP / CONFIG_PPP_ASYNC (PPP dial-up over the modem serial port)

Current state on the running board:

# zcat /proc/config.gz | grep -E ‘USB_ACM|USB_SERIAL_OPTION|USB_USBNET|USB_NET_CDCETHER|USB_NET_RNDIS_HOST|USB_NET_CDC_NCM’

# CONFIG_USB_ACM is not set

# CONFIG_USB_SERIAL_OPTION is not set

# CONFIG_USB_NET_CDCETHER is not set

# CONFIG_USB_NET_RNDIS_HOST is not set

# CONFIG_USB_NET_CDC_NCM is not set

CONFIG_USB_USBNET=y

Note the usbnet framework (CONFIG_USB_USBNET) is already enabled, so only the leaf class drivers above are missing. These are all standard, widely-used USB class drivers for common serial peripherals and cellular modems, so we’d expect enabling them to be low-risk and broadly useful, with no negative impact on Torizon OS. We understand from your documentation (Building External Kernel Modules With Torizon) that in-tree config additions like these are handled on the Toradex build side, which is why we’re raising it with you.

As interim measures we’re using the generic usb-serial bind for the Teensy and can build modules externally, but having these in the base SL1680 image would let us retire those workarounds and receive the drivers via OTA.

Could you let us know whether these can be added to an upcoming SL1680 release? Happy to provide any further detail.

Greetings @Anishad,

I’ve submitted a request to our team to see if they can enable the kernel config options you’ve listed. I’ll try to reply back once I have an update to share with you regarding this request.

Best Regards,
Jeremias

Hi @jeremias.tx — we’re hitting the exact same issue on Luna SL1680 (same OS/kernel build), specifically for a Teensy 4.1 in CDC-ACM serial mode. Wanted to add our +1 and ask: is there an ETA on this, even a rough one?

In the meantime we’re looking at building cdc_acm as an out-of-tree module ourselves per your “Building External Kernel Modules With Torizon” guide, using the matching kernel source at synaptics-astra/linux_6_12-main, tag scarthgap_6.12_v2.5.0. If you have any guidance on whether that’s expected to work cleanly against the shipped kernel (e.g. any config dependencies cdc_acm needs beyond CONFIG_USB_USBNET=y, which we see is already enabled), that would help us move forward without waiting on the official release.

Hi @tomasaviram,

This request is already being actively worked on. I expect that the requested configs should be available in nightly builds within the next week or so, barring any unforeseen delays. For sure this will be ready in time for the next planned quarterly release of Torizon OS (7.8.0).

I’ll update this thread when the configs are available in nightlies.

If you have any guidance on whether that’s expected to work cleanly against the shipped kernel

I can’t comment with any certainty on this as that feature in TorizonCore Builder was made for adding out-of-tree drivers. It can possibly add in-tree drivers as well, but this is out of scope of the feature so it may have unintended results that we did not account for.

Best Regards,
Jeremias

Hi @Anishad @tomasaviram,

Our team has enabled the requested kernel configurations as seen here: Enable USB CDC-ACM and CDC/RNDIS net drivers for Luna SL1680 by EdTheBearded · Pull Request #609 · torizon/meta-toradex-torizon · GitHub

These were just added so please allow a day or two to pass before these are seen in our nightly builds of Common Torizon OS. For now these will only be available in nightly builds. Though they should also be available in the next official release (7.8.0) and all releases afterwards.

Best Regards,
Jeremias

Hello @jeremias.tx

Thank you for enabling CDC-ACM, option and the CDC/RNDIS drivers in PR #609. These are now confirmed working on the Luna SL1680 with our Teensy (CDC-ACM) and Quectel EC200U-CN modem (option + cdc_ether).

We have one more peripheral, an ESP32 programmer based on a CH340 USB-serial bridge (1a86:7523), which needs:

CONFIG_USB_SERIAL_CH341=m.

We have modified in the menuconfig and tested it and it works well, so will be good to have this config enabled in the official release too.

Thanks,

Anisha

I’ll go and make the request for CONFIG_USB_SERIAL_CH341. I’ll inform you when this has been done by our team.

Please be aware though we are currently in our release process for the 7.8.0 quarterly release of Torizon OS. Meaning this request might take longer to process than usual. Also it’s likely this won’t land in the 7.8.0 release itself.

Best Regards,
Jeremias

Hi @Anishad,

The config option CONFIG_USB_SERIAL_CH341 has been added by our team: synaptics-community.cfg: enable CH341 USB serial driver by EdTheBearded · Pull Request #623 · torizon/meta-toradex-torizon · GitHub

It was just merged earlier today, so you may need to wait a day or two before it starts showing up in our nightly builds. It should have made the cutoff for our next release (7.8.0). So keep an eye out for this next release where this config option should be enabled.

Best Regards,
Jeremias