Re: [PATCH 3/3] staging: rtlwifi: simplify logical operation

From: Larry Finger
Date: Thu Aug 24 2017 - 15:06:52 EST


On 08/23/2017 08:22 AM, Arnd Bergmann wrote:
gcc notices a very complicated way to check a value
for being equal to one, and warns about it:

drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c: In function 'halbtc8822b1ant_set_ext_ant_switch':
drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c:2105:9: error: '~' on a boolean expression [-Werror=bool-operation]
~switch_polatiry_inverse :
^
drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c:2105:9: note: did you mean to use logical not?
~switch_polatiry_inverse :
^

This simplifies this expression to make it more readable
and to make gcc happy.

Fixes: 56bde846304e ("staging: r8822be: Add existing rtlwifi and rtl_pci parts for new driver")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

Yes, it should have bee logical not rather than a bitwise inversion. Your version is much more readable. In a followup, I will fix the spelling of polarity, but yours is fine.

Acked-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx>

Larry

---
drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c b/drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c
index 933d188d52b4..157395b85405 100644
--- a/drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c
+++ b/drivers/staging/rtlwifi/btcoexist/halbtc8822b1ant.c
@@ -2101,9 +2101,7 @@ static void halbtc8822b1ant_set_ext_ant_switch(struct btc_coexist *btcoexist,
* 0xcbd[1:0] = 2b'01 => Ant to BTG,
* 0xcbd[1:0] = 2b'10 => Ant to WLG
*/
- switch_polatiry_inverse = (rfe_type->ext_ant_switch_ctrl_polarity == 1 ?
- ~switch_polatiry_inverse :
- switch_polatiry_inverse);
+ switch_polatiry_inverse = rfe_type->ext_ant_switch_ctrl_polarity == 1;
switch (pos_type) {
default: