Search Linux Wireless

RE: [PATCH] wifi: rtw88: Use random MAC when efuse MAC invalid

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Chris Morgan <macromorgan@xxxxxxxxxxx>
> Sent: Saturday, December 9, 2023 4:34 AM
> To: Larry Finger <Larry.Finger@xxxxxxxxxxxx>
> Cc: Chris Morgan <macroalpha82@xxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx; kvalo@xxxxxxxxxx; Ping-Ke Shih
> <pkshih@xxxxxxxxxxx>
> Subject: Re: [PATCH] wifi: rtw88: Use random MAC when efuse MAC invalid
> 
> 
> On Fri, Dec 08, 2023 at 10:17:00AM -0600, Larry Finger wrote:
> > On 12/8/23 09:07, Chris Morgan wrote:
> > > From: Chris Morgan <macromorgan@xxxxxxxxxxx>
> > >
> > > When the MAC address read from the efuse data is invalid, warn the
> > > user and use a random MAC address instead.
> > >
> > > On a device I am currently using (Anbernic RG-ARC) with a rtw8821cs
> > > the efuse appears to be incompletely/improperly programmed. The MAC
> > > address reads as ff:ff:ff:ff:ff:ff. When networkmanager attempts to
> > > initiate a connection (and I haven't hard-coded a MAC address or
> > > set it to random) it fails to establish a connection.
> > >
> > > Signed-off-by: Chris Morgan <macromorgan@xxxxxxxxxxx>
> > > ---
> > >   drivers/net/wireless/realtek/rtw88/main.c | 5 +++++
> > >   1 file changed, 5 insertions(+)
> > >
> > > diff --git a/drivers/net/wireless/realtek/rtw88/main.c b/drivers/net/wireless/realtek/rtw88/main.c
> > > index 4a33d2e47f33..6d22628129d0 100644
> > > --- a/drivers/net/wireless/realtek/rtw88/main.c
> > > +++ b/drivers/net/wireless/realtek/rtw88/main.c
> > > @@ -2008,6 +2008,11 @@ static int rtw_chip_efuse_info_setup(struct rtw_dev *rtwdev)
> > >     efuse->ext_pa_5g = efuse->pa_type_5g & BIT(0) ? 1 : 0;
> > >     efuse->ext_lna_2g = efuse->lna_type_5g & BIT(3) ? 1 : 0;
> > > +   if (!is_valid_ether_addr(efuse->addr)) {
> > > +           eth_random_addr(efuse->addr);
> > > +           dev_warn(rtwdev->dev, "efuse MAC invalid, using random\n");
> > > +   }
> > > +
> > >   out_disable:
> > >     rtw_chip_efuse_disable(rtwdev);
> >
> > Reviewed by Larry Finger <Larry.Finger@xxxxxxxxxxxx>

Acked-by: Ping-Ke Shih <pkshih@xxxxxxxxxxx>

Patch looks good to me. At least, it can have a valid MAC address. 


> >
> > Thanks for this patch.
> >
> > There are a number of SDIO devices known to me with improperly coded EFUSE
> > values. It seems that RTW8723DS chips perform poorly even when given a valid
> > MAC address. Is this also true for RTW8821CS chips?
> 
> The RTW8821CS I have in this specific case doesn't perform all that
> well, but it also has sub-optimal antennas. I'm not noticing any major
> performance difference between the devices with a valid MAC address
> and the device I have without one. They're both pulling about 8MB/s
> over scp on a 5GHz 802.11ac(ax wifi gateway) network.
> 

It seems like we still need to have a set of _default_ efuse values.







[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux