summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/drivers/wifi/generic/acpi.c27
-rw-r--r--src/include/sar.h1
2 files changed, 28 insertions, 0 deletions
diff --git a/src/drivers/wifi/generic/acpi.c b/src/drivers/wifi/generic/acpi.c
index fd1da06934..d3da51b116 100644
--- a/src/drivers/wifi/generic/acpi.c
+++ b/src/drivers/wifi/generic/acpi.c
@@ -143,6 +143,28 @@ static void wifi_dsm_unii4_control_enable(void *args)
acpigen_write_return_integer(dsm_config->unii_4);
}
+/*
+ * Function 12: Control Enablement 802.11be on certificated modules
+ * Bit 0
+ * 0 - 11BE disabled for China Mainland
+ * 1 - 11BE enabled for China Mainland
+ *
+ * Bit 1
+ * 0 - 11BE disabled for South Korea
+ * 1 - 11BE enabled for South Korea
+ *
+ * Bit 2:27 - Reserved (shall be set to zeroes)
+ *
+ * Bit 28:31 - 11BE enablement revision
+ *
+ */
+static void wifi_dsm_11be_country_enablement(void *args)
+{
+ struct dsm_profile *dsm_config = (struct dsm_profile *)args;
+
+ acpigen_write_return_integer(dsm_config->enablement_11be);
+}
+
static void wifi_dsm_ddrrfim_func3_cb(void *ptr)
{
const bool is_cnvi_ddr_rfim_enabled = *(bool *)ptr;
@@ -158,6 +180,11 @@ static void (*wifi_dsm_callbacks[])(void *) = {
wifi_dsm_uart_configurations, /* Function 5 */
wifi_dsm_ukrane_russia_11ax_enable, /* Function 6 */
wifi_dsm_unii4_control_enable, /* Function 7 */
+ NULL, /* Function 8 */
+ NULL, /* Function 9 */
+ NULL, /* Function 10 */
+ NULL, /* Function 11 */
+ wifi_dsm_11be_country_enablement, /* Function 12 */
};
/*
diff --git a/src/include/sar.h b/src/include/sar.h
index 8d712dec81..c201cea2f4 100644
--- a/src/include/sar.h
+++ b/src/include/sar.h
@@ -57,6 +57,7 @@ struct dsm_profile {
uint32_t uart_configurations;
uint32_t enablement_11ax;
uint32_t unii_4;
+ uint32_t enablement_11be;
};
struct sar_header {