wifi: iwlwifi: allow only CN mcc from WRDD
Block other mcc expect CN from WRDD ACPI. Signed-off-by: Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20240808232017.fe6ea7aa4b39.I86004687a2963fe26f990770aca103e2f5cb1628@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
1c7e1068a7
commit
ff5aabe7c2
@ -357,6 +357,11 @@ int iwl_acpi_get_mcc(struct iwl_fw_runtime *fwrt, char *mcc)
|
|||||||
}
|
}
|
||||||
|
|
||||||
mcc_val = wifi_pkg->package.elements[1].integer.value;
|
mcc_val = wifi_pkg->package.elements[1].integer.value;
|
||||||
|
if (mcc_val != BIOS_MCC_CHINA) {
|
||||||
|
ret = -EINVAL;
|
||||||
|
IWL_DEBUG_RADIO(fwrt, "ACPI WRDD is supported only for CN\n");
|
||||||
|
goto out_free;
|
||||||
|
}
|
||||||
|
|
||||||
mcc[0] = (mcc_val >> 8) & 0xff;
|
mcc[0] = (mcc_val >> 8) & 0xff;
|
||||||
mcc[1] = mcc_val & 0xff;
|
mcc[1] = mcc_val & 0xff;
|
||||||
|
@ -45,6 +45,8 @@
|
|||||||
#define IWL_WTAS_ENABLE_IEC_MSK 0x4
|
#define IWL_WTAS_ENABLE_IEC_MSK 0x4
|
||||||
#define IWL_WTAS_USA_UHB_MSK BIT(16)
|
#define IWL_WTAS_USA_UHB_MSK BIT(16)
|
||||||
|
|
||||||
|
#define BIOS_MCC_CHINA 0x434e
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The profile for revision 2 is a superset of revision 1, which is in
|
* The profile for revision 2 is a superset of revision 1, which is in
|
||||||
* turn a superset of revision 0. So we can store all revisions
|
* turn a superset of revision 0. So we can store all revisions
|
||||||
|
@ -638,7 +638,7 @@ int iwl_uefi_get_mcc(struct iwl_fw_runtime *fwrt, char *mcc)
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (data->mcc != UEFI_MCC_CHINA) {
|
if (data->mcc != BIOS_MCC_CHINA) {
|
||||||
ret = -EINVAL;
|
ret = -EINVAL;
|
||||||
IWL_DEBUG_RADIO(fwrt, "UEFI WRDD is supported only for CN\n");
|
IWL_DEBUG_RADIO(fwrt, "UEFI WRDD is supported only for CN\n");
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -151,8 +151,6 @@ struct uefi_cnv_var_splc {
|
|||||||
u32 default_pwr_limit;
|
u32 default_pwr_limit;
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
#define UEFI_MCC_CHINA 0x434e
|
|
||||||
|
|
||||||
/* struct uefi_cnv_var_wrdd - WRDD table as defined in UEFI
|
/* struct uefi_cnv_var_wrdd - WRDD table as defined in UEFI
|
||||||
* @revision: the revision of the table
|
* @revision: the revision of the table
|
||||||
* @mcc: country identifier as defined in ISO/IEC 3166-1 Alpha 2 code
|
* @mcc: country identifier as defined in ISO/IEC 3166-1 Alpha 2 code
|
||||||
|
Loading…
Reference in New Issue
Block a user