[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z-1gY8mQLznSg5Na@pluto>
Date: Wed, 2 Apr 2025 17:05:55 +0100
From: Cristian Marussi <cristian.marussi@....com>
To: Sudeep Holla <sudeep.holla@....com>
Cc: Matthew Bystrin <dev.mbstr@...il.com>, arm-scmi@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
Cristian Marussi <cristian.marussi@....com>,
Philipp Zabel <p.zabel@...gutronix.de>, Peng Fan <peng.fan@....com>
Subject: Re: [PATCH] firmware: arm_scmi: add timeout in
do_xfer_with_response()
On Wed, Apr 02, 2025 at 11:59:47AM +0100, Sudeep Holla wrote:
> On Wed, Apr 02, 2025 at 01:42:54PM +0300, Matthew Bystrin wrote:
> > Add timeout argument to do_xfer_with_response() with subsequent changes
> > in corresponding drivers. To maintain backward compatibility use
> > previous hardcoded timeout value.
> >
Hi Matthew, Sudeep,
this is something I had my eyes on since a while and never get back to
it....so thanks for looking at this first of all...
> > According to SCMI specification [1] there is no defined timeout for
> > delayed messages in the interface. While hardcoded 2 seconds timeout
> > might be good enough for existing protocol drivers, moving it to the
> > function argument may be useful for vendor-specific protocols with
> > different timing needs.
> >
>
> Please post this patch along with the vendor specific protocols mentioned
> above and with the reasoning as why 2s is not sufficient.
Ack on this, it would be good to understand why a huge 2 secs is not
enough...and also...
>
> Also instead of churning up existing users/usage, we can explore to had
> one with this timeout as alternative if you present and convince the
> validity of your use-case and the associated timing requirement.
>
...with the proposed patch (and any kind of alternative API proposed
by Sudeep) the delayed response timeout becomes a parameter of the method
do_xfer_with_response() and so, as a consequence, this timoeut becomes
effectively configurable per-transaction, while usually a timeout is
commonly configurable per-channel, so valid as a whole for any protocol
on that channel across the whole platform, AND optionally describable as
different from the default standard value via DT props (like max-rx-timeout).
Is this what we want ? (a per-transaction configurable timeout ?)
If not, it could be an option to make instead this a per-channel optional
new DT described property so that you can configure globally a different
delayed timeout.
If yes, how this new parameter is meant to be used/configured/chosen ?
on a per-protocol/command basis, unrelated to the specific platform we run on ?
Thanks,
Cristian
Powered by blists - more mailing lists