mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-14 12:37:32 +00:00
wifi: mt76: mt792x: add the illegal value check for mtcl table of acpi
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>
This commit is contained in:
parent
1f01276b7a
commit
926f9fb7df
1 changed files with 7 additions and 3 deletions
|
@ -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;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue