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

Reply via email to