]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
wifi: mt76: mt7996: fix register mapping
authorPeter Chiu <chui-hao.chiu@mediatek.com>
Thu, 9 Jan 2025 11:04:36 +0000 (19:04 +0800)
committerFelix Fietkau <nbd@nbd.name>
Tue, 14 Jan 2025 12:42:30 +0000 (13:42 +0100)
Bypass the entry when ofs is equal to dev->reg.map[i].size.
Without this patch, it would get incorrect register mapping when the CR
address is located at the boundary of an entry.

Fixes: 98686cd21624 ("wifi: mt76: mt7996: add driver for MediaTek Wi-Fi 7 (802.11be) devices")
Signed-off-by: Peter Chiu <chui-hao.chiu@mediatek.com>
Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Link: https://patch.msgid.link/OSZPR01MB84344FEFF53004B5CF40BCC198132@OSZPR01MB8434.jpnprd01.prod.outlook.com
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt7996/mmio.c

index d85abec19c6f80abcd2b8226fec199ddc7b6c72f..7a8ee6c75cf2bd0541291b3bfa87eaf81c6446d4 100644 (file)
@@ -177,7 +177,7 @@ static u32 __mt7996_reg_addr(struct mt7996_dev *dev, u32 addr)
                        continue;
 
                ofs = addr - dev->reg.map[i].phys;
-               if (ofs > dev->reg.map[i].size)
+               if (ofs >= dev->reg.map[i].size)
                        continue;
 
                return dev->reg.map[i].mapped + ofs;