[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAKxU2N-16SyWLTw5SPGy5mOeQO2tqOiVdYqS8Ts7s8BF_WpvQA@mail.gmail.com>
Date: Tue, 5 Nov 2024 14:23:54 -0800
From: Rosen Penev <rosenp@...il.com>
To: Toke Høiland-Jørgensen <toke@...e.dk>
Cc: linux-wireless@...r.kernel.org, kvalo@...nel.org, nbd@....name,
yangshiji66@...look.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCHv2] wifi: ath9k: return by of_get_mac_address
On Tue, Nov 5, 2024 at 5:21 AM Toke Høiland-Jørgensen <toke@...e.dk> wrote:
>
> Rosen Penev <rosenp@...il.com> writes:
>
> > When using nvmem, ath9k could potentially be loaded before nvmem, which
> > loads after mtd. This is an issue if DT contains an nvmem mac address.
> >
> > If nvmem is not ready in time for ath9k, -EPROBE_DEFER is returned. Pass
> > it to _probe so that ath9k can properly grab a potentially present MAC
> > address.
> >
> > Signed-off-by: Rosen Penev <rosenp@...il.com>
> > ---
> > v2: modified commit message
> > drivers/net/wireless/ath/ath9k/init.c | 4 +---
> > 1 file changed, 1 insertion(+), 3 deletions(-)
> >
> > diff --git a/drivers/net/wireless/ath/ath9k/init.c b/drivers/net/wireless/ath/ath9k/init.c
> > index f712bb6d1f47..5f4efc760183 100644
> > --- a/drivers/net/wireless/ath/ath9k/init.c
> > +++ b/drivers/net/wireless/ath/ath9k/init.c
> > @@ -647,9 +647,7 @@ static int ath9k_of_init(struct ath_softc *sc)
> > ah->ah_flags |= AH_NO_EEP_SWAP;
> > }
> >
> > - of_get_mac_address(np, common->macaddr);
> > -
> > - return 0;
> > + return of_get_mac_address(np, common->macaddr);
>
> Hmm, so AFAICT, of_get_mac_address() can fail with lots of other error
> codes than EPROBE_DEFER, no? And with this change, if it does, we now
> abort the ath9k device init, where before we just ignored any errors.
>
> So, to be conservative, maybe it's better to do something like:
>
> ret = of_get_mac_address(np, common->macaddr);
> if (ret == -EPROBE_DEFER)
> return ret;
>
> return 0;
>
>
> WDYT?
I agree. Sent v3.
>
> -Toke
Powered by blists - more mailing lists