# Re: \[PATCH 1/2\] mwifiex: Use non-posted PCI register writes

- From: Andy Shevchenko \<hidden\>
- Date: 2021-09-23 19:42:11 
- List: netdev
- Page: https://ratatoskr.run/netdev/2021/09/1519968
- Thread: https://ratatoskr.run/linux-wireless/2021/08/1492167/t.md

```text
On Thu, Sep 23, 2021 at 6:28 PM Jonas Dreßler [ref] wrote:
> On 9/22/21 2:50 PM, Jonas Dreßler wrote:

...

> - Just calling mwifiex_write_reg() once and then blocking until the card
> wakes up using my delay-loop doesn't fix the issue, it's actually
> writing multiple times that fixes the issue
>
> These observations sound a lot like writes (and even reads) are actually
> being dropped, don't they?

It sounds like you're writing into a not ready (fully powered on) device.

To check this, try to put a busy loop for reading and check the value
till it gets 0.

Something like

  unsigned int count = 1000;

  do {
    if (mwifiex_read_reg(...) == 0)
      break;
  } while (--count);


-- 
With Best Regards,
Andy Shevchenko
```
