From f337537a0340ade11bbcec730f05e08d7cad8f8f Mon Sep 17 00:00:00 2001 From: Meera Ravindranath Date: Thu, 10 Nov 2022 11:27:00 +0530 Subject: drivers/wifi: Fix DSM parsing issue commit b6ebcdfde58a77bea03a67b376401b9f0f3edefb restructured the DSM implementation which resulted in a regression and DSM values gets filled with junk values. This CL fixes this issue and passes the right pointer to the dsm ids structure. BUG=b:256938177 TEST=Build, boot Nivviks and check if the DSM values are parsed correctly in the SSDT dump. Signed-off-by: Meera Ravindranath Change-Id: I88782b0b7dde1fca0230472a38628e82dfd9c26c Reviewed-on: https://review.coreboot.org/c/coreboot/+/69427 Reviewed-by: Haribalaraman Ramasubramanian Reviewed-by: Eric Lai Reviewed-by: Reka Norman Tested-by: build bot (Jenkins) Reviewed-by: Henry Sun Reviewed-by: Ronak Kanabar --- src/drivers/wifi/generic/acpi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/drivers/wifi/generic/acpi.c b/src/drivers/wifi/generic/acpi.c index ee122ea2d8..869b92aea6 100644 --- a/src/drivers/wifi/generic/acpi.c +++ b/src/drivers/wifi/generic/acpi.c @@ -488,7 +488,7 @@ static void emit_sar_acpi_structures(const struct device *dev, struct dsm_profil /* copy the dsm data to be later used for creating _DSM function */ if (sar_limits.dsm != NULL) - memcpy(dsm, &sar_limits.dsm, sizeof(struct dsm_profile)); + memcpy(dsm, sar_limits.dsm, sizeof(struct dsm_profile)); free(sar_limits.sar); } @@ -571,7 +571,7 @@ static void wifi_ssdt_write_properties(const struct device *dev, const char *sco dsm_ids[dsm_count].uuid = ACPI_DSM_OEM_WIFI_UUID; dsm_ids[dsm_count].callbacks = &wifi_dsm_callbacks[0]; dsm_ids[dsm_count].count = ARRAY_SIZE(wifi_dsm_callbacks); - dsm_ids[dsm_count].arg = NULL; + dsm_ids[dsm_count].arg = &dsm; dsm_count++; } } -- cgit v1.2.3