[PATCH v8 01/11] firmware: arm_scmi: Add configurable polling mode for transports

Sudeep Holla sudeep.holla at arm.com
Tue Dec 21 12:23:36 PST 2021


On Wed, Dec 22, 2021 at 01:08:54AM +0530, Pratyush Yadav wrote:
> Hi,
> 
> On 20/12/21 07:56PM, Cristian Marussi wrote:
> > SCMI communications along TX channels can optionally be provided of a
> > completion interrupt; when such interrupt is not available, command
> > transactions should rely on polling, where the SCMI core takes care to
> > repeatedly evaluate the transport-specific .poll_done() function, if
> > available, to determine if and when a request was fully completed or
> > timed out.
> > 
> > Such mechanism is already present and working on a single transfer base:
> > SCMI protocols can indeed enable hdr.poll_completion on specific commands
> > ahead of each transfer and cause that transaction to be handled with
> > polling.
> > 
> > Introduce a couple of flags to be able to enforce such polling behaviour
> > globally at will:
> > 
> >  - scmi_desc.force_polling: to statically switch the whole transport to
> >    polling mode.
> > 
> >  - scmi_chan_info.no_completion_irq: to switch a single channel dynamically
> >    to polling mode if, at runtime, is determined that no completion
> >    interrupt was available for such channel.
> > 
> > Signed-off-by: Cristian Marussi <cristian.marussi at arm.com>
> 
> This patch breaks linux-next build for me with LLVM.
> 
> drivers/firmware/arm_scmi/driver.c:869:6: error: variable 'i_' is uninitialized when used within its own initialization [-Werror,-Wuninitialized]
>         if (IS_POLLING_ENABLED(cinfo, info))
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/firmware/arm_scmi/driver.c:59:33: note: expanded from macro 'IS_POLLING_ENABLED'
>                         IS_TRANSPORT_POLLING_CAPABLE(i_));              \
>                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~
> drivers/firmware/arm_scmi/driver.c:45:19: note: expanded from macro 'IS_TRANSPORT_POLLING_CAPABLE'
>         typeof(__i) i_ = __i;                                           \
>                     ~~   ^~~
> 1 error generated.
> 

Thanks for the report. The bot complained last night and I have pushed
the update though not in time for linux-next today, must make it to
tomorrow's cut.

--
Regards,
Sudeep



More information about the linux-arm-kernel mailing list