From: Leonard Crestez <leonard.crestez@nxp.com>
To: Peng Fan <peng.fan@nxp.com>,
"jassisinghbrar@gmail.com" <jassisinghbrar@gmail.com>,
"o.rempel@pengutronix.de" <o.rempel@pengutronix.de>
Cc: "shawnguo@kernel.org" <shawnguo@kernel.org>,
"s.hauer@pengutronix.de" <s.hauer@pengutronix.de>,
"kernel@pengutronix.de" <kernel@pengutronix.de>,
"festevam@gmail.com" <festevam@gmail.com>,
dl-linux-imx <linux-imx@nxp.com>,
Anson Huang <anson.huang@nxp.com>,
Aisheng Dong <aisheng.dong@nxp.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH V6 0/4] mailbox/firmware: imx: support SCU channel type
Date: Wed, 18 Mar 2020 02:44:32 +0000 [thread overview]
Message-ID: <VI1PR04MB694108DF36F465324BA45E05EEF70@VI1PR04MB6941.eurprd04.prod.outlook.com> (raw)
In-Reply-To: AM0PR04MB4481D74E3C38B047562F419988FA0@AM0PR04MB4481.eurprd04.prod.outlook.com
On 2020-03-13 9:38 AM, Peng Fan wrote:
>> Subject: RE: [PATCH V6 0/4] mailbox/firmware: imx: support SCU channel
>> type
>>
>> Hi Leonard,
>>
>>> Subject: Re: [PATCH V6 0/4] mailbox/firmware: imx: support SCU channel
>>> type
>>>
>>> On 2020-03-04 7:55 AM, Peng Fan wrote:
>>>> From: Peng Fan <peng.fan@nxp.com>
>>>>
>>>> V6:
>>>> Add Oleksij's R-b tag
>>>> Patch 3/4, per
>>> https://www.kernel.org/doc/Documentation/printk-formats.txt
>>>> should use %zu for printk sizeof
>>>>
>>>> V5:
>>>> Move imx_mu_dcfg below imx_mu_priv
>>>> Add init hooks to imx_mu_dcfg
>>>> drop __packed __aligned
>>>> Add more debug msg
>>>> code style cleanup
>>>>
>>>> V4:
>>>> Drop IMX_MU_TYPE_[GENERIC, SCU]
>>>> Pack MU chans init to separate function
>>>> Add separate function for SCU chans init and xlate
>>>> Add santity check to msg hdr.size
>>>> Limit SCU MU chans to 6, TX0/RX0/RXDB[0-3]
>>>>
>>>> V3:
>>>> Rebase to Shawn's for-next
>>>> Include fsl,imx8-mu-scu compatible
>>>> Per Oleksij's comments, introduce generic tx/rx and added scu mu type
>>>> Check fsl,imx8-mu-scu in firmware driver for fast_ipc
>>>>
>>>> V2:
>>>> Drop patch 1/3 which added fsl,scu property
>>>> Force to use scu channel type when machine has node compatible
>>> "fsl,imx-scu"
>>>> Force imx-scu to use fast_ipc
>>>>
>>>> I not found a generic method to make SCFW message generic enough,
>>> SCFW
>>>> message is not fixed length including TX and RX. And it use TR0/RR0
>>>> interrupt.
>>>>
>>>> V1:
>>>> Sorry to bind the mailbox/firmware patch together. This is make it
>>>> to understand what changed to support using 1 TX and 1 RX channel
>>>> for SCFW message.
>>>>
>>>> Per i.MX8QXP Reference mannual, there are several message using
>>>> examples. One of them is:
>>>> Passing short messages: Transmit register(s) can be used to pass
>>>> short messages from one to four words in length. For example, when a
>>>> four-word message is desired, only one of the registers needs to
>>>> have its corresponding interrupt enable bit set at the receiver side.
>>>>
>>>> This patchset is to using this for SCFW message to replace four TX
>>>> and four RX method.
>>>
>>> Tested-by: Leonard Crestez <leonard.crestez@nxp.com>
>>>
>>
>> Thanks for the test.
>>
>>> My stress tests pass on imx8qxp with this patcheset, however
>>> performance is not greatly improved. My guess is that this happens
>>> because of too many interrupts.
>>
>> Might be. Could you share your testcase?
https://github.com/cdleonard/imx-scu-test
>>> Is there really a reason to enable TIE? Spinning on TE bits without
>>> any interrupts should be just plain faster.
>>
>> I could try to disable TIE and give a try. If performance improves lot, I could
>> change to non TX interrupt.
>
> After rethinking about this, we need TX interrupt, otherwise we have to
> use TX_POLL which is slower or let the client kick the TX state machine.
>
> Compared with original method, this already reduces to use 1 TX and 1 RX
> interrupt. This already good for system.
Sorry, I missed that fact that your patches don't include the required
DTS changes. Indeed that is only one TX and one RX irq per call now.
Running my test now results in RX timeout :(
-----
On an unrelated note: are you sure it is appropriate to change the
compat string here? Another way to implement direct SCU communication
would be as another channel type, IMX_MU_TYPE_SCUTX.
It also strange that you're adding a bool fast_ipc in imx-scu, do we
really want to support the old path?
If SCU protocol was implemented as a channel type then maybe we could
sidestep mbox_request_channel_by_name, parse mboxes manually and always
request MU_TYPE_SCUTX.
--
Regards,
Leonard
next prev parent reply other threads:[~2020-03-18 2:44 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-04 5:49 [PATCH V6 0/4] mailbox/firmware: imx: support SCU channel type peng.fan
2020-03-04 5:49 ` [PATCH V6 1/4] dt-bindings: mailbox: imx-mu: add SCU MU support peng.fan
2020-03-04 5:49 ` [PATCH V6 2/4] mailbox: imx: restructure code to make easy for new MU peng.fan
2020-03-04 5:49 ` [PATCH V6 3/4] mailbox: imx: add SCU MU support peng.fan
2020-03-18 2:51 ` Leonard Crestez
2020-03-18 12:17 ` Peng Fan
2020-03-04 5:49 ` [PATCH V6 4/4] firmware: imx-scu: Support one TX and one RX peng.fan
2020-03-12 23:09 ` [PATCH V6 0/4] mailbox/firmware: imx: support SCU channel type Leonard Crestez
2020-03-13 1:07 ` Peng Fan
2020-03-13 7:38 ` Peng Fan
2020-03-18 2:44 ` Leonard Crestez [this message]
2020-03-18 12:14 ` Peng Fan
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=VI1PR04MB694108DF36F465324BA45E05EEF70@VI1PR04MB6941.eurprd04.prod.outlook.com \
--to=leonard.crestez@nxp.com \
--cc=aisheng.dong@nxp.com \
--cc=anson.huang@nxp.com \
--cc=festevam@gmail.com \
--cc=jassisinghbrar@gmail.com \
--cc=kernel@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-imx@nxp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=o.rempel@pengutronix.de \
--cc=peng.fan@nxp.com \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
/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).