mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
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


  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®