Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

wifi: b43: silence sparse warnings

sparse complains on this code about casts that lose bits
due to the usage of bitwise not, but really we do want
16 bits only, so clarify that by using masks.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://msgid.link/20240223114023.c64e2d348453.Iccc4ace1116721a044e5f31f40ea7709e72145f3@changeid

authored by

Johannes Berg and committed by
Kalle Valo
576b2015 73494014

+5 -5
+3 -3
drivers/net/wireless/broadcom/b43/phy_ht.c
··· 322 322 B43_PHY_B_BBCFG_RSTCCA | B43_PHY_B_BBCFG_RSTRX); 323 323 else 324 324 b43_phy_mask(dev, B43_PHY_B_BBCFG, 325 - (u16)~(B43_PHY_B_BBCFG_RSTCCA | 326 - B43_PHY_B_BBCFG_RSTRX)); 325 + 0xffff & ~(B43_PHY_B_BBCFG_RSTCCA | 326 + B43_PHY_B_BBCFG_RSTRX)); 327 327 328 328 b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp); 329 329 } ··· 551 551 phy_ht->tx_pwr_idx[i] = 552 552 b43_phy_read(dev, status_regs[i]); 553 553 } 554 - b43_phy_mask(dev, B43_PHY_HT_TXPCTL_CMD_C1, ~en_bits); 554 + b43_phy_mask(dev, B43_PHY_HT_TXPCTL_CMD_C1, 0xffff & ~en_bits); 555 555 } else { 556 556 b43_phy_set(dev, B43_PHY_HT_TXPCTL_CMD_C1, en_bits); 557 557
+2 -2
drivers/net/wireless/broadcom/b43/phy_n.c
··· 6246 6246 b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp16 | 4); 6247 6247 /* Take BPHY out of the reset */ 6248 6248 b43_phy_mask(dev, B43_PHY_B_BBCFG, 6249 - (u16)~(B43_PHY_B_BBCFG_RSTCCA | B43_PHY_B_BBCFG_RSTRX)); 6249 + ~(B43_PHY_B_BBCFG_RSTCCA | B43_PHY_B_BBCFG_RSTRX) & 0xffff); 6250 6250 b43_write16(dev, B43_MMIO_PSM_PHY_HDR, tmp16); 6251 6251 } 6252 6252 ··· 6377 6377 } else if (channel_type == NL80211_CHAN_HT40MINUS) { 6378 6378 b43_phy_mask(dev, B43_NPHY_RXCTL, ~B43_NPHY_RXCTL_BSELU20); 6379 6379 if (phy->rev >= 7) 6380 - b43_phy_mask(dev, 0x310, (u16)~0x8000); 6380 + b43_phy_mask(dev, 0x310, 0x7fff); 6381 6381 } 6382 6382 6383 6383 if (phy->rev >= 19) {