• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <acpi/acpi.h>
4 #include <arch/io.h>
5 #include <cpu/x86/smm.h>
6 #include <southbridge/intel/bd82x6x/pch.h>
7 #include <southbridge/intel/bd82x6x/me.h>
8 #include <northbridge/intel/sandybridge/sandybridge.h>
9 
10 /*
11  * Change LED_POWER# (SIO GPIO 45) state based on sleep type.
12  * The IO address is hardcoded as we don't have device path in SMM.
13  */
14 #define SIO_GPIO_BASE_SET4	(0x730 + 3)
15 #define SIO_GPIO_BLINK_GPIO45	0x25
mainboard_smi_sleep(u8 slp_typ)16 void mainboard_smi_sleep(u8 slp_typ)
17 {
18 	u8 reg8;
19 
20 	switch (slp_typ) {
21 	case ACPI_S3:
22 	case ACPI_S4:
23 		break;
24 
25 	case ACPI_S5:
26 		/* Turn off LED */
27 		reg8 = inb(SIO_GPIO_BASE_SET4);
28 		reg8 |= (1 << 5);
29 		outb(reg8, SIO_GPIO_BASE_SET4);
30 		break;
31 	}
32 }
33