From: "Slark Xiao" <slark_xiao@163.com>
To: "Loic Poulain" <loic.poulain@linaro.org>
Cc: "Muhammad Nuzaihan" <zaihan@unrealasia.net>,
"Sergey Ryazanov" <ryazanov.s.a@gmail.com>,
"Johannes Berg" <johannes@sipsolutions.net>,
"Andrew Lunn" <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>,
"Eric Dumazet" <edumazet@google.com>,
"Jakub Kicinski" <kuba@kernel.org>,
"Paolo Abeni" <pabeni@redhat.com>,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re:Re: [PATCH net-next v4] wwan dev: Add port for NMEA channel for WWAN devices
Date: Tue, 7 Jan 2025 14:05:38 +0800 (CST) [thread overview]
Message-ID: <3c7d38cb.5336.1943f5e66de.Coremail.slark_xiao@163.com> (raw)
In-Reply-To: <CAMZdPi91hR10xe=UzccqtwvtvS9_Wf9NEw6i5-x=e4UdfKMcug@mail.gmail.com>
At 2025-01-07 03:44:35, "Loic Poulain" <loic.poulain@linaro.org> wrote:
>Hi Muhammad,
>
>+ Slark
>
>On Sun, 5 Jan 2025 at 13:53, Muhammad Nuzaihan <zaihan@unrealasia.net> wrote:
>>
>> Based on the code: drivers/bus/mhi/host/pci_generic.c
>> which already has NMEA channel (mhi_quectel_em1xx_channels)
>> support in recent kernels but it is never exposed
>> as a port.
>>
>> This commit exposes that NMEA channel to a port
>> to allow tty/gpsd programs to read through
>> the /dev/wwan0nmea0 port.
>>
>> Tested this change on a new kernel and module
>> built and now NMEA (mhi0_NMEA) statements are
>> available (attached) through /dev/wwan0nmea0 port on bootup.
>>
>> Signed-off-by: Muhammad Nuzaihan Bin Kamal Luddin <zaihan@unrealasia.net>
>
>This works for sure but I'm not entirely convinced NMEA should be
>exposed as a modem control port. In your previous patch version Sergey
>pointed to a discussion we had regarding exposing that port as WWAN
>child device through the regular GNSS subsystem, which would require
>some generic bridge in the WWAN subsystem.
>
>Slark, did you have an opportunity to look at the GNSS solution?
>
>Regards,
>Loic
Hi Loic,
This solution same as what I did in last time. We got a wwan0nmea0 device but this
device can't support flow control.
Also, this is not the solution what Sergey expected, I think.
Please refer to the target we talked last time:
/////////////////////
>>> Basically, components should interact like this:
>>>
>>> Modem PCIe driver <-> WWAN core <-> GNSS core <-> /dev/gnss0
>>>
>>> We need the GNSS core to export the modem NMEA port as instance of
>>> 'gnss' class.
>>>
>>> We need WWAN core between the modem driver and the GSNN core because we
>>> need a common parent for GNSS port and modem control port (e.g. AT,
>>> MBIM). Since we are already exporting control ports via the WWAN
>>> subsystem, the GNSS port should also be exported through the WWAN
>>> subsystem. To keep devices hierarchy like this:
>>>
>>> .--> AT port
>>> PCIe dev -> WWAN dev -|
>>> '--> GNSS port
>>>
>>> Back to the implementation. Probably we should introduce a new port
>>> type, e.g. WWAN_PORT_NMEA. And this port type should have a special
>>> handling in the WWAN core.
>>>
>> Similar like what I did in my local. I named it as WWAN_PORT_GNSS and
>> put it as same level with AT port.
>>
>>> wwan_create_port() function should not directly create a char device.
>>> Instead, it should call gnss_allocate_device() and
>>> gnss_register_device() to register the port with GNSS subsystem.
////////////////////
Thanks
next prev parent reply other threads:[~2025-01-07 6:06 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-05 12:48 Muhammad Nuzaihan
2025-01-06 19:44 ` Loic Poulain
2025-01-07 6:05 ` Slark Xiao [this message]
2025-01-07 20:19 ` Muhammad Nuzaihan
2025-01-07 23:42 ` Sergey Ryazanov
2025-01-08 8:59 ` [RFC " Muhammad Nuzaihan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3c7d38cb.5336.1943f5e66de.Coremail.slark_xiao@163.com \
--to=slark_xiao@163.com \
--cc=andrew+netdev@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=johannes@sipsolutions.net \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=loic.poulain@linaro.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=ryazanov.s.a@gmail.com \
--cc=zaihan@unrealasia.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®