mb/system76: Set SMBIOS wakeup type to power switch

Windows hardware tests require this field not be "Reserved".

The System76 EC firmware does not report the wake type, so it is not
possible to know if the system was powered on from the power switch or
Wake-on-LAN. In the case WoL is used, this will report the wrong value.

Change-Id: I4653c6bce2a5f0a88281fc810df5646e44f90674
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66837
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jeremy Soller <jeremy@system76.com>
This commit is contained in:
Tim Crawford 2022-08-17 10:16:53 -06:00 committed by Martin Roth
parent 148f075264
commit e086d149ce
12 changed files with 72 additions and 0 deletions

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <variant/gpio.h> #include <variant/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <variant/gpio.h> #include <variant/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <soc/ramstage.h> #include <soc/ramstage.h>
#include <variant/gpio.h> #include <variant/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <soc/ramstage.h> #include <soc/ramstage.h>
#include "gpio.h" #include "gpio.h"
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
void mainboard_silicon_init_params(FSPS_UPD *supd) void mainboard_silicon_init_params(FSPS_UPD *supd)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <variant/gpio.h> #include <variant/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {

View File

@ -2,6 +2,12 @@
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <soc/ramstage.h> #include <soc/ramstage.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
void mainboard_silicon_init_params(FSP_S_CONFIG *params) void mainboard_silicon_init_params(FSP_S_CONFIG *params)
{ {

View File

@ -2,6 +2,12 @@
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <soc/ramstage.h> #include <soc/ramstage.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
void mainboard_silicon_init_params(FSP_S_CONFIG *params) void mainboard_silicon_init_params(FSP_S_CONFIG *params)
{ {

View File

@ -2,6 +2,12 @@
#include <device/device.h> #include <device/device.h>
#include <mainboard/gpio.h> #include <mainboard/gpio.h>
#include <smbios.h>
smbios_wakeup_type smbios_system_wakeup_type(void)
{
return SMBIOS_WAKEUP_TYPE_POWER_SWITCH;
}
static void mainboard_init(void *chip_info) static void mainboard_init(void *chip_info)
{ {