From: "Martinez, Ricardo" <ricardo.martinez@linux.intel.com>
To: Sergey Ryazanov <ryazanov.s.a@gmail.com>
Cc: netdev@vger.kernel.org, linux-wireless@vger.kernel.org,
Jakub Kicinski <kuba@kernel.org>,
David Miller <davem@davemloft.net>,
Johannes Berg <johannes@sipsolutions.net>,
Loic Poulain <loic.poulain@linaro.org>,
M Chetan Kumar <m.chetan.kumar@intel.com>,
chandrashekar.devegowda@intel.com,
Intel Corporation <linuxwwan@intel.com>,
chiranjeevi.rapolu@linux.intel.com, haijun.liu@mediatek.com,
amir.hanania@intel.com,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
dinesh.sharma@intel.com, eliot.lee@intel.com,
mika.westerberg@linux.intel.com, moises.veleta@intel.com,
pierre-louis.bossart@intel.com,
muralidharan.sethuraman@intel.com,
Soumya.Prakash.Mishra@intel.com, sreehari.kancharla@intel.com,
suresh.nagaraj@intel.com
Subject: Re: [PATCH v2 06/14] net: wwan: t7xx: Add AT and MBIM WWAN ports
Date: Tue, 11 Jan 2022 20:29:10 -0800 [thread overview]
Message-ID: <a808059a-a9a0-a6ad-5882-d30a8773f9e3@linux.intel.com> (raw)
In-Reply-To: <e5f9385f-0dfe-60cb-eca3-16aa7dbe3121@linux.intel.com>
Hi Sergey,
On 12/6/2021 6:41 PM, Martinez, Ricardo wrote:
>
> On 12/1/2021 12:45 PM, Sergey Ryazanov wrote:
>> Hello Ricardo,
>>
>> On Wed, Dec 1, 2021 at 9:14 AM Martinez, Ricardo
>> <ricardo.martinez@linux.intel.com> wrote:
>>> On 11/9/2021 4:06 AM, Sergey Ryazanov wrote:
>>>> On Mon, Nov 1, 2021 at 6:57 AM Ricardo Martinez wrote:
>>>>> ...
>>>>> static struct t7xx_port md_ccci_ports[] = {
>>>>> + {CCCI_UART2_TX, CCCI_UART2_RX, DATA_AT_CMD_Q,
>>>>> DATA_AT_CMD_Q, 0xff,
>>>>> + 0xff, ID_CLDMA1, PORT_F_RX_CHAR_NODE, &wwan_sub_port_ops,
>>>>> 0, "ttyC0", WWAN_PORT_AT},
>>>>> + {CCCI_MBIM_TX, CCCI_MBIM_RX, 2, 2, 0, 0, ID_CLDMA1,
>>>>> + PORT_F_RX_CHAR_NODE, &wwan_sub_port_ops, 10, "ttyCMBIM0",
>>>>> WWAN_PORT_MBIM},
>>>>> ...
>>>>> + if (count + CCCI_H_ELEN > txq_mtu &&
>>>>> + (port_ccci->tx_ch == CCCI_MBIM_TX ||
>>>>> + (port_ccci->tx_ch >= CCCI_DSS0_TX &&
>>>>> port_ccci->tx_ch <= CCCI_DSS7_TX)))
>>>>> + multi_packet = DIV_ROUND_UP(count, txq_mtu
>>>>> - CCCI_H_ELEN);
>>>> I am just wondering, the chip does support MBIM message fragmentation,
>>>> but does not support AT commands stream (CCCI_UART2_TX) fragmentation.
>>>> Is that the correct conclusion from the code above?
>>> Yes, that is correct.
>> Are you sure that the modem does not support AT command fragmentation?
>> The AT commands interface is a stream of chars by its nature. It is
>> designed to work over serial lines. Some modem configuration software
>> even writes commands to a port in a char-by-char manner, i.e. it
>> writes no more than one char at a time to the port.
>>
>> The mechanism that is implemented in the driver to split user input
>> into individual messages is not a true fragmentation mechanism since
>> it does not preserve the original user input length. It just cuts the
>> user input into individual messages and sends them to the modem
>> independently. So, the modem firmware has no way to distinguish
>> whether the user input has been "fragmented" by the user or the
>> driver. How, then, does the modem firmware deal with an AT command
>> "fragmented" by a user? Will the modem firmware ignore the AT command
>> that is received in the char-by-char manner?
>
> The modem supports char-by-char AT command over serial lines, I'll get
> more information
>
> about why splitting long commands is supported only for MBIM and not
> for AT commands.
>
The next version will allow AT command fragmentation as there is modem
is able to handle
fragments as you pointed out. This will make the WWAN Tx callback a bit
simpler.
next prev parent reply other threads:[~2022-01-12 4:29 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-01 3:56 [PATCH v2 00/14] net: wwan: t7xx: PCIe driver for MediaTek M.2 modem Ricardo Martinez
2021-11-01 3:56 ` [PATCH v2 01/14] net: wwan: Add default MTU size Ricardo Martinez
2021-11-06 18:01 ` Sergey Ryazanov
2021-11-01 3:56 ` [PATCH v2 02/14] net: wwan: t7xx: Add control DMA interface Ricardo Martinez
2021-11-01 14:03 ` Andy Shevchenko
2021-11-19 6:36 ` Martinez, Ricardo
2021-11-19 8:28 ` Andy Shevchenko
2021-11-06 18:01 ` Sergey Ryazanov
2021-11-01 3:56 ` [PATCH v2 03/14] net: wwan: t7xx: Add core components Ricardo Martinez
2021-11-02 15:46 ` Andy Shevchenko
2021-11-06 18:05 ` Sergey Ryazanov
2021-12-02 22:42 ` Martinez, Ricardo
2021-11-01 3:56 ` [PATCH v2 04/14] net: wwan: t7xx: Add port proxy infrastructure Ricardo Martinez
2021-11-03 15:38 ` Andy Shevchenko
2021-11-19 6:41 ` Martinez, Ricardo
2021-11-06 18:06 ` Sergey Ryazanov
2021-12-01 6:04 ` Martinez, Ricardo
2021-11-01 3:56 ` [PATCH v2 05/14] net: wwan: t7xx: Add control port Ricardo Martinez
2021-11-06 18:07 ` Sergey Ryazanov
2021-11-01 3:56 ` [PATCH v2 06/14] net: wwan: t7xx: Add AT and MBIM WWAN ports Ricardo Martinez
2021-11-09 12:06 ` Sergey Ryazanov
2021-12-01 6:14 ` Martinez, Ricardo
2021-12-01 20:45 ` Sergey Ryazanov
2021-12-07 2:41 ` Martinez, Ricardo
2022-01-12 4:29 ` Martinez, Ricardo [this message]
2021-11-01 3:56 ` [PATCH v2 07/14] net: wwan: t7xx: Data path HW layer Ricardo Martinez
2021-11-01 3:56 ` [PATCH v2 08/14] net: wwan: t7xx: Add data path interface Ricardo Martinez
2021-11-06 18:08 ` Sergey Ryazanov
2021-11-01 3:56 ` [PATCH v2 09/14] net: wwan: t7xx: Add WWAN network interface Ricardo Martinez
2021-11-06 18:08 ` Sergey Ryazanov
2021-12-01 6:06 ` Martinez, Ricardo
2021-12-01 21:09 ` Sergey Ryazanov
2021-12-02 20:44 ` Martinez, Ricardo
2021-11-01 3:56 ` [PATCH v2 10/14] net: wwan: t7xx: Introduce power management support Ricardo Martinez
2021-11-01 3:56 ` [PATCH v2 11/14] net: wwan: t7xx: Runtime PM Ricardo Martinez
2021-11-01 3:56 ` [PATCH v2 12/14] net: wwan: t7xx: Device deep sleep lock/unlock Ricardo Martinez
2021-11-01 3:56 ` [PATCH v2 13/14] net: wwan: t7xx: Add debug and test ports Ricardo Martinez
2021-11-06 18:10 ` Sergey Ryazanov
2021-11-01 3:56 ` [PATCH v2 14/14] net: wwan: t7xx: Add maintainers and documentation Ricardo Martinez
2021-11-01 13:09 ` [PATCH v2 00/14] net: wwan: t7xx: PCIe driver for MediaTek M.2 modem Denis Kirjanov
2021-11-06 18:10 ` Sergey Ryazanov
2021-11-09 5:26 ` Martinez, Ricardo
2021-11-09 11:35 ` Sergey Ryazanov
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=a808059a-a9a0-a6ad-5882-d30a8773f9e3@linux.intel.com \
--to=ricardo.martinez@linux.intel.com \
--cc=Soumya.Prakash.Mishra@intel.com \
--cc=amir.hanania@intel.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=chandrashekar.devegowda@intel.com \
--cc=chiranjeevi.rapolu@linux.intel.com \
--cc=davem@davemloft.net \
--cc=dinesh.sharma@intel.com \
--cc=eliot.lee@intel.com \
--cc=haijun.liu@mediatek.com \
--cc=johannes@sipsolutions.net \
--cc=kuba@kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=linuxwwan@intel.com \
--cc=loic.poulain@linaro.org \
--cc=m.chetan.kumar@intel.com \
--cc=mika.westerberg@linux.intel.com \
--cc=moises.veleta@intel.com \
--cc=muralidharan.sethuraman@intel.com \
--cc=netdev@vger.kernel.org \
--cc=pierre-louis.bossart@intel.com \
--cc=ryazanov.s.a@gmail.com \
--cc=sreehari.kancharla@intel.com \
--cc=suresh.nagaraj@intel.com \
/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;
as well as URLs for NNTP newsgroup(s).