summaryrefslogtreecommitdiff
path: root/src/include/sar.h
diff options
context:
space:
mode:
authorPoornima Tom <poornima.tom@intel.com>2024-04-11 07:07:42 +0530
committerJérémy Compostella <jeremy.compostella@intel.com>2024-07-03 17:01:25 +0000
commit89566946fb6ff46b85ae2c560076fb377d0f8128 (patch)
treecce9ccb6cc8837401de3d52a57e61f7b91325dd4 /src/include/sar.h
parent71dda74fe8addc0beffffc5a039c896c3f910640 (diff)
drivers/wifi: Support 320Mhz Bandwidth Enablement per MCC
Add support for the configuration of 320MHz Bandwidth per MCC based on countries. The implementation follows document #559910 Intel Connectivity Platforms BIOS Guidelines revision 8.3. BUG=b:333804562 BRANCH=firmware-rex-15709.B TEST=WBEM method is added to the CNVW device and return the data supplied by the SAR binary blob Change-Id: Ie76794825f1a0104d199c078aa4ffc714aa95b17 Signed-off-by: Poornima Tom <poornima.tom@intel.com> Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/81790 Reviewed-by: Subrata Banik <subratabanik@google.com> Reviewed-by: Eric Lai <ericllai@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/include/sar.h')
-rw-r--r--src/include/sar.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/include/sar.h b/src/include/sar.h
index 7c1b95d530..5968645154 100644
--- a/src/include/sar.h
+++ b/src/include/sar.h
@@ -9,9 +9,10 @@
#define MAX_DENYLIST_ENTRY 16
#define MAX_DSAR_SET_COUNT 3
#define MAX_GEO_OFFSET_REVISION 3
-#define MAX_PROFILE_COUNT 6
+#define MAX_PROFILE_COUNT 7
#define MAX_SAR_REVISION 2
#define BSAR_REVISION 1
+#define WBEM_REVISION 0
#define REVISION_SIZE 1
#define SAR_REV0_CHAINS_COUNT 2
#define SAR_REV0_SUBBANDS_COUNT 5
@@ -73,6 +74,11 @@ struct bsar_profile {
uint8_t le_lr_modulation;
} __packed;
+struct wbem_profile {
+ uint8_t revision;
+ uint32_t bandwidth_320mhz_country_enablement;
+} __packed;
+
struct sar_header {
char marker[SAR_STR_PREFIX_SIZE];
uint8_t version;
@@ -88,6 +94,7 @@ union wifi_sar_limits {
struct avg_profile *wtas;
struct dsm_profile *dsm;
struct bsar_profile *bsar;
+ struct wbem_profile *wbem;
};
void *profile[MAX_PROFILE_COUNT];
};