Furquan Shaikh submitted this change.

View Change

Approvals: build bot (Jenkins): Verified Tim Wawrzynczak: Looks good to me, approved Michael Niewöhner: Looks good to me, approved
drivers/wifi: Drop maxsleep parameter from chip config

This change drops maxsleep parameter from chip config and instead
hardcodes the deepest sleep state from which the WiFi device can wake
the system up from to SLP_TYP_S3. This is similar to how other device
drivers in coreboot report _PRW property in ACPI. It relieves the
users from adding another register attribute to devicetree since all
mainboards configure the same value. If this changes in the future, it
should be easy to bring the maxsleep config parameter back.

BUG=b:169802515
BRANCH=zork

Change-Id: I42131fced008da0d51f0f777b7f2d99deaf68827
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/46033
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
---
M src/drivers/intel/wifi/wifi.c
M src/drivers/wifi/generic/chip.h
M src/drivers/wifi/generic/generic.c
M src/mainboard/google/dedede/variants/madoo/overridetree.cb
M src/mainboard/google/dedede/variants/magolor/overridetree.cb
M src/mainboard/google/dedede/variants/waddledee/overridetree.cb
6 files changed, 3 insertions(+), 10 deletions(-)

diff --git a/src/drivers/intel/wifi/wifi.c b/src/drivers/intel/wifi/wifi.c
index cc58ac6..3c90dde 100644
--- a/src/drivers/intel/wifi/wifi.c
+++ b/src/drivers/intel/wifi/wifi.c
@@ -49,11 +49,9 @@
struct drivers_intel_wifi_config *config = dev->chip_info;
struct drivers_wifi_generic_config generic_config;

- if (config) {
+ if (config)
generic_config.wake = config->wake;
- /* By default, all intel wifi chips wake from S3 */
- generic_config.maxsleep = 3;
- }
+
wifi_generic_fill_ssdt(dev, config ? &generic_config : NULL);
}
#endif
diff --git a/src/drivers/wifi/generic/chip.h b/src/drivers/wifi/generic/chip.h
index fe3a1d1..02ab504 100644
--- a/src/drivers/wifi/generic/chip.h
+++ b/src/drivers/wifi/generic/chip.h
@@ -6,11 +6,9 @@
/**
* struct drivers_wifi_generic_config - Data structure to contain generic wifi config
* @wake: Wake pin for ACPI _PRW
- * @maxsleep: Maximum sleep state to wake from
*/
struct drivers_wifi_generic_config {
unsigned int wake;
- unsigned int maxsleep;
};

/**
diff --git a/src/drivers/wifi/generic/generic.c b/src/drivers/wifi/generic/generic.c
index 2ecaadc..0705731 100644
--- a/src/drivers/wifi/generic/generic.c
+++ b/src/drivers/wifi/generic/generic.c
@@ -189,7 +189,7 @@

/* Wake capabilities */
if (config)
- acpigen_write_PRW(config->wake, config->maxsleep);
+ acpigen_write_PRW(config->wake, ACPI_S3);

/* Fill regulatory domain structure */
if (CONFIG(HAVE_REGULATORY_DOMAIN)) {
diff --git a/src/mainboard/google/dedede/variants/madoo/overridetree.cb b/src/mainboard/google/dedede/variants/madoo/overridetree.cb
index 039fd10..257f917 100644
--- a/src/mainboard/google/dedede/variants/madoo/overridetree.cb
+++ b/src/mainboard/google/dedede/variants/madoo/overridetree.cb
@@ -103,7 +103,6 @@
device pci 1c.7 on
chip drivers/wifi/generic
register "wake" = "GPE0_DW2_03"
- register "maxsleep" = "3"
device pci 00.0 on end
end
end # PCI Express Root Port 8 - WLAN
diff --git a/src/mainboard/google/dedede/variants/magolor/overridetree.cb b/src/mainboard/google/dedede/variants/magolor/overridetree.cb
index 8a83b83..f41e9fa 100644
--- a/src/mainboard/google/dedede/variants/magolor/overridetree.cb
+++ b/src/mainboard/google/dedede/variants/magolor/overridetree.cb
@@ -287,7 +287,6 @@
device pci 1c.7 on
chip drivers/wifi/generic
register "wake" = "GPE0_DW2_03"
- register "maxsleep" = "3"
device pci 00.0 on end
end
end # PCI Express Root Port 8 - WLAN
diff --git a/src/mainboard/google/dedede/variants/waddledee/overridetree.cb b/src/mainboard/google/dedede/variants/waddledee/overridetree.cb
index a525a0f..22a08a0 100644
--- a/src/mainboard/google/dedede/variants/waddledee/overridetree.cb
+++ b/src/mainboard/google/dedede/variants/waddledee/overridetree.cb
@@ -147,7 +147,6 @@
device pci 1c.7 on
chip drivers/wifi/generic
register "wake" = "GPE0_DW2_03"
- register "maxsleep" = "3"
device pci 00.0 on end
end
end # PCI Express Root Port 8 - WLAN

To view, visit change 46033. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I42131fced008da0d51f0f777b7f2d99deaf68827
Gerrit-Change-Number: 46033
Gerrit-PatchSet: 3
Gerrit-Owner: Furquan Shaikh <furquan@google.com>
Gerrit-Reviewer: Duncan Laurie <dlaurie@chromium.org>
Gerrit-Reviewer: Furquan Shaikh <furquan@google.com>
Gerrit-Reviewer: Karthik Ramasubramanian <kramasub@google.com>
Gerrit-Reviewer: Michael Niewöhner <foss@mniewoehner.de>
Gerrit-Reviewer: Patrick Rudolph <siro@das-labor.org>
Gerrit-Reviewer: Rob Barnes <robbarnes@google.com>
Gerrit-Reviewer: Tim Wawrzynczak <twawrzynczak@chromium.org>
Gerrit-Reviewer: build bot (Jenkins) <no-reply@coreboot.org>
Gerrit-CC: Paul Menzel <paulepanter@users.sourceforge.net>
Gerrit-MessageType: merged