* [PATCH] wifi: mt76: mt7928: makes struct beacon_tlv 4-byte aligned.
@ 2026-10-05 8:39 Anthony Liu
0 siblings, 0 replies; only message in thread
From: Anthony Liu @ 2026-10-05 8:39 UTC (permalink / raw)
To: nbd, lorenzo
Cc: Sean.Wang, Leon.Yen, Quan.Zhou, Ryder.lee, litien.chang, kun.wu,
jb.tsai, emery.hsin, linux-wireless, linux-mediatek, Anthony Liu
mt76 fails when offloading beacon to MT7928 FW.
This is caused by newly added 4-byte alignment check in MT7928 FW
and works when beacon_tlv is 4-byte aligned. MT7925 is not affected
because it accepts same struct with or without extra padding bytes.
Signed-off-by: Anthony Liu <anthony.liu@mediatek.com>
---
drivers/net/wireless/mediatek/mt76/mt7925/mcu.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c b/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c
index 376cc4833242..ff51d8189b46 100644
--- a/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c
+++ b/drivers/net/wireless/mediatek/mt76/mt7925/mcu.c
@@ -2392,10 +2392,13 @@ mt7925_mcu_uni_add_beacon_offload(struct mt792x_dev *dev,
u8 pad[3];
} __packed hdr;
struct bcn_content_tlv {
+ /* DW 0 */
__le16 tag;
__le16 len;
+ /* DW 1 */
__le16 tim_ie_pos;
__le16 csa_ie_pos;
+ /* DW 2 */
__le16 bcc_ie_pos;
/* 0: disable beacon offload
* 1: enable beacon offload
@@ -2406,8 +2409,9 @@ mt7925_mcu_uni_add_beacon_offload(struct mt792x_dev *dev,
* 1: only cap field IE
*/
u8 type;
+ /* DW 3~130 */
__le16 pkt_len;
- u8 pkt[512];
+ u8 pkt[510];
} __packed beacon_tlv;
} req = {
.hdr = {
--
2.45.2
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-10-05 8:39 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-05 8:39 [PATCH] wifi: mt76: mt7928: makes struct beacon_tlv 4-byte aligned Anthony Liu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox