Skip to content

Commit

Permalink
wifi: mt76: mt792x: add the illegal value check for mtcl table of acpi
Browse files Browse the repository at this point in the history
The mtcl table provided regulatory information for 5.9/6Ghz channels and
configured by platform venders. So, sometimes vendors may write illegal
values, and therefore it is necessary to check and add corresponding
handling for such cases.

Signed-off-by: Leon Yen <leon.yen@mediatek.com>
Signed-off-by: Ming Yen Hsieh <mingyen.hsieh@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
  • Loading branch information
Ming Yen Hsieh authored and nbd168 committed Feb 22, 2024
1 parent 1f01276 commit 926f9fb
Showing 1 changed file with 7 additions and 3 deletions.
10 changes: 7 additions & 3 deletions drivers/net/wireless/mediatek/mt76/mt792x_acpi_sar.c
Original file line number Diff line number Diff line change
Expand Up @@ -353,11 +353,15 @@ static u8
mt792x_acpi_get_mtcl_map(int row, int column, struct mt792x_asar_cl *cl)
{
u8 config = 0;
u8 mode_6g, mode_5g9;

if (cl->cl6g[row] & BIT(column))
config |= (cl->mode_6g & 0x3) << 2;
mode_6g = (cl->mode_6g > 0x02) ? 0 : cl->mode_6g;
mode_5g9 = (cl->mode_5g9 > 0x01) ? 0 : cl->mode_5g9;

if ((cl->cl6g[row] & BIT(column)) || cl->mode_6g == 0x02)
config |= (mode_6g & 0x3) << 2;
if (cl->version > 1 && cl->cl5g9[row] & BIT(column))
config |= (cl->mode_5g9 & 0x3);
config |= (mode_5g9 & 0x3);

return config;
}
Expand Down

0 comments on commit 926f9fb

Please sign in to comment.