* [bug report] wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices
@ 2022-12-03 12:54 Dan Carpenter
0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2022-12-03 12:54 UTC (permalink / raw)
To: shayne.chen; +Cc: linux-wireless, linux-mediatek
Hello Shayne Chen,
The patch 98686cd21624: "wifi: mt76: mt7996: add driver for MediaTek
Wi-Fi 7 (802.11be) devices" from Nov 22, 2022, leads to the following
Smatch static checker warning:
drivers/net/wireless/mediatek/mt76/mt7996/debugfs.c:657 mt7996_rf_regval_set()
warn: passing casted pointer '&val' to 'mt7996_mcu_rf_regval()' 64 vs 32.
drivers/net/wireless/mediatek/mt76/mt7996/debugfs.c
652 static int
653 mt7996_rf_regval_set(void *data, u64 val)
654 {
655 struct mt7996_dev *dev = data;
656
--> 657 return mt7996_mcu_rf_regval(dev, dev->mt76.debugfs_reg, (u32 *)&val, true);
^^^^^^^^^^^
This code only "works" on little endian systems. You have to do
something like:
u32 u32_val = val;
return mt7996_mcu_rf_regval(dev, dev->mt76.debugfs_reg, &u32_val, true);
658 }
regards,
dan carpenter
^ permalink raw reply [flat|nested] 2+ messages in thread
* [bug report] wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices
@ 2022-12-03 12:55 Dan Carpenter
0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2022-12-03 12:55 UTC (permalink / raw)
To: shayne.chen; +Cc: linux-wireless, linux-mediatek
Hello Shayne Chen,
The patch 98686cd21624: "wifi: mt76: mt7996: add driver for MediaTek
Wi-Fi 7 (802.11be) devices" from Nov 22, 2022, leads to the following
Smatch static checker warning:
drivers/net/wireless/mediatek/mt76/mt7996/eeprom.c:72 mt7996_eeprom_load()
error: uninitialized symbol 'free_block_num'.
drivers/net/wireless/mediatek/mt76/mt7996/eeprom.c
55 static int mt7996_eeprom_load(struct mt7996_dev *dev)
56 {
57 int ret;
58
59 ret = mt76_eeprom_init(&dev->mt76, MT7996_EEPROM_SIZE);
60 if (ret < 0)
61 return ret;
62
63 if (ret) {
64 dev->flash_mode = true;
65 } else {
66 u8 free_block_num;
67 u32 block_num, i;
68
69 /* TODO: check free block event */
70 mt7996_mcu_get_eeprom_free_block(dev, &free_block_num);
free_block_num is not initialized if mt7996_mcu_get_eeprom_free_block()
fails.
71 /* efuse info not enough */
--> 72 if (free_block_num >= 59)
73 return -EINVAL;
74
75 /* read eeprom data from efuse */
76 block_num = DIV_ROUND_UP(MT7996_EEPROM_SIZE, MT7996_EEPROM_BLOCK_SIZE);
77 for (i = 0; i < block_num; i++)
78 mt7996_mcu_get_eeprom(dev, i * MT7996_EEPROM_BLOCK_SIZE);
79 }
80
81 return mt7996_check_eeprom(dev);
82 }
regards,
dan carpenter
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-12-03 12:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-03 12:55 [bug report] wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices Dan Carpenter
-- strict thread matches above, loose matches on Subject: below --
2022-12-03 12:54 Dan Carpenter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).