Re: [PATCH] net/dsa: remove unused macros to tame gcc warning

From: Florian Fainelli
Date: Fri Nov 06 2020 - 11:39:38 EST




On 11/6/2020 6:18 AM, Andrew Lunn wrote:
> On Fri, Nov 06, 2020 at 01:37:30PM +0800, Alex Shi wrote:
>> There are some macros unused, they causes much gcc warnings. Let's
>> remove them to tame gcc.
>>
>> net/dsa/tag_brcm.c:51:0: warning: macro "BRCM_EG_RC_SWITCH" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:53:0: warning: macro "BRCM_EG_RC_MIRROR" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:55:0: warning: macro "BRCM_EG_TC_MASK" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:35:0: warning: macro "BRCM_IG_TS_SHIFT" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:46:0: warning: macro "BRCM_EG_RC_MASK" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:49:0: warning: macro "BRCM_EG_RC_PROT_SNOOP" is not
>> used [-Wunused-macros]
>> net/dsa/tag_brcm.c:34:0: warning: macro "BRCM_IG_TE_MASK" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:43:0: warning: macro "BRCM_EG_CID_MASK" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:50:0: warning: macro "BRCM_EG_RC_PROT_TERM" is not
>> used [-Wunused-macros]
>> net/dsa/tag_brcm.c:54:0: warning: macro "BRCM_EG_TC_SHIFT" is not used
>> [-Wunused-macros]
>> net/dsa/tag_brcm.c:52:0: warning: macro "BRCM_EG_RC_MAC_LEARN" is not
>> used [-Wunused-macros]
>> net/dsa/tag_brcm.c:48:0: warning: macro "BRCM_EG_RC_EXCEPTION" is not
>> used [-Wunused-macros]
>>
>> Signed-off-by: Alex Shi <alex.shi@xxxxxxxxxxxxxxxxx>
>> Cc: Andrew Lunn <andrew@xxxxxxx>
>> Cc: Vivien Didelot <vivien.didelot@xxxxxxxxx>
>> Cc: Florian Fainelli <f.fainelli@xxxxxxxxx>
>> Cc: Vladimir Oltean <olteanv@xxxxxxxxx>
>> Cc: "David S. Miller" <davem@xxxxxxxxxxxxx>
>> Cc: Jakub Kicinski <kuba@xxxxxxxxxx>
>> Cc: netdev@xxxxxxxxxxxxxxx
>> Cc: linux-kernel@xxxxxxxxxxxxxxx
>> ---
>> net/dsa/tag_brcm.c | 15 ---------------
>> 1 file changed, 15 deletions(-)
>>
>> diff --git a/net/dsa/tag_brcm.c b/net/dsa/tag_brcm.c
>> index e934dace3922..ce23b5d4c6b8 100644
>> --- a/net/dsa/tag_brcm.c
>> +++ b/net/dsa/tag_brcm.c
>> @@ -30,29 +30,14 @@
>> /* 1st byte in the tag */
>> #define BRCM_IG_TC_SHIFT 2
>> #define BRCM_IG_TC_MASK 0x7
>> -/* 2nd byte in the tag */
>> -#define BRCM_IG_TE_MASK 0x3
>> -#define BRCM_IG_TS_SHIFT 7
>> /* 3rd byte in the tag */
>> #define BRCM_IG_DSTMAP2_MASK 1
>> #define BRCM_IG_DSTMAP1_MASK 0xff
>
> Hi Alex
>
> It is good to remember that there are multiple readers of source
> files. There is the compiler which generates code from it, and there
> is the human trying to understand what is going on, what the hardware
> can do, how we could maybe extend the code in the future to make use
> of bits are currently don't, etc.
>
> The compiler has no use of these macros, at the moment. But i as a
> human do. It is valuable documentation, given that there is no open
> datasheet for this hardware.
>
> I would say these warnings are bogus, and the code should be left
> alone.

Agreed, these definitions are intended to document what the hardware
does. These warnings are getting too far.
--
Florian