diff options
author | Simon Glass <sjg@chromium.org> | 2018-07-11 15:51:27 -0600 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2018-07-18 20:10:45 +0000 |
commit | e577168ae3163768bc76d23e4e121a57b436abd6 (patch) | |
tree | 60c88848327dbf51163a4c649eeaf2409fedd8bd | |
parent | 82eb80cc8c08d2f676e7cb20b3b9bdf45b91d214 (diff) |
mainboard/google/Kahlee: Select low-power mode for WiFi
Put the PCIe clock pins in power-saving mode for the WiFi module to save
power.
Note: This currently does not appear to have any effect on grunt.
BUG=b:110041917
BRANCH=none
TEST=boot without this patch:
$ iotools mem_read32 0xfed80e00
0x0046f3ff
With this patch:
$ iotools mem_read32 0xfed80e00
0x0046f3f1
Change-Id: I389815bc36b8610a30b0cbb9d73262ad392e0181
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-on: https://review.coreboot.org/27465
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rw-r--r-- | src/mainboard/google/kahlee/mainboard.c | 6 | ||||
-rw-r--r-- | src/soc/amd/stoneyridge/include/soc/southbridge.h | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/mainboard/google/kahlee/mainboard.c b/src/mainboard/google/kahlee/mainboard.c index 2efcb20bbc..2540bcd47d 100644 --- a/src/mainboard/google/kahlee/mainboard.c +++ b/src/mainboard/google/kahlee/mainboard.c @@ -150,6 +150,12 @@ static void mainboard_init(void *chip_info) GPP_CLK2_CLOCK_REQ_MAP_MASK, GPP_CLK2_CLOCK_REQ_MAP_CLK_REQ2 << GPP_CLK2_CLOCK_REQ_MAP_SHIFT); + + /* Same for the WiFi */ + clrsetbits_le32((uint32_t *)(MISC_MMIO_BASE + GPP_CLK_CNTRL), + GPP_CLK0_CLOCK_REQ_MAP_MASK, + GPP_CLK0_CLOCK_REQ_MAP_CLK_REQ0 << + GPP_CLK0_CLOCK_REQ_MAP_SHIFT); } /************************************************* diff --git a/src/soc/amd/stoneyridge/include/soc/southbridge.h b/src/soc/amd/stoneyridge/include/soc/southbridge.h index 3127f5cd47..2e953091f8 100644 --- a/src/soc/amd/stoneyridge/include/soc/southbridge.h +++ b/src/soc/amd/stoneyridge/include/soc/southbridge.h @@ -366,6 +366,10 @@ #define GPP_CLK2_CLOCK_REQ_MAP_MASK (0xf << GPP_CLK2_CLOCK_REQ_MAP_SHIFT) #define GPP_CLK2_CLOCK_REQ_MAP_CLK_REQ2 3 +#define GPP_CLK0_CLOCK_REQ_MAP_SHIFT 0 +#define GPP_CLK0_CLOCK_REQ_MAP_MASK (0xf << GPP_CLK0_CLOCK_REQ_MAP_SHIFT) +#define GPP_CLK0_CLOCK_REQ_MAP_CLK_REQ0 1 + struct stoneyridge_aoac { int enable; int status; |