Issue with 5G Slices and Bearer Connection Failure on Telit FN990 Modem

Pradeep Gopanapalli pradeep.gopanapalli at broadcom.com
Thu Jan 16 13:26:46 UTC 2025


Hello robert

If you dont mind can you share the patch for netifd

Pradeep G


On Thu, Jan 16, 2025 at 01:46 Robert Marko <robert.marko at sartura.hr> wrote:

> On Wed, Jan 15, 2025 at 9:10 PM Pradeep Gopanapalli
> <pradeep.gopanapalli at 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.gopanapalli at 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 <dnlplm at gmail.com> wrote:
> >>>
> >>> Hello Pradeep,
> >>>
> >>> Il giorno lun 6 gen 2025 alle ore 05:03 Pradeep Gopanapalli
> >>> <pradeep.gopanapalli at 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 <dnlplm at gmail.com>
> wrote:
> >>> >>
> >>> >> Hello Pradeep,
> >>> >>
> >>> >> Il giorno ven 3 gen 2025 alle ore 02:37 Pradeep Gopanapalli
> >>> >> <pradeep.gopanapalli at 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 <dan at 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 prohibi
> <https://www.google.com/maps/search/copying+of+this+e-mail+is+strictly+prohibi?entry=gmail&source=g>ted.
> 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.marko at sartura.hr
> Web: www.sartura.hr
>

-- 
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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20250116/092b71fc/attachment-0001.htm>


More information about the libqmi-devel mailing list