Re: [PATCH 12/12] wifi: mwifiex: drop asynchronous init waiting code

From: Francesco Dolcini
Date: Tue Sep 10 2024 - 04:31:14 EST


On Mon, Sep 09, 2024 at 10:14:56PM +0200, Sascha Hauer wrote:
> On Mon, Sep 09, 2024 at 07:14:11PM +0200, Francesco Dolcini wrote:
> > On Mon, Aug 26, 2024 at 01:01:33PM +0200, Sascha Hauer wrote:
> > > Historically all commands sent to the mwifiex driver have been
> > > asynchronous. For this reason there is code that waits for the
> > > last initialization command to complete before going on. Nowadays the
> > > commands can be sent synchronously, meaning that they are completed
> > > when the command call returns. This makes all the waiting code
> > > unnecessary. It is removed in this patch.
> >
> > I am not sure to understand this. Is the code to have asynchronous command gone
> > or it is just not used anymore? In the code here you remove waiting for the
> > firmware init to be complete, but from the patch is not clear why this is not
> > needed anymore. Maybe a specific commit you can reference in which such
> > support was removed?
>
> Commands can still be sent asynchronously by passing sync=false to
> mwifiex_send_cmd(), but this is no longer done in the initialization

Understood. So this is just not unused code since quite some time.
To me the change looks ok, but I would appreciate if someone else can have
another look.


> | commit 7bff9c974e1a70819c30c37d8ec0d84d456f8237
> | Author: Stone Piao <piaoyun@xxxxxxxxxxx>
> | Date: Tue Sep 25 20:23:39 2012 -0700
> |
> | mwifiex: send firmware initialization commands synchronously
> |
> | The driver will send some commands to firmware during the
> | initialization. Currently these commands are sent asynchronously,
> | which means that we firstly insert all of them to a pre-allocated
> | command queue, and then start to process them one by one. The
> | command queue will soon be exhausted if we keep adding new
> | initialization commands.
> |
> | This issue can be resolved by sending initialization commands
> | synchronously because each command is consumed and the buffer is
> | recycled before queuing next command.
> |
> | Signed-off-by: Stone Piao <piaoyun@xxxxxxxxxxx>
> | Signed-off-by: Bing Zhao <bzhao@xxxxxxxxxxx>
> | Signed-off-by: John W. Linville <linville@xxxxxxxxxxxxx>
>
> I'll mention this commit in the commit message next round.

Perfect, thanks.