summaryrefslogtreecommitdiff
path: root/src/mainboard/dell/xps_8300/smihandler.c
diff options
context:
space:
mode:
authorRonald Claveau <sousmangoosta@aliel.fr>2024-05-29 23:21:33 +0200
committerFelix Singer <service+coreboot-gerrit@felixsinger.de>2024-07-11 14:13:00 +0000
commit91d2f5d5e00564525d91135bb7684e52528b26b0 (patch)
tree085dbc78e8af803cda492bdd36b6496c19dbe680 /src/mainboard/dell/xps_8300/smihandler.c
parent30610597f240f132b99376ce4cb94c665023a2b4 (diff)
mainboard/dell: Add new mainboard XPS 8300 (Sandy Bridge)
Mainboard is identified as 0Y2MRG. The version tested is with Nvidia dGPU (gfx 560ti). The flash is a 4MiB Winbond W25Q32BVSIG. It can be flashed internally with flashrom. Add a strap on the service mode pin of the mainboard for internal flash. Tested working: - SeaBIOS - All USB ports - SATA - dGPU - Ethernet - Environment control - GPIOs - S3 Sleep mode - WakeOnLan Change-Id: I7d394794fec580bc7aed3f6396ceb47d4a6fd059 Signed-off-by: Ronald Claveau <sousmangoosta@aliel.fr> Reviewed-on: https://review.coreboot.org/c/coreboot/+/83104 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
Diffstat (limited to 'src/mainboard/dell/xps_8300/smihandler.c')
-rw-r--r--src/mainboard/dell/xps_8300/smihandler.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/mainboard/dell/xps_8300/smihandler.c b/src/mainboard/dell/xps_8300/smihandler.c
new file mode 100644
index 0000000000..f126468fa5
--- /dev/null
+++ b/src/mainboard/dell/xps_8300/smihandler.c
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+
+#include <types.h>
+#include <acpi/acpi.h>
+#include <cpu/x86/smm.h>
+#include <superio/ite/common/ite.h>
+#include <superio/ite/it8772f/it8772f.h>
+
+#define GPIO_DEV PNP_DEV(0x2e, IT8772F_GPIO)
+
+void mainboard_smi_sleep(u8 slp_typ)
+{
+ switch (slp_typ) {
+ case ACPI_S3:
+ ite_set_3vsbsw(GPIO_DEV, true);
+ ite_delay_pwrgd3(GPIO_DEV);
+ it8772f_gpio_led(
+ GPIO_DEV,
+ 2 /* set */,
+ 0x02 /* select */,
+ 0x01 /* polarity */,
+ 0x01 /* 1 = pullup */,
+ 0x01 /* output */,
+ 0x00 /* 1 = Simple IO function */,
+ SIO_GPIO_BLINK_GPIO22,
+ IT8772F_GPIO_BLINK_FREQUENCY_1_HZ);
+ break;
+ default:
+ break;
+ }
+}