On Wed, Jan 15, 2025 at 9:10 PM Pradeep Gopanapalli <pradeep.gopanapa...@broadcom.com> wrote: > > Hello Daniele, > > Following up on the previous discussion, > > I attempted to integrate these mux interfaces (e.g., qmapmux0.1) into netifd, > but netifd is treating them as VLAN interfaces. Is there any configuration we > can use to prevent these interfaces from being recognized as VLAN interfaces?
Pradeep, You need to patch netifd-s check for VLAN interfaces to also check for the qmapmux name as by default it will treat any interface with a dot in the name as VLAN. That is what I do. Regards, Robert > Additionally, I encountered an issue with modemmanager.sh proto. It has a > check for multiple bearers and fails the setup if more than one bearer is > present. Is there any plan or design to support multiple bearers in the > native ModemManager? > > Here’s the relevant part of the script: > > # We won't like it if there are more than one bearers, as that would mean the > # user manually created them, and that's unsupported by this proto > bearercount=$(modemmanager_get_field "${modemstatus}" > "modem.generic.bearers.length") > [ -n "${bearercount}" ] && [ "$bearercount" -eq 1 ] || { > proto_notify_error "${interface}" INVALID_BEARER_LIST > return 1 > } > > Any insights or guidance on how to handle this would be greatly appreciated. > > > Thanks, > Pradeep G > > On Mon, Jan 13, 2025 at 3:58 PM Pradeep Gopanapalli > <pradeep.gopanapa...@broadcom.com> wrote: >> >> Hello Daniele, >> >> Right now I am using " --simple-connect" to create a bearer and it creates a >> netlink >> "qmapmux*" interface and it triggers hotplug events. >> Is there any way to create this interface without actually executing mmcli >> bearer connect command. >> This will help to integrate the qmapmux interface into modemmanager hotplug >> scripts and netifd seamlessly >> >> >> >> #mmcli -m any --simple-connect="multiplex=required,apn=<>" >> >> Thanks, >> Pradeep G >> >> On Tue, Jan 7, 2025 at 5:35 AM Daniele Palmas <dnl...@gmail.com> wrote: >>> >>> Hello Pradeep, >>> >>> Il giorno lun 6 gen 2025 alle ore 05:03 Pradeep Gopanapalli >>> <pradeep.gopanapa...@broadcom.com> ha scritto: >>> > >>> > Hello Daniele, >>> > >>> > Thanks for the reply. >>> > Yes I had to add a similar patch for modemmanager.common for the mux >>> > interface to work. >>> > After following the steps given below I am able to dial into Multiplex >>> > interfaces. >>> > Now I need to figure out how to integrate maintaining state machines of >>> > these interfaces into >>> > our modem scripts. >>> > Also does modemmanager allow combination of non-multiplex and multiplex >>> > interface at same time? >>> > >>> >>> As far as I know this is not possible, since the qmap configuration >>> affects the whole modem (see QMI_WDA_SET_DATA_FORMAT). >>> >>> Regards, >>> Daniele >>> >>> > Here are steps followed for successful multiplex interface creation >>> > >>> > >> >>> > >>> > mmcli -m any --command='AT#DUALAPN=1' >>> > >>> > mmcli -m a --command='AT+WS46=36' >>> > >>> > mmcli -m any --set-current-bands=ngran-71 >>> > >>> > mmcli -m any --set-allowed-modes=5g >>> > >>> > >>> > <Delete any non multiplex bearers> >>> > #mmcli -m any --simple-connect="multiplex=required,apn=<>" >>> > #mmcli -m any --set-allowed-modes=5g >>> > #mmcli -m any >>> > --simple-connect="multiplex=required,profile-id=3,ip-type=ipv4" >>> > >>> > Thanks, >>> > Pradeep G >>> > << Disconnect bearer related to non-multiplex> >>> > On Fri, Jan 3, 2025 at 1:52 AM Daniele Palmas <dnl...@gmail.com> wrote: >>> >> >>> >> Hello Pradeep, >>> >> >>> >> Il giorno ven 3 gen 2025 alle ore 02:37 Pradeep Gopanapalli >>> >> <pradeep.gopanapa...@broadcom.com> ha scritto: >>> >> > >>> >> > Hello Dan, >>> >> > >>> >> > First of all Happy new year and thanks for the reply. >>> >> > On further debugging it looks like we need a "rmnet" driver for >>> >> > Netlink creation as slice interfaces. >>> >> > https://dri.freedesktop.org/docs/drm/networking/device_drivers/cellular/qualcomm/rmnet.html >>> >> > However Native Opernwrt -23.05 didn't had this module as part of >>> >> > packages, so i had to compile it as a module >>> >> > Kernel : 5.15.168 >>> >> > >>> >> > >>> >> > I followed these steps >>> >> > -mmcli -m a --command='AT+WS46=36' >>> >> > insmod rmnet.ko >>> >> > >>> >> > <Delete all non-mux bearers> >>> >> > >>> >> > mmcli -m any >>> >> > --simple-connect="multiplex=requested,profile-id=1,ip-type=ipv4v6" >>> >> > >>> >> > >>> >> > And qmapmux0.0 creation failed with "imed out waiting for link port >>> >> > 'net/qmapmux0.0'" >>> >> > >>> >> >>> >> looks like something similar to the issue describe at >>> >> http://paldan.altervista.org/openwrt-modemmanager-and-a-multiplexing-issue/ >>> >> >>> >> though the suspicious line is a bit different: >>> >> >>> >> hotplug: add network interface qmapmux0.0: event ignored: couldn't get >>> >> physical device sysfs path >>> >> >>> >> Anyway, I fixed the issue reported above with >>> >> https://github.com/openwrt/packages/pull/23551 >>> >> >>> >> If that does not work for you it could be a starting point for further >>> >> investigation. >>> >> >>> >> Regards, >>> >> Daniele >>> >> >>> >> > >>> >> > >> >>> >> > >>> >> > = 1#012<<<<<< value = 03#012<<<<<< translated = >>> >> > ipv4-or-ipv6#012<<<<<< TLV:#012<<<<<< type = "Profile Name" >>> >> > (0x10)#012<<<<<< length = 8#012<<<<<< value = >>> >> > 70:72:6F:66:69:6C:65:31#012<<<<<< translated = profile1#012 >>> >> > 2025-01-03T01:07:05.468 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [modem0/cdc-wdm0/qmi] multiplex support already available when setting >>> >> > up data format >>> >> > 2025-01-03T01:07:05.468 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [modem0/cdc-wdm0/qmi] Creating RMNET link with flags: >>> >> > ingress-map-cksumv5, egress-map-cksumv5 >>> >> > 2025-01-03T01:07:05.486 DEBUG daemon ModemManager[32225]: <dbg> Using >>> >> > dynamic mux ID 1 >>> >> > 2025-01-03T01:07:05.489 NOTICE daemon ModemManager[32225]: <msg> >>> >> > [modem0/bearer2] net link qmapmux0.0 created (mux id 1) >>> >> > 2025-01-03T01:07:05.489 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [modem0] waiting for port 'net/qmapmux0.0'... >>> >> > 2025-01-03T01:07:05.492 INFO daemon linkd[7283]: create >>> >> > None(qmapmux0.0): state=->down, oper=->down, carrier=->1 >>> >> > 2025-01-03T01:06:47.253 WARNIN user kernel:[1451352.659164] ethtool: >>> >> > net: disabled offload features for qmapmux0.0 >>> >> > 2025-01-03T01:07:05.614 INFO daemon ModemManager[50632]: hotplug: >>> >> > add network interface qmapmux0.0: event ignored: couldn't get physical >>> >> > device sysfs path >>> >> > 2025-01-03T01:07:07.991 WARNIN daemon ModemManager[32225]: <wrn> >>> >> > [modem0/bearer2] connection attempt #1 failed: Timed out waiting for >>> >> > link port 'net/qmapmux0.0' >>> >> > 2025-01-03T01:07:07.991 NOTICE daemon ModemManager[32225]: <msg> >>> >> > [modem0] state changed (connecting -> registered) >>> >> > 2025-01-03T01:07:07.992 NOTICE daemon ModemManager[32225]: <msg> >>> >> > [modem0/bearer2] connection #1 finished: duration 0s >>> >> > 2025-01-03T01:07:07.992 WARNIN daemon ModemManager[32225]: <wrn> >>> >> > [modem0] couldn't connect bearer: Timed out waiting for link port >>> >> > 'net/qmapmux0.0' >>> >> > 2025-01-03T01:07:07.997 INFO daemon linkd[7283]: change >>> >> > None(qmapmux0.0): state=down->down, oper=down->down, carrier=1->1 >>> >> > 2025-01-03T01:07:08.004 INFO daemon ModemManager[50807]: hotplug: >>> >> > remove network interface qmapmux0.0: event processed >>> >> > 2025-01-03T01:07:08.015 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [base-manager] kernel event reported: >>> >> > 2025-01-03T01:07:08.015 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [base-manager] action: remove >>> >> > 2025-01-03T01:07:08.015 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [base-manager] subsystem: net >>> >> > 2025-01-03T01:07:08.015 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [base-manager] name: qmapmux0.0 >>> >> > 2025-01-03T01:07:08.015 DEBUG daemon ModemManager[32225]: <dbg> >>> >> > [base-manager] uid: n/a >>> >> > >>> >> > >>> >> > Thanks, >>> >> > >>> >> > Pradeep G >>> >> > >>> >> > >>> >> > >>> >> > On Tue, Dec 31, 2024 at 10:44 AM Dan Williams <d...@ioncontrol.co> >>> >> > wrote: >>> >> >> >>> >> >> On Sun, 2024-12-29 at 19:08 -0800, Pradeep Gopanapalli wrote: >>> >> >> > Hello, >>> >> >> > I am trying to establish multiple 5G multiplex slices on a Telit >>> >> >> > FN990 modem running in QMI mode. These 5G slices represent multiple >>> >> >> > PDNs managed by ModemManager (via mmcli). >>> >> >> > >>> >> >> > When using the "--test-multiplex-requested" option, the bearer setup >>> >> >> > fails with the following Netlink error: >>> >> >> > GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._g_2dio_2derror_2dquar >>> >> >> > k.Code0: failed to create net link for device: failed to add link >>> >> >> > for >>> >> >> > device: Could not allocate link: Failed to add link with mux id 1: >>> >> >> > Netlink message with transaction 9 failed >>> >> >> >>> >> >> Unfortunately libqmi-glib doesn't print out the actual error we get >>> >> >> from netlink, which I've fixed here: >>> >> >> >>> >> >> https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/merge_requests/389 >>> >> >> >>> >> >> would you be able to apply that patch locally and reproduce the issue, >>> >> >> so that we can figure out the actual error code netlink is returning? >>> >> >> >>> >> >> Thanks, >>> >> >> Dan >>> >> >> >>> >> >> > >>> >> >> > Environment: >>> >> >> > * Modem: Telit FN990A28 in QMI mode >>> >> >> > * ModemManager: 1.22.0 >>> >> >> > * libqmi: 1.34.0-2 >>> >> >> > * libmbim: 1.30.0-2 >>> >> >> > * Kernel: 5.15.150 >>> >> >> > * OpenWrt: Based on 22.03 using netifd >>> >> >> > Debug Logs During Bearer Connection: >>> >> >> > (PFA message_modem_debug) >>> >> >> > 2024-12-28T00:38:03.709 DEBUG daemon ModemManager[9676]: >>> >> >> > [1735346283.709521] [modem0/bearer1] connecting... >>> >> >> > 2024-12-28T00:38:03.709 NOTICE daemon ModemManager[9676]: >>> >> >> > [1735346283.709796] [modem0] state changed (registered -> >>> >> >> > connecting) >>> >> >> > 2024-12-28T00:38:03.709 DEBUG daemon ModemManager[9676]: >>> >> >> > [1735346283.709904] [modem0/bearer1] launching connection with QMI >>> >> >> > port (cdc-wdm0) and data port (wwan0) (multiplex requested) >>> >> >> > 2024-12-28T00:38:03.709 DEBUG daemon ModemManager[9676]: >>> >> >> > [1735346283.709916] [cdc-wdm0/qmi] bringing down data interface >>> >> >> > 'wwan0' >>> >> >> > 2024-12-28T00:38:03.710 DEBUG daemon ModemManager[9676]: >>> >> >> > [1735346283.710309] [cdc-wdm0/qmi] resetting expected kernel data >>> >> >> > format to 802.3 in data interface 'wwan0' >>> >> >> > 2024-12-28T00:38:03.897 WARN daemon ModemManager[9676]: >>> >> >> > [1735346283.897197] [modem0/bearer1] connection attempt #1 failed: >>> >> >> > failed to create net link for device: failed to add link for device: >>> >> >> > Could not allocate link: Failed to add link with mux id 1: Netlink >>> >> >> > message with transaction 1 failed >>> >> >> > 2024-12-28T00:38:03.898 NOTICE daemon netifd: CELL1 (19170): error: >>> >> >> > couldn't connect the modem: >>> >> >> > 'GDBus.Error:org.gtk.GDBus.UnmappedGError.Quark._g_2dio_2derror_2dqua >>> >> >> > rk.Code0: failed to create net link for device: failed to add link >>> >> >> > for device: Could not allocate link: Failed to add link with mux id >>> >> >> > 1: Netlink message with transaction 1 failed' >>> >> >> > Similar Issue Reported: >>> >> >> > This issue has been reported in the following GitLab issue: >>> >> >> > GitLab ModemManager Issue #533, but I have not seen a resolution for >>> >> >> > it. >>> >> >> > Reference Links: >>> >> >> > * ModemManager Mailing List - March 2022 >>> >> >> > Any assistance or suggestions on resolving this issue would be >>> >> >> > greatly appreciated. >>> >> >> > Thanks, >>> >> >> > Pradeep G >>> >> >> > >>> >> >> > >>> >> >> > This electronic communication and the information and any files >>> >> >> > transmitted with it, or attached to it, are confidential and are >>> >> >> > intended solely for the use of the individual or entity to whom it >>> >> >> > is >>> >> >> > addressed and may contain information that is confidential, legally >>> >> >> > privileged, protected by privacy laws, or otherwise restricted from >>> >> >> > disclosure to anyone else. If you are not the intended recipient or >>> >> >> > the person responsible for delivering the e-mail to the intended >>> >> >> > recipient, you are hereby notified that any use, copying, >>> >> >> > distributing, dissemination, forwarding, printing, or copying of >>> >> >> > this >>> >> >> > e-mail is strictly prohibited. If you received this e-mail in error, >>> >> >> > please return the e-mail to the sender, delete it from your >>> >> >> > computer, >>> >> >> > and destroy any printed copy of it. >>> >> >> >>> >> > >>> >> > This electronic communication and the information and any files >>> >> > transmitted with it, or attached to it, are confidential and are >>> >> > intended solely for the use of the individual or entity to whom it is >>> >> > addressed and may contain information that is confidential, legally >>> >> > privileged, protected by privacy laws, or otherwise restricted from >>> >> > disclosure to anyone else. If you are not the intended recipient or >>> >> > the person responsible for delivering the e-mail to the intended >>> >> > recipient, you are hereby notified that any use, copying, >>> >> > distributing, dissemination, forwarding, printing, or copying of this >>> >> > e-mail is strictly prohibited. If you received this e-mail in error, >>> >> > please return the e-mail to the sender, delete it from your computer, >>> >> > and destroy any printed copy of it. >>> > >>> > >>> > This electronic communication and the information and any files >>> > transmitted with it, or attached to it, are confidential and are intended >>> > solely for the use of the individual or entity to whom it is addressed >>> > and may contain information that is confidential, legally privileged, >>> > protected by privacy laws, or otherwise restricted from disclosure to >>> > anyone else. If you are not the intended recipient or the person >>> > responsible for delivering the e-mail to the intended recipient, you are >>> > hereby notified that any use, copying, distributing, dissemination, >>> > forwarding, printing, or copying of this e-mail is strictly prohibited. >>> > If you received this e-mail in error, please return the e-mail to the >>> > sender, delete it from your computer, and destroy any printed copy of it. > > > This electronic communication and the information and any files transmitted > with it, or attached to it, are confidential and are intended solely for the > use of the individual or entity to whom it is addressed and may contain > information that is confidential, legally privileged, protected by privacy > laws, or otherwise restricted from disclosure to anyone else. If you are not > the intended recipient or the person responsible for delivering the e-mail to > the intended recipient, you are hereby notified that any use, copying, > distributing, dissemination, forwarding, printing, or copying of this e-mail > is strictly prohibited. If you received this e-mail in error, please return > the e-mail to the sender, delete it from your computer, and destroy any > printed copy of it. -- Robert Marko Staff Embedded Linux Engineer Sartura d.d. Lendavska ulica 16a 10000 Zagreb, Croatia Email: robert.ma...@sartura.hr Web: www.sartura.hr