Re: [PATCHv3 6/6] drivers/staging/rtl8821ae: replace magic number by macro

From: David Rientjes
Date: Tue Jun 24 2014 - 20:52:53 EST


On Tue, 24 Jun 2014, Peter Wu wrote:

> (staging drivers are handled by Greg KH, cc'ing him)
>
> On Tuesday 24 June 2014 00:11:51 Rickard Strandqvist wrote:
> > For consistency with other drivers, replace a magic number by a macro.
> >
> > Signed-off-by: Rickard Strandqvist <rickard_strandqvist@xxxxxxxxxxxxxxxxxx>
> > Reviewed-by: Peter Wu <peter@xxxxxxxxxxxxx>
> > ---
> > drivers/staging/rtl8821ae/rtl8821ae/hw.c | 2 +-
> > drivers/staging/rtl8821ae/rtl8821ae/reg.h | 1 +
> > 2 files changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/staging/rtl8821ae/rtl8821ae/hw.c b/drivers/staging/rtl8821ae/rtl8821ae/hw.c
> > index 1b8583b..1aa1661 100644
> > --- a/drivers/staging/rtl8821ae/rtl8821ae/hw.c
> > +++ b/drivers/staging/rtl8821ae/rtl8821ae/hw.c
> > @@ -1623,7 +1623,7 @@ static int _rtl8821ae_set_media_status(struct ieee80211_hw *hw,
> >
> > rtl_write_byte(rtlpriv, (MSR), bt_msr);
> > rtlpriv->cfg->ops->led_control(hw, ledaction);
> > - if ((bt_msr & ~0xfc) == MSR_AP)
> > + if ((bt_msr & MSR_MASK) == MSR_AP)
> > rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x00);
> > else
> > rtl_write_byte(rtlpriv, REG_BCNTCFG + 1, 0x66);
> > diff --git a/drivers/staging/rtl8821ae/rtl8821ae/reg.h b/drivers/staging/rtl8821ae/rtl8821ae/reg.h
> > index beffb42..4cb3ca9 100644
> > --- a/drivers/staging/rtl8821ae/rtl8821ae/reg.h
> > +++ b/drivers/staging/rtl8821ae/rtl8821ae/reg.h
> > @@ -431,6 +431,7 @@
> > #define MSR_ADHOC 0x01
> > #define MSR_INFRA 0x02
> > #define MSR_AP 0x03
> > +#define MSR_MASK 0x03
> >
> > #define RRSR_RSC_OFFSET 21
> > #define RRSR_SHORT_OFFSET 23

Doing this certainly is better than the old code, but if you're going to
add an MSR_MASK I think it would be better to define it and move all of
these MSR_* bits to a generalized bit/wireless/rtlwifi header since they
all need it and there's no changes between them.

Notice how much of this handling is already wrong where rtlwifi drivers
are checking for bt_msr & 0xfc == MSR_AP which is obviously an impossible
condition, and those aren't even staging drivers.

A cleanup in this area would be most helpful.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/