diff --git a/src/mainboard/system76/cml-u/Kconfig b/src/mainboard/system76/cml-u/Kconfig index d495997ca5..f2fad3986c 100644 --- a/src/mainboard/system76/cml-u/Kconfig +++ b/src/mainboard/system76/cml-u/Kconfig @@ -5,7 +5,6 @@ config BOARD_SPECIFIC_OPTIONS select ADD_FSP_BINARIES select BOARD_ROMSIZE_KB_16384 select EC_ACPI - select EXCLUDE_EMMC_INTERFACE select HAVE_ACPI_RESUME select HAVE_ACPI_TABLES select HAVE_CMOS_DEFAULT @@ -13,10 +12,10 @@ config BOARD_SPECIFIC_OPTIONS select HAVE_SMI_HANDLER select INTEL_GMA_HAVE_VBT select INTEL_LPSS_UART_FOR_CONSOLE +# Chip select 2 is not yet supported by intel fast_spi # select MAINBOARD_HAS_SPI_TPM_CR50 # select MAINBOARD_HAS_TPM2 - select NO_UART_ON_SUPERIO - select PCIE_DEBUG_INFO + select NO_UART_ON_SUPERIO\ select PCIEXP_HOTPLUG select SOC_INTEL_COMETLAKE select SOC_INTEL_COMMON_ACPI_EC_PTS_WAK @@ -99,10 +98,11 @@ config POST_DEVICE bool default n +# Chip select 2 is not yet supported by intel fast_spi #config DRIVER_TPM_SPI_BUS # hex # default 0x0 - +# #config DRIVER_TPM_SPI_CHIP # int # default 2 diff --git a/src/mainboard/system76/cml-u/Makefile.inc b/src/mainboard/system76/cml-u/Makefile.inc index 64e8e279da..a3b357c5ec 100644 --- a/src/mainboard/system76/cml-u/Makefile.inc +++ b/src/mainboard/system76/cml-u/Makefile.inc @@ -1,2 +1,3 @@ bootblock-y += bootblock.c -ramstage-y += ramstage.c variants/$(VARIANT_DIR)/hda_verb.c +ramstage-y += ramstage.c +ramstage-y += variants/$(VARIANT_DIR)/hda_verb.c diff --git a/src/mainboard/system76/cml-u/acpi/ac.asl b/src/mainboard/system76/cml-u/acpi/ac.asl index 7a55e45ca3..6574c61e41 100644 --- a/src/mainboard/system76/cml-u/acpi/ac.asl +++ b/src/mainboard/system76/cml-u/acpi/ac.asl @@ -15,21 +15,21 @@ Device (AC) { - Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID - Name (_PCL, Package (0x01) // _PCL: Power Consumer List - { - _SB - }) + Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID + Name (_PCL, Package (0x01) // _PCL: Power Consumer List + { + _SB + }) - Name (ACFG, One) + Name (ACFG, One) - Method (_PSR, 0, NotSerialized) // _PSR: Power Source - { - Return (ACFG) - } + Method (_PSR, 0, NotSerialized) // _PSR: Power Source + { + Return (ACFG) + } - Method (_STA, 0, NotSerialized) // _STA: Status - { - Return (0x0F) - } + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } } diff --git a/src/mainboard/system76/cml-u/acpi/battery.asl b/src/mainboard/system76/cml-u/acpi/battery.asl index bfda8a00cd..c1e6c6ce1d 100644 --- a/src/mainboard/system76/cml-u/acpi/battery.asl +++ b/src/mainboard/system76/cml-u/acpi/battery.asl @@ -15,169 +15,169 @@ Device (BAT0) { - Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID - Name (_UID, Zero) // _UID: Unique ID - Name (_PCL, Package (0x01) // _PCL: Power Consumer List - { - _SB - }) - Name (BFCC, Zero) - Method (_STA, 0, NotSerialized) // _STA: Status - { - If (^^PCI0.LPCB.EC0.ECOK) - { - If (^^PCI0.LPCB.EC0.BAT0) - { - Return (0x1F) - } - Else - { - Return (0x0F) - } - } - Else - { - Return (0x0F) - } - } + Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_PCL, Package (0x01) // _PCL: Power Consumer List + { + _SB + }) + Name (BFCC, Zero) + Method (_STA, 0, NotSerialized) // _STA: Status + { + If (^^PCI0.LPCB.EC0.ECOK) + { + If (^^PCI0.LPCB.EC0.BAT0) + { + Return (0x1F) + } + Else + { + Return (0x0F) + } + } + Else + { + Return (0x0F) + } + } - Name (PBIF, Package (0x0D) - { - One, - 0xFFFFFFFF, - 0xFFFFFFFF, - One, - 0x39D0, - Zero, - Zero, - 0x40, - 0x40, - "BAT", - "0001", - "LION", - "Notebook" - }) - Method (IVBI, 0, NotSerialized) - { - PBIF [One] = 0xFFFFFFFF - PBIF [0x02] = 0xFFFFFFFF - PBIF [0x04] = 0xFFFFFFFF - PBIF [0x09] = " " - PBIF [0x0A] = " " - PBIF [0x0B] = " " - PBIF [0x0C] = " " - BFCC = Zero - } + Name (PBIF, Package (0x0D) + { + One, + 0xFFFFFFFF, + 0xFFFFFFFF, + One, + 0x39D0, + Zero, + Zero, + 0x40, + 0x40, + "BAT", + "0001", + "LION", + "Notebook" + }) + Method (IVBI, 0, NotSerialized) + { + PBIF [One] = 0xFFFFFFFF + PBIF [0x02] = 0xFFFFFFFF + PBIF [0x04] = 0xFFFFFFFF + PBIF [0x09] = " " + PBIF [0x0A] = " " + PBIF [0x0B] = " " + PBIF [0x0C] = " " + BFCC = Zero + } - Method (UPBI, 0, NotSerialized) - { - If (^^PCI0.LPCB.EC0.BAT0) - { - Local0 = (^^PCI0.LPCB.EC0.BDC0 & 0xFFFF) - PBIF [One] = Local0 - Local0 = (^^PCI0.LPCB.EC0.BFC0 & 0xFFFF) - PBIF [0x02] = Local0 - BFCC = Local0 - Local0 = (^^PCI0.LPCB.EC0.BDV0 & 0xFFFF) - PBIF [0x04] = Local0 - Local0 = (^^PCI0.LPCB.EC0.BCW0 & 0xFFFF) - PBIF [0x05] = Local0 - Local0 = (^^PCI0.LPCB.EC0.BCL0 & 0xFFFF) - PBIF [0x06] = Local0 - PBIF [0x09] = "BAT" - PBIF [0x0A] = "0001" - PBIF [0x0B] = "LION" - PBIF [0x0C] = "Notebook" - } - Else - { - IVBI () - } - } + Method (UPBI, 0, NotSerialized) + { + If (^^PCI0.LPCB.EC0.BAT0) + { + Local0 = (^^PCI0.LPCB.EC0.BDC0 & 0xFFFF) + PBIF [One] = Local0 + Local0 = (^^PCI0.LPCB.EC0.BFC0 & 0xFFFF) + PBIF [0x02] = Local0 + BFCC = Local0 + Local0 = (^^PCI0.LPCB.EC0.BDV0 & 0xFFFF) + PBIF [0x04] = Local0 + Local0 = (^^PCI0.LPCB.EC0.BCW0 & 0xFFFF) + PBIF [0x05] = Local0 + Local0 = (^^PCI0.LPCB.EC0.BCL0 & 0xFFFF) + PBIF [0x06] = Local0 + PBIF [0x09] = "BAT" + PBIF [0x0A] = "0001" + PBIF [0x0B] = "LION" + PBIF [0x0C] = "Notebook" + } + Else + { + IVBI () + } + } - Method (_BIF, 0, NotSerialized) // _BIF: Battery Information - { - If (^^PCI0.LPCB.EC0.ECOK) - { - UPBI () - } - Else - { - IVBI () - } + Method (_BIF, 0, NotSerialized) // _BIF: Battery Information + { + If (^^PCI0.LPCB.EC0.ECOK) + { + UPBI () + } + Else + { + IVBI () + } - Return (PBIF) /* \_SB_.BAT0.PBIF */ - } + Return (PBIF) /* \_SB_.BAT0.PBIF */ + } - Name (PBST, Package (0x04) - { - Zero, - 0xFFFFFFFF, - 0xFFFFFFFF, - 0x3D90 - }) - Method (IVBS, 0, NotSerialized) - { - PBST [Zero] = Zero - PBST [One] = 0xFFFFFFFF - PBST [0x02] = 0xFFFFFFFF - PBST [0x03] = 0x2710 - } + Name (PBST, Package (0x04) + { + Zero, + 0xFFFFFFFF, + 0xFFFFFFFF, + 0x3D90 + }) + Method (IVBS, 0, NotSerialized) + { + PBST [Zero] = Zero + PBST [One] = 0xFFFFFFFF + PBST [0x02] = 0xFFFFFFFF + PBST [0x03] = 0x2710 + } - Method (UPBS, 0, NotSerialized) - { - If (^^PCI0.LPCB.EC0.BAT0) - { - Local0 = Zero - Local1 = Zero - If (^^AC.ACFG) - { - If (((^^PCI0.LPCB.EC0.BST0 & 0x02) == 0x02)) - { - Local0 |= 0x02 - Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) - } - } - Else - { - Local0 |= One - Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) - } + Method (UPBS, 0, NotSerialized) + { + If (^^PCI0.LPCB.EC0.BAT0) + { + Local0 = Zero + Local1 = Zero + If (^^AC.ACFG) + { + If (((^^PCI0.LPCB.EC0.BST0 & 0x02) == 0x02)) + { + Local0 |= 0x02 + Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) + } + } + Else + { + Local0 |= One + Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) + } - Local7 = (Local1 & 0x8000) - If ((Local7 == 0x8000)) - { - Local1 ^= 0xFFFF - } + Local7 = (Local1 & 0x8000) + If ((Local7 == 0x8000)) + { + Local1 ^= 0xFFFF + } - Local2 = (^^PCI0.LPCB.EC0.BRC0 & 0xFFFF) - Local3 = (^^PCI0.LPCB.EC0.BPV0 & 0xFFFF) - PBST [Zero] = Local0 - PBST [One] = Local1 - PBST [0x02] = Local2 - PBST [0x03] = Local3 - If ((BFCC != ^^PCI0.LPCB.EC0.BFC0)) - { - Notify (BAT0, 0x81) // Information Change - } - } - Else - { - IVBS () - } - } + Local2 = (^^PCI0.LPCB.EC0.BRC0 & 0xFFFF) + Local3 = (^^PCI0.LPCB.EC0.BPV0 & 0xFFFF) + PBST [Zero] = Local0 + PBST [One] = Local1 + PBST [0x02] = Local2 + PBST [0x03] = Local3 + If ((BFCC != ^^PCI0.LPCB.EC0.BFC0)) + { + Notify (BAT0, 0x81) // Information Change + } + } + Else + { + IVBS () + } + } - Method (_BST, 0, NotSerialized) // _BST: Battery Status - { - If (^^PCI0.LPCB.EC0.ECOK) - { - UPBS () - } - Else - { - IVBS () - } + Method (_BST, 0, NotSerialized) // _BST: Battery Status + { + If (^^PCI0.LPCB.EC0.ECOK) + { + UPBS () + } + Else + { + IVBS () + } - Return (PBST) /* \_SB_.BAT0.PBST */ - } + Return (PBST) /* \_SB_.BAT0.PBST */ + } } diff --git a/src/mainboard/system76/cml-u/acpi/buttons.asl b/src/mainboard/system76/cml-u/acpi/buttons.asl index 4b5940333e..62847b5c09 100644 --- a/src/mainboard/system76/cml-u/acpi/buttons.asl +++ b/src/mainboard/system76/cml-u/acpi/buttons.asl @@ -15,12 +15,12 @@ Device (PWRB) { - Name (_HID, EisaId ("PNP0C0C")) - Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) + Name (_HID, EisaId ("PNP0C0C")) + Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) } Device (SLPB) { - Name (_HID, EisaId ("PNP0C0E")) - Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) + Name (_HID, EisaId ("PNP0C0E")) + Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) } diff --git a/src/mainboard/system76/cml-u/acpi/ec.asl b/src/mainboard/system76/cml-u/acpi/ec.asl index 56bf8f8524..c26670a009 100644 --- a/src/mainboard/system76/cml-u/acpi/ec.asl +++ b/src/mainboard/system76/cml-u/acpi/ec.asl @@ -15,217 +15,217 @@ Device (EC0) { - Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */) // _HID: Hardware ID - Name (_GPE, 0x50 /* GPP_E16 */) // _GPE: General Purpose Events - Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings - { - IO (Decode16, - 0x0062, // Range Minimum - 0x0062, // Range Maximum - 0x00, // Alignment - 0x01, // Length - ) - IO (Decode16, - 0x0066, // Range Minimum - 0x0066, // Range Maximum - 0x00, // Alignment - 0x01, // Length - ) - }) + Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */) // _HID: Hardware ID + Name (_GPE, 0x50 /* GPP_E16 */) // _GPE: General Purpose Events + Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings + { + IO (Decode16, + 0x0062, // Range Minimum + 0x0062, // Range Maximum + 0x00, // Alignment + 0x01, // Length + ) + IO (Decode16, + 0x0066, // Range Minimum + 0x0066, // Range Maximum + 0x00, // Alignment + 0x01, // Length + ) + }) - #include "acpi/ec_ram.asl" + #include "acpi/ec_ram.asl" - Name (ECOK, Zero) - Method (_REG, 2, Serialized) // _REG: Region Availability - { - Debug = Concatenate("EC: _REG", Concatenate(ToHexString(Arg0), Concatenate(" ", ToHexString(Arg1)))) - If (((Arg0 == 0x03) && (Arg1 == One))) { - // Enable hardware touchpad lock, airplane mode, and keyboard backlight keys - ECOS = 1 + Name (ECOK, Zero) + Method (_REG, 2, Serialized) // _REG: Region Availability + { + Debug = Concatenate("EC: _REG", Concatenate(ToHexString(Arg0), Concatenate(" ", ToHexString(Arg1)))) + If (((Arg0 == 0x03) && (Arg1 == One))) { + // Enable hardware touchpad lock, airplane mode, and keyboard backlight keys + ECOS = 1 - // Enable software display brightness keys - WINF = 1 + // Enable software display brightness keys + WINF = 1 - // Set current AC state - ^^^^AC.ACFG = ADP - // Update battery information and status - ^^^^BAT0.UPBI() - ^^^^BAT0.UPBS() + // Set current AC state + ^^^^AC.ACFG = ADP + // Update battery information and status + ^^^^BAT0.UPBI() + ^^^^BAT0.UPBS() - PNOT () + PNOT () - // EC is now available - ECOK = Arg1 + // EC is now available + ECOK = Arg1 - // Reset System76 Device - ^^^^S76D.RSET() - } - } + // Reset System76 Device + ^^^^S76D.RSET() + } + } - Method (PTS, 1, Serialized) { - Debug = Concatenate("EC: PTS: ", ToHexString(Arg0)) - If (ECOK) { - // Clear wake cause - WFNO = Zero - } - } + Method (PTS, 1, Serialized) { + Debug = Concatenate("EC: PTS: ", ToHexString(Arg0)) + If (ECOK) { + // Clear wake cause + WFNO = Zero + } + } - Method (WAK, 1, Serialized) { - Debug = Concatenate("EC: WAK: ", ToHexString(Arg0)) - If (ECOK) { - // Set current AC state - ^^^^AC.ACFG = ADP + Method (WAK, 1, Serialized) { + Debug = Concatenate("EC: WAK: ", ToHexString(Arg0)) + If (ECOK) { + // Set current AC state + ^^^^AC.ACFG = ADP - // Update battery information and status - ^^^^BAT0.UPBI() - ^^^^BAT0.UPBS() + // Update battery information and status + ^^^^BAT0.UPBI() + ^^^^BAT0.UPBS() - // Notify of changes - Notify(^^^^AC, Zero) - Notify(^^^^BAT0, Zero) + // Notify of changes + Notify(^^^^AC, Zero) + Notify(^^^^BAT0, Zero) - Sleep (1000) + Sleep (1000) - // Reset System76 Device - ^^^^S76D.RSET() - } - } + // Reset System76 Device + ^^^^S76D.RSET() + } + } - Method (_Q0A, 0, NotSerialized) // Touchpad Toggle - { - Debug = "EC: Touchpad Toggle" - } + Method (_Q0A, 0, NotSerialized) // Touchpad Toggle + { + Debug = "EC: Touchpad Toggle" + } - Method (_Q0B, 0, NotSerialized) // Screen Toggle - { - Debug = "EC: Screen Toggle" - } + Method (_Q0B, 0, NotSerialized) // Screen Toggle + { + Debug = "EC: Screen Toggle" + } - Method (_Q0C, 0, NotSerialized) // Mute - { - Debug = "EC: Mute" - } + Method (_Q0C, 0, NotSerialized) // Mute + { + Debug = "EC: Mute" + } - Method (_Q0D, 0, NotSerialized) // Keyboard Backlight - { - Debug = "EC: Keyboard Backlight" - } + Method (_Q0D, 0, NotSerialized) // Keyboard Backlight + { + Debug = "EC: Keyboard Backlight" + } - Method (_Q0E, 0, NotSerialized) // Volume Down - { - Debug = "EC: Volume Down" - } + Method (_Q0E, 0, NotSerialized) // Volume Down + { + Debug = "EC: Volume Down" + } - Method (_Q0F, 0, NotSerialized) // Volume Up - { - Debug = "EC: Volume Up" - } + Method (_Q0F, 0, NotSerialized) // Volume Up + { + Debug = "EC: Volume Up" + } - Method (_Q10, 0, NotSerialized) // Switch Video Mode - { - Debug = "EC: Switch Video Mode" - } + Method (_Q10, 0, NotSerialized) // Switch Video Mode + { + Debug = "EC: Switch Video Mode" + } - Method (_Q11, 0, NotSerialized) // Brightness Down - { - Debug = "EC: Brightness Down" - ^^^^HIDD.HPEM (20) - } + Method (_Q11, 0, NotSerialized) // Brightness Down + { + Debug = "EC: Brightness Down" + ^^^^HIDD.HPEM (20) + } - Method (_Q12, 0, NotSerialized) // Brightness Up - { - Debug = "EC: Brightness Up" - ^^^^HIDD.HPEM (19) - } + Method (_Q12, 0, NotSerialized) // Brightness Up + { + Debug = "EC: Brightness Up" + ^^^^HIDD.HPEM (19) + } - Method (_Q13, 0, NotSerialized) // Camera Toggle - { - Debug = "EC: Camera Toggle" - } + Method (_Q13, 0, NotSerialized) // Camera Toggle + { + Debug = "EC: Camera Toggle" + } - Method (_Q14, 0, NotSerialized) // Airplane Mode - { - Debug = "EC: Airplane Mode" - // Only send HIDD message when hardware airplane mode not in use - If (ECOS == 2) { - ^^^^HIDD.HPEM (8) - } - } + Method (_Q14, 0, NotSerialized) // Airplane Mode + { + Debug = "EC: Airplane Mode" + // Only send HIDD message when hardware airplane mode not in use + If (ECOS == 2) { + ^^^^HIDD.HPEM (8) + } + } - Method (_Q15, 0, NotSerialized) // Suspend Button - { - Debug = "EC: Suspend Button" - Notify (SLPB, 0x80) - } + Method (_Q15, 0, NotSerialized) // Suspend Button + { + Debug = "EC: Suspend Button" + Notify (SLPB, 0x80) + } - Method (_Q16, 0, NotSerialized) // AC Detect - { - Debug = "EC: AC Detect" - ^^^^AC.ACFG = ADP - Notify (AC, 0x80) // Status Change - Sleep (0x01F4) - If (BAT0) - { - Notify (^^^^BAT0, 0x81) // Information Change - Sleep (0x32) - Notify (^^^^BAT0, 0x80) // Status Change - Sleep (0x32) - } - } + Method (_Q16, 0, NotSerialized) // AC Detect + { + Debug = "EC: AC Detect" + ^^^^AC.ACFG = ADP + Notify (AC, 0x80) // Status Change + Sleep (0x01F4) + If (BAT0) + { + Notify (^^^^BAT0, 0x81) // Information Change + Sleep (0x32) + Notify (^^^^BAT0, 0x80) // Status Change + Sleep (0x32) + } + } - Method (_Q17, 0, NotSerialized) // BAT0 Update - { - Debug = "EC: BAT0 Update (17)" - Notify (^^^^BAT0, 0x81) // Information Change - } + Method (_Q17, 0, NotSerialized) // BAT0 Update + { + Debug = "EC: BAT0 Update (17)" + Notify (^^^^BAT0, 0x81) // Information Change + } - Method (_Q19, 0, NotSerialized) // BAT0 Update - { - Debug = "EC: BAT0 Update (19)" - Notify (^^^^BAT0, 0x81) // Information Change - } + Method (_Q19, 0, NotSerialized) // BAT0 Update + { + Debug = "EC: BAT0 Update (19)" + Notify (^^^^BAT0, 0x81) // Information Change + } - Method (_Q1B, 0, NotSerialized) // Lid Close - { - Debug = "EC: Lid Close" - Notify (LID0, 0x80) - } + Method (_Q1B, 0, NotSerialized) // Lid Close + { + Debug = "EC: Lid Close" + Notify (LID0, 0x80) + } - Method (_Q1C, 0, NotSerialized) // Thermal Trip - { - Debug = "EC: Thermal Trip" - /* TODO - Notify (\_TZ.TZ0, 0x81) // Thermal Trip Point Change - Notify (\_TZ.TZ0, 0x80) // Thermal Status Change - */ - } + Method (_Q1C, 0, NotSerialized) // Thermal Trip + { + Debug = "EC: Thermal Trip" + /* TODO + Notify (\_TZ.TZ0, 0x81) // Thermal Trip Point Change + Notify (\_TZ.TZ0, 0x80) // Thermal Status Change + */ + } - Method (_Q1D, 0, NotSerialized) // Power Button - { - Debug = "EC: Power Button" - Notify (PWRB, 0x80) - } + Method (_Q1D, 0, NotSerialized) // Power Button + { + Debug = "EC: Power Button" + Notify (PWRB, 0x80) + } - Method (_Q50, 0, NotSerialized) // Other Events - { - Local0 = OEM4 - If (Local0 == 0x8A) { - Debug = "EC: White Keyboard Backlight" - Notify (^^^^S76D, 0x80) - } ElseIf (Local0 == 0x9F) { - Debug = "EC: Color Keyboard Toggle" - Notify (^^^^S76D, 0x81) - } ElseIf (Local0 == 0x81) { - Debug = "EC: Color Keyboard Down" - Notify (^^^^S76D, 0x82) - } ElseIf (Local0 == 0x82) { - Debug = "EC: Color Keyboard Up" - Notify (^^^^S76D, 0x83) - } ElseIf (Local0 == 0x80) { - Debug = "EC: Color Keyboard Color Change" - Notify (^^^^S76D, 0x84) - } Else { - Debug = Concatenate("EC: Other: ", ToHexString(Local0)) - } - } + Method (_Q50, 0, NotSerialized) // Other Events + { + Local0 = OEM4 + If (Local0 == 0x8A) { + Debug = "EC: White Keyboard Backlight" + Notify (^^^^S76D, 0x80) + } ElseIf (Local0 == 0x9F) { + Debug = "EC: Color Keyboard Toggle" + Notify (^^^^S76D, 0x81) + } ElseIf (Local0 == 0x81) { + Debug = "EC: Color Keyboard Down" + Notify (^^^^S76D, 0x82) + } ElseIf (Local0 == 0x82) { + Debug = "EC: Color Keyboard Up" + Notify (^^^^S76D, 0x83) + } ElseIf (Local0 == 0x80) { + Debug = "EC: Color Keyboard Color Change" + Notify (^^^^S76D, 0x84) + } Else { + Debug = Concatenate("EC: Other: ", ToHexString(Local0)) + } + } } diff --git a/src/mainboard/system76/cml-u/acpi/ec_ram.asl b/src/mainboard/system76/cml-u/acpi/ec_ram.asl index 9502f5f057..4bb452b6e3 100644 --- a/src/mainboard/system76/cml-u/acpi/ec_ram.asl +++ b/src/mainboard/system76/cml-u/acpi/ec_ram.asl @@ -16,173 +16,173 @@ OperationRegion (ERAM, EmbeddedControl, Zero, 0xFF) Field (ERAM, ByteAcc, Lock, Preserve) { - NMSG, 8, - SLED, 4, - Offset (0x02), - MODE, 1, - FAN0, 1, - TME0, 1, - TME1, 1, - FAN1, 1, - , 2, - Offset (0x03), - LSTE, 1, - LSW0, 1, - LWKE, 1, - WAKF, 1, - , 2, - PWKE, 1, - MWKE, 1, - AC0, 8, - PSV, 8, - CRT, 8, - TMP, 8, - AC1, 8, - BBST, 8, - Offset (0x0B), - Offset (0x0C), - Offset (0x0D), - Offset (0x0E), - SLPT, 8, - SWEJ, 1, - SWCH, 1, - Offset (0x10), - ADP, 1, - AFLT, 1, - BAT0, 1, - BAT1, 1, - , 3, - PWOF, 1, - WFNO, 8, - BPU0, 32, - BDC0, 32, - BFC0, 32, - BTC0, 32, - BDV0, 32, - BST0, 32, - BPR0, 32, - BRC0, 32, - BPV0, 32, - BTP0, 16, - BRS0, 16, - BCW0, 32, - BCL0, 32, - BCG0, 32, - BG20, 32, - BMO0, 64, - BIF0, 64, - BSN0, 32, - BTY0, 64, - Offset (0x67), - Offset (0x68), - ECOS, 8, - LNXD, 8, - ECPS, 8, - Offset (0x6C), - BTMP, 16, - EVTN, 8, - Offset (0x72), - PRCL, 8, - PRC0, 8, - PRC1, 8, - PRCM, 8, - PRIN, 8, - PSTE, 8, - PCAD, 8, - PEWL, 8, - PWRL, 8, - PECD, 8, - PEHI, 8, - PECI, 8, - PEPL, 8, - PEPM, 8, - PWFC, 8, - PECC, 8, - PDT0, 8, - PDT1, 8, - PDT2, 8, - PDT3, 8, - PRFC, 8, - PRS0, 8, - PRS1, 8, - PRS2, 8, - PRS3, 8, - PRS4, 8, - PRCS, 8, - PEC0, 8, - PEC1, 8, - PEC2, 8, - PEC3, 8, - CMDR, 8, - CVRT, 8, - GTVR, 8, - FANT, 8, - SKNT, 8, - AMBT, 8, - MCRT, 8, - DIM0, 8, - DIM1, 8, - PMAX, 8, - PPDT, 8, - PECH, 8, - PMDT, 8, - TSD0, 8, - TSD1, 8, - TSD2, 8, - TSD3, 8, - CPUP, 16, - MCHP, 16, - SYSP, 16, - CPAP, 16, - MCAP, 16, - SYAP, 16, - CFSP, 16, - CPUE, 16, - Offset (0xC6), - Offset (0xC7), - VGAT, 8, - OEM1, 8, - OEM2, 8, - OEM3, 16, - OEM4, 8, - Offset (0xCE), - DUT1, 8, - DUT2, 8, - RPM1, 16, - RPM2, 16, - RPM4, 16, - Offset (0xD7), - DTHL, 8, - DTBP, 8, - AIRP, 8, - WINF, 8, - RINF, 8, - Offset (0xDD), - INF2, 8, - MUTE, 1, - Offset (0xE0), - RPM3, 16, - ECKS, 8, - Offset (0xE4), - , 4, - XTUF, 1, - EP12, 1, - Offset (0xE5), - INF3, 8, - Offset (0xE7), - GFOF, 8, - Offset (0xE9), - KPCR, 1, - Offset (0xEA), - Offset (0xF0), - PL1T, 16, - PL2T, 16, - TAUT, 8, - Offset (0xF8), - FCMD, 8, - FDAT, 8, - FBUF, 8, - FBF1, 8, - FBF2, 8, - FBF3, 8 + NMSG, 8, + SLED, 4, + Offset (0x02), + MODE, 1, + FAN0, 1, + TME0, 1, + TME1, 1, + FAN1, 1, + , 2, + Offset (0x03), + LSTE, 1, + LSW0, 1, + LWKE, 1, + WAKF, 1, + , 2, + PWKE, 1, + MWKE, 1, + AC0, 8, + PSV, 8, + CRT, 8, + TMP, 8, + AC1, 8, + BBST, 8, + Offset (0x0B), + Offset (0x0C), + Offset (0x0D), + Offset (0x0E), + SLPT, 8, + SWEJ, 1, + SWCH, 1, + Offset (0x10), + ADP, 1, + AFLT, 1, + BAT0, 1, + BAT1, 1, + , 3, + PWOF, 1, + WFNO, 8, + BPU0, 32, + BDC0, 32, + BFC0, 32, + BTC0, 32, + BDV0, 32, + BST0, 32, + BPR0, 32, + BRC0, 32, + BPV0, 32, + BTP0, 16, + BRS0, 16, + BCW0, 32, + BCL0, 32, + BCG0, 32, + BG20, 32, + BMO0, 64, + BIF0, 64, + BSN0, 32, + BTY0, 64, + Offset (0x67), + Offset (0x68), + ECOS, 8, + LNXD, 8, + ECPS, 8, + Offset (0x6C), + BTMP, 16, + EVTN, 8, + Offset (0x72), + PRCL, 8, + PRC0, 8, + PRC1, 8, + PRCM, 8, + PRIN, 8, + PSTE, 8, + PCAD, 8, + PEWL, 8, + PWRL, 8, + PECD, 8, + PEHI, 8, + PECI, 8, + PEPL, 8, + PEPM, 8, + PWFC, 8, + PECC, 8, + PDT0, 8, + PDT1, 8, + PDT2, 8, + PDT3, 8, + PRFC, 8, + PRS0, 8, + PRS1, 8, + PRS2, 8, + PRS3, 8, + PRS4, 8, + PRCS, 8, + PEC0, 8, + PEC1, 8, + PEC2, 8, + PEC3, 8, + CMDR, 8, + CVRT, 8, + GTVR, 8, + FANT, 8, + SKNT, 8, + AMBT, 8, + MCRT, 8, + DIM0, 8, + DIM1, 8, + PMAX, 8, + PPDT, 8, + PECH, 8, + PMDT, 8, + TSD0, 8, + TSD1, 8, + TSD2, 8, + TSD3, 8, + CPUP, 16, + MCHP, 16, + SYSP, 16, + CPAP, 16, + MCAP, 16, + SYAP, 16, + CFSP, 16, + CPUE, 16, + Offset (0xC6), + Offset (0xC7), + VGAT, 8, + OEM1, 8, + OEM2, 8, + OEM3, 16, + OEM4, 8, + Offset (0xCE), + DUT1, 8, + DUT2, 8, + RPM1, 16, + RPM2, 16, + RPM4, 16, + Offset (0xD7), + DTHL, 8, + DTBP, 8, + AIRP, 8, + WINF, 8, + RINF, 8, + Offset (0xDD), + INF2, 8, + MUTE, 1, + Offset (0xE0), + RPM3, 16, + ECKS, 8, + Offset (0xE4), + , 4, + XTUF, 1, + EP12, 1, + Offset (0xE5), + INF3, 8, + Offset (0xE7), + GFOF, 8, + Offset (0xE9), + KPCR, 1, + Offset (0xEA), + Offset (0xF0), + PL1T, 16, + PL2T, 16, + TAUT, 8, + Offset (0xF8), + FCMD, 8, + FDAT, 8, + FBUF, 8, + FBF1, 8, + FBF2, 8, + FBF3, 8 } diff --git a/src/mainboard/system76/cml-u/acpi/gpe.asl b/src/mainboard/system76/cml-u/acpi/gpe.asl index d24d53ed57..e68c9cd306 100644 --- a/src/mainboard/system76/cml-u/acpi/gpe.asl +++ b/src/mainboard/system76/cml-u/acpi/gpe.asl @@ -15,10 +15,10 @@ // GPP_D9 SCI Method (_L29, 0, Serialized) { - Debug = Concatenate("GPE _L29: ", ToHexString(\_SB.PCI0.LPCB.EC0.WFNO)) - If (\_SB.PCI0.LPCB.EC0.ECOK) { - If (\_SB.PCI0.LPCB.EC0.WFNO == One) { - Notify(\_SB.LID0, 0x80) - } - } + Debug = Concatenate("GPE _L29: ", ToHexString(\_SB.PCI0.LPCB.EC0.WFNO)) + If (\_SB.PCI0.LPCB.EC0.ECOK) { + If (\_SB.PCI0.LPCB.EC0.WFNO == One) { + Notify(\_SB.LID0, 0x80) + } + } } diff --git a/src/mainboard/system76/cml-u/acpi/hid.asl b/src/mainboard/system76/cml-u/acpi/hid.asl index c75fefa6a0..1f151d5582 100644 --- a/src/mainboard/system76/cml-u/acpi/hid.asl +++ b/src/mainboard/system76/cml-u/acpi/hid.asl @@ -15,49 +15,49 @@ Device (HIDD) { - Name (_HID, "INT33D5") - Name (HBSY, Zero) - Name (HIDX, Zero) - Name (HRDY, Zero) + Name (_HID, "INT33D5") + Name (HBSY, Zero) + Name (HIDX, Zero) + Name (HRDY, Zero) - Method (HDEM, 0, Serialized) - { - HBSY = Zero - Return (HIDX) - } + Method (HDEM, 0, Serialized) + { + HBSY = Zero + Return (HIDX) + } - Method (HDMM, 0, Serialized) - { - Return (Zero) - } + Method (HDMM, 0, Serialized) + { + Return (Zero) + } - Method (HDSM, 1, Serialized) - { - HRDY = Arg0 - } + Method (HDSM, 1, Serialized) + { + HRDY = Arg0 + } - Method (HPEM, 1, Serialized) - { - HBSY = One - HIDX = Arg0 + Method (HPEM, 1, Serialized) + { + HBSY = One + HIDX = Arg0 - Notify (HIDD, 0xC0) - Local0 = Zero - While (((Local0 < 0xFA) && HBSY)) - { - Sleep (0x04) - Local0++ - } + Notify (HIDD, 0xC0) + Local0 = Zero + While (((Local0 < 0xFA) && HBSY)) + { + Sleep (0x04) + Local0++ + } - If ((HBSY == One)) - { - HBSY = Zero - HIDX = Zero - Return (One) - } - Else - { - Return (Zero) - } - } + If ((HBSY == One)) + { + HBSY = Zero + HIDX = Zero + Return (One) + } + Else + { + Return (Zero) + } + } } diff --git a/src/mainboard/system76/cml-u/acpi/lid.asl b/src/mainboard/system76/cml-u/acpi/lid.asl index 0a8688023a..729a0d9090 100644 --- a/src/mainboard/system76/cml-u/acpi/lid.asl +++ b/src/mainboard/system76/cml-u/acpi/lid.asl @@ -15,22 +15,22 @@ Device (LID0) { - Name (_HID, EisaId ("PNP0C0D")) - Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) + Name (_HID, EisaId ("PNP0C0D")) + Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) - Method (_LID, 0, NotSerialized) { - DEBUG = "LID: _LID" - If (^^PCI0.LPCB.EC0.ECOK) { - Return (^^PCI0.LPCB.EC0.LSTE) - } Else { - Return (One) - } - } + Method (_LID, 0, NotSerialized) { + DEBUG = "LID: _LID" + If (^^PCI0.LPCB.EC0.ECOK) { + Return (^^PCI0.LPCB.EC0.LSTE) + } Else { + Return (One) + } + } - Method (_PSW, 1, NotSerialized) { - DEBUG = Concatenate("LID: _PSW: ", ToHexString(Arg0)) - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.LWKE = Arg0 - } - } + Method (_PSW, 1, NotSerialized) { + DEBUG = Concatenate("LID: _PSW: ", ToHexString(Arg0)) + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.LWKE = Arg0 + } + } } diff --git a/src/mainboard/system76/cml-u/acpi/mainboard.asl b/src/mainboard/system76/cml-u/acpi/mainboard.asl index 2d3b69a8b8..f75886036f 100644 --- a/src/mainboard/system76/cml-u/acpi/mainboard.asl +++ b/src/mainboard/system76/cml-u/acpi/mainboard.asl @@ -14,25 +14,25 @@ */ #if defined(CONFIG_BOARD_SYSTEM76_DARP6) - #define COLOR_KEYBOARD 1 + #define COLOR_KEYBOARD 1 #elif defined(CONFIG_BOARD_SYSTEM76_GALP4) - #define COLOR_KEYBOARD 0 + #define COLOR_KEYBOARD 0 #else - #error Unknown Mainboard + #error Unknown Mainboard #endif Scope (\_SB) { - #include "ac.asl" - #include "battery.asl" - #include "buttons.asl" - #include "hid.asl" - #include "lid.asl" - #include "s76.asl" - #include "sleep.asl" + #include "ac.asl" + #include "battery.asl" + #include "buttons.asl" + #include "hid.asl" + #include "lid.asl" + #include "s76.asl" + #include "sleep.asl" } #include "tbt.asl" Scope (_GPE) { - #include "gpe.asl" + #include "gpe.asl" } diff --git a/src/mainboard/system76/cml-u/acpi/s76.asl b/src/mainboard/system76/cml-u/acpi/s76.asl index 06ad9a66bb..e05d32d8fb 100644 --- a/src/mainboard/system76/cml-u/acpi/s76.asl +++ b/src/mainboard/system76/cml-u/acpi/s76.asl @@ -20,108 +20,108 @@ // 0x83 - backlight up // 0x84 - backlight color change Device (S76D) { - Name (_HID, "17761776") - Name (_UID, 0) + Name (_HID, "17761776") + Name (_UID, 0) - Method (RSET, 0, Serialized) { - Debug = "S76D: RSET" - SAPL(0) - SKBL(0) - #if COLOR_KEYBOARD - SKBC(0xFFFFFF) - #endif - } + Method (RSET, 0, Serialized) { + Debug = "S76D: RSET" + SAPL(0) + SKBL(0) + #if COLOR_KEYBOARD + SKBC(0xFFFFFF) + #endif + } - Method (INIT, 0, Serialized) { - Debug = "S76D: INIT" - RSET() - If (^^PCI0.LPCB.EC0.ECOK) { - // Set flags to use software control - ^^PCI0.LPCB.EC0.ECOS = 2 - Return (0) - } Else { - Return (1) - } - } + Method (INIT, 0, Serialized) { + Debug = "S76D: INIT" + RSET() + If (^^PCI0.LPCB.EC0.ECOK) { + // Set flags to use software control + ^^PCI0.LPCB.EC0.ECOS = 2 + Return (0) + } Else { + Return (1) + } + } - Method (FINI, 0, Serialized) { - Debug = "S76D: FINI" - RSET() - If (^^PCI0.LPCB.EC0.ECOK) { - // Set flags to use hardware control - ^^PCI0.LPCB.EC0.ECOS = 1 - Return (0) - } Else { - Return (1) - } - } + Method (FINI, 0, Serialized) { + Debug = "S76D: FINI" + RSET() + If (^^PCI0.LPCB.EC0.ECOK) { + // Set flags to use hardware control + ^^PCI0.LPCB.EC0.ECOS = 1 + Return (0) + } Else { + Return (1) + } + } - // Get Airplane LED - Method (GAPL, 0, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - If (^^PCI0.LPCB.EC0.AIRP & 0x40) { - Return (1) - } - } - Return (0) - } + // Get Airplane LED + Method (GAPL, 0, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + If (^^PCI0.LPCB.EC0.AIRP & 0x40) { + Return (1) + } + } + Return (0) + } - // Set Airplane LED - Method (SAPL, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - If (Arg0) { - ^^PCI0.LPCB.EC0.AIRP |= 0x40 - } Else { - ^^PCI0.LPCB.EC0.AIRP &= 0xBF - } - } - } + // Set Airplane LED + Method (SAPL, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + If (Arg0) { + ^^PCI0.LPCB.EC0.AIRP |= 0x40 + } Else { + ^^PCI0.LPCB.EC0.AIRP &= 0xBF + } + } + } #if COLOR_KEYBOARD - // Set KB LED Brightness - Method (SKBL, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = 6 - ^^PCI0.LPCB.EC0.FBUF = Arg0 - ^^PCI0.LPCB.EC0.FBF1 = 0 - ^^PCI0.LPCB.EC0.FBF2 = Arg0 - ^^PCI0.LPCB.EC0.FCMD = 0xCA - } - } + // Set KB LED Brightness + Method (SKBL, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = 6 + ^^PCI0.LPCB.EC0.FBUF = Arg0 + ^^PCI0.LPCB.EC0.FBF1 = 0 + ^^PCI0.LPCB.EC0.FBF2 = Arg0 + ^^PCI0.LPCB.EC0.FCMD = 0xCA + } + } - // Set Keyboard Color - Method (SKBC, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = 0x3 - ^^PCI0.LPCB.EC0.FBUF = (Arg0 & 0xFF) - ^^PCI0.LPCB.EC0.FBF1 = ((Arg0 >> 16) & 0xFF) - ^^PCI0.LPCB.EC0.FBF2 = ((Arg0 >> 8) & 0xFF) - ^^PCI0.LPCB.EC0.FCMD = 0xCA - Return (Arg0) - } Else { - Return (0) - } - } + // Set Keyboard Color + Method (SKBC, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = 0x3 + ^^PCI0.LPCB.EC0.FBUF = (Arg0 & 0xFF) + ^^PCI0.LPCB.EC0.FBF1 = ((Arg0 >> 16) & 0xFF) + ^^PCI0.LPCB.EC0.FBF2 = ((Arg0 >> 8) & 0xFF) + ^^PCI0.LPCB.EC0.FCMD = 0xCA + Return (Arg0) + } Else { + Return (0) + } + } #else - // Get KB LED - Method (GKBL, 0, Serialized) { - Local0 = 0 - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = One - ^^PCI0.LPCB.EC0.FCMD = 0xCA - Local0 = ^^PCI0.LPCB.EC0.FBUF - ^^PCI0.LPCB.EC0.FCMD = Zero - } - Return (Local0) - } + // Get KB LED + Method (GKBL, 0, Serialized) { + Local0 = 0 + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = One + ^^PCI0.LPCB.EC0.FCMD = 0xCA + Local0 = ^^PCI0.LPCB.EC0.FBUF + ^^PCI0.LPCB.EC0.FCMD = Zero + } + Return (Local0) + } - // Set KB Led - Method (SKBL, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = Zero - ^^PCI0.LPCB.EC0.FBUF = Arg0 - ^^PCI0.LPCB.EC0.FCMD = 0xCA - } - } + // Set KB Led + Method (SKBL, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = Zero + ^^PCI0.LPCB.EC0.FBUF = Arg0 + ^^PCI0.LPCB.EC0.FCMD = 0xCA + } + } #endif } diff --git a/src/mainboard/system76/cml-u/bootblock.c b/src/mainboard/system76/cml-u/bootblock.c index 3a24b283bc..00c4588f5f 100644 --- a/src/mainboard/system76/cml-u/bootblock.c +++ b/src/mainboard/system76/cml-u/bootblock.c @@ -17,6 +17,7 @@ #include #include "gpio.h" -void bootblock_mainboard_init(void) { +void bootblock_mainboard_init(void) +{ gpio_configure_pads(early_gpio_table, ARRAY_SIZE(early_gpio_table)); } diff --git a/src/mainboard/system76/cml-u/devicetree.cb b/src/mainboard/system76/cml-u/devicetree.cb index be3eea3784..c477ba3a40 100644 --- a/src/mainboard/system76/cml-u/devicetree.cb +++ b/src/mainboard/system76/cml-u/devicetree.cb @@ -8,7 +8,7 @@ chip soc/intel/cannonlake register "SendVrMbxCmd" = "2" # ACPI (soc/intel/cannonlake/acpi.c) - # Enable s0ix + # Disable s0ix register "s0ix_enable" = "0" # PM Timer Enabled @@ -138,7 +138,7 @@ chip soc/intel/cannonlake register "PchPmSlpS3MinAssert" = "3" # 50ms register "PchPmSlpS4MinAssert" = "1" # 1s register "PchPmSlpSusMinAssert" = "2" # 500ms - register "PchPmSlpAMinAssert" = "4" # 2s + register "PchPmSlpAMinAssert" = "4" # 2s # Thermal register "tcc_offset" = "12" diff --git a/src/mainboard/system76/cml-u/dsdt.asl b/src/mainboard/system76/cml-u/dsdt.asl index a42052f208..75a98885ed 100644 --- a/src/mainboard/system76/cml-u/dsdt.asl +++ b/src/mainboard/system76/cml-u/dsdt.asl @@ -25,34 +25,23 @@ DefinitionBlock( 0x20110725 // OEM revision ) { - // Some generic macros #include - - // global NVS and variables #include - - // CPU #include - Scope (\_SB) { - Device (PCI0) - { - #include - #include - } + Device (\_SB.PCI0) + { + #include + #include } - // Chipset specific sleep states #include - Scope (\_SB.PCI0.LPCB) { - // PS/2 bus - #include - - // Embedded controller - #include "acpi/ec.asl" + Scope (\_SB.PCI0.LPCB) + { + #include + #include "acpi/ec.asl" } - // Mainboard specific #include "acpi/mainboard.asl" } diff --git a/src/mainboard/system76/cml-u/ramstage.c b/src/mainboard/system76/cml-u/ramstage.c index 133627d150..c990a2986f 100644 --- a/src/mainboard/system76/cml-u/ramstage.c +++ b/src/mainboard/system76/cml-u/ramstage.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -23,7 +24,8 @@ #include #include "gpio.h" -void mainboard_silicon_init_params(FSP_S_CONFIG *params) { +void mainboard_silicon_init_params(FSP_S_CONFIG *params) +{ /* Configure pads prior to SiliconInit() in case there's any * dependencies during hardware initialization. */ cnl_configure_pads(gpio_table, ARRAY_SIZE(gpio_table)); diff --git a/src/mainboard/system76/cml-u/romstage.c b/src/mainboard/system76/cml-u/romstage.c index 0cb821db96..e575ad3b87 100644 --- a/src/mainboard/system76/cml-u/romstage.c +++ b/src/mainboard/system76/cml-u/romstage.c @@ -16,7 +16,6 @@ #include #include -//TODO: find correct values static const struct cnl_mb_cfg memcfg = { /* Parameters required to access SPD for CH0D0/CH0D1/CH1D0/CH1D1. */ .spd[0] = { @@ -43,11 +42,11 @@ static const struct cnl_mb_cfg memcfg = { */ .dq_map[DDR_CH0] = { {0x0F, 0xF0}, {0x00, 0xF0}, {0x0F, 0xF0}, - //{0x0F, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} + //{0x0F, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} }, .dq_map[DDR_CH1] = { {0x33, 0xCC}, {0x00, 0xCC}, {0x33, 0xCC}, - //{0x33, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} + //{0x33, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} }, /* @@ -81,17 +80,18 @@ static const struct cnl_mb_cfg memcfg = { .dq_pins_interleaved = 1, /* - * VREF_CA configuraation. + * VREF_CA configuration. * Set to 0 VREF_CA goes to both CH_A and CH_B, * set to 1 VREF_CA goes to CH_A and VREF_DQ_A goes to CH_B, * set to 2 VREF_CA goes to CH_A and VREF_DQ_B goes to CH_B. */ .vref_ca_config = 2, - /* Early Command Training Enabled */ + /* Early Command Training */ .ect = 0, }; -void mainboard_memory_init_params(FSPM_UPD *memupd) { +void mainboard_memory_init_params(FSPM_UPD *memupd) +{ cannonlake_memcfg_init(&memupd->FspmConfig, &memcfg); } diff --git a/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c b/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c index 320277a2d6..114c895e15 100644 --- a/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c +++ b/src/mainboard/system76/cml-u/variants/darp6/hda_verb.c @@ -13,13 +13,10 @@ * GNU General Public License for more details. */ -#ifndef HDA_VERB_H -#define HDA_VERB_H - #include const u32 cim_verb_data[] = { - /* Realtek, ALC293 */ + /* Realtek ALC293 */ 0x10ec0293, /* Vendor ID */ 0x15581404, /* Subsystem ID */ 12, /* Number of entries */ @@ -35,7 +32,8 @@ const u32 cim_verb_data[] = { AZALIA_PIN_CFG(0, 0x1b, 0x411111f0), AZALIA_PIN_CFG(0, 0x1d, 0x41738205), AZALIA_PIN_CFG(0, 0x1e, 0x02451130), - /* Intel, KabylakeHDMI */ + + /* Intel GPU HDMI */ 0x8086280b, /* Vendor ID */ 0x80860101, /* Subsystem ID */ 4, /* Number of entries */ @@ -48,5 +46,3 @@ const u32 cim_verb_data[] = { const u32 pc_beep_verbs[] = {}; AZALIA_ARRAY_SIZES; - -#endif diff --git a/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c b/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c index b56276e98d..2c9b9eae54 100644 --- a/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c +++ b/src/mainboard/system76/cml-u/variants/galp4/hda_verb.c @@ -13,13 +13,10 @@ * GNU General Public License for more details. */ -#ifndef HDA_VERB_H -#define HDA_VERB_H - #include const u32 cim_verb_data[] = { - /* Realtek, ALC293 */ + /* Realtek ALC293 */ 0x10ec0293, /* Vendor ID */ 0x15581403, /* Subsystem ID */ 12, /* Number of entries */ @@ -35,7 +32,8 @@ const u32 cim_verb_data[] = { AZALIA_PIN_CFG(0, 0x1b, 0x411111f0), AZALIA_PIN_CFG(0, 0x1d, 0x41738205), AZALIA_PIN_CFG(0, 0x1e, 0x411111f0), - /* Intel, KabylakeHDMI */ + + /* Intel GPU HDMI */ 0x8086280b, /* Vendor ID */ 0x80860101, /* Subsystem ID */ 4, /* Number of entries */ @@ -48,5 +46,3 @@ const u32 cim_verb_data[] = { const u32 pc_beep_verbs[] = {}; AZALIA_ARRAY_SIZES; - -#endif diff --git a/src/mainboard/system76/whl-u/Kconfig b/src/mainboard/system76/whl-u/Kconfig index 3c56ea18d3..56286cbeec 100644 --- a/src/mainboard/system76/whl-u/Kconfig +++ b/src/mainboard/system76/whl-u/Kconfig @@ -5,7 +5,6 @@ config BOARD_SPECIFIC_OPTIONS select ADD_FSP_BINARIES select BOARD_ROMSIZE_KB_16384 select EC_ACPI - select EXCLUDE_EMMC_INTERFACE select HAVE_ACPI_RESUME select HAVE_ACPI_TABLES select HAVE_CMOS_DEFAULT @@ -13,10 +12,10 @@ config BOARD_SPECIFIC_OPTIONS select HAVE_SMI_HANDLER select INTEL_GMA_HAVE_VBT select INTEL_LPSS_UART_FOR_CONSOLE +# Chip select 2 is not yet supported by intel fast_spi # select MAINBOARD_HAS_SPI_TPM_CR50 # select MAINBOARD_HAS_TPM2 - select NO_UART_ON_SUPERIO - select PCIE_DEBUG_INFO + select NO_UART_ON_SUPERIO\ select PCIEXP_HOTPLUG select SOC_INTEL_COMMON_ACPI_EC_PTS_WAK select SOC_INTEL_COMMON_BLOCK_HDA @@ -99,10 +98,11 @@ config POST_DEVICE bool default n +# Chip select 2 is not yet supported by intel fast_spi #config DRIVER_TPM_SPI_BUS # hex # default 0x0 - +# #config DRIVER_TPM_SPI_CHIP # int # default 2 diff --git a/src/mainboard/system76/whl-u/Makefile.inc b/src/mainboard/system76/whl-u/Makefile.inc index 64e8e279da..a3b357c5ec 100644 --- a/src/mainboard/system76/whl-u/Makefile.inc +++ b/src/mainboard/system76/whl-u/Makefile.inc @@ -1,2 +1,3 @@ bootblock-y += bootblock.c -ramstage-y += ramstage.c variants/$(VARIANT_DIR)/hda_verb.c +ramstage-y += ramstage.c +ramstage-y += variants/$(VARIANT_DIR)/hda_verb.c diff --git a/src/mainboard/system76/whl-u/acpi/ac.asl b/src/mainboard/system76/whl-u/acpi/ac.asl index 7a55e45ca3..6574c61e41 100644 --- a/src/mainboard/system76/whl-u/acpi/ac.asl +++ b/src/mainboard/system76/whl-u/acpi/ac.asl @@ -15,21 +15,21 @@ Device (AC) { - Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID - Name (_PCL, Package (0x01) // _PCL: Power Consumer List - { - _SB - }) + Name (_HID, "ACPI0003" /* Power Source Device */) // _HID: Hardware ID + Name (_PCL, Package (0x01) // _PCL: Power Consumer List + { + _SB + }) - Name (ACFG, One) + Name (ACFG, One) - Method (_PSR, 0, NotSerialized) // _PSR: Power Source - { - Return (ACFG) - } + Method (_PSR, 0, NotSerialized) // _PSR: Power Source + { + Return (ACFG) + } - Method (_STA, 0, NotSerialized) // _STA: Status - { - Return (0x0F) - } + Method (_STA, 0, NotSerialized) // _STA: Status + { + Return (0x0F) + } } diff --git a/src/mainboard/system76/whl-u/acpi/battery.asl b/src/mainboard/system76/whl-u/acpi/battery.asl index bfda8a00cd..c1e6c6ce1d 100644 --- a/src/mainboard/system76/whl-u/acpi/battery.asl +++ b/src/mainboard/system76/whl-u/acpi/battery.asl @@ -15,169 +15,169 @@ Device (BAT0) { - Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID - Name (_UID, Zero) // _UID: Unique ID - Name (_PCL, Package (0x01) // _PCL: Power Consumer List - { - _SB - }) - Name (BFCC, Zero) - Method (_STA, 0, NotSerialized) // _STA: Status - { - If (^^PCI0.LPCB.EC0.ECOK) - { - If (^^PCI0.LPCB.EC0.BAT0) - { - Return (0x1F) - } - Else - { - Return (0x0F) - } - } - Else - { - Return (0x0F) - } - } + Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */) // _HID: Hardware ID + Name (_UID, Zero) // _UID: Unique ID + Name (_PCL, Package (0x01) // _PCL: Power Consumer List + { + _SB + }) + Name (BFCC, Zero) + Method (_STA, 0, NotSerialized) // _STA: Status + { + If (^^PCI0.LPCB.EC0.ECOK) + { + If (^^PCI0.LPCB.EC0.BAT0) + { + Return (0x1F) + } + Else + { + Return (0x0F) + } + } + Else + { + Return (0x0F) + } + } - Name (PBIF, Package (0x0D) - { - One, - 0xFFFFFFFF, - 0xFFFFFFFF, - One, - 0x39D0, - Zero, - Zero, - 0x40, - 0x40, - "BAT", - "0001", - "LION", - "Notebook" - }) - Method (IVBI, 0, NotSerialized) - { - PBIF [One] = 0xFFFFFFFF - PBIF [0x02] = 0xFFFFFFFF - PBIF [0x04] = 0xFFFFFFFF - PBIF [0x09] = " " - PBIF [0x0A] = " " - PBIF [0x0B] = " " - PBIF [0x0C] = " " - BFCC = Zero - } + Name (PBIF, Package (0x0D) + { + One, + 0xFFFFFFFF, + 0xFFFFFFFF, + One, + 0x39D0, + Zero, + Zero, + 0x40, + 0x40, + "BAT", + "0001", + "LION", + "Notebook" + }) + Method (IVBI, 0, NotSerialized) + { + PBIF [One] = 0xFFFFFFFF + PBIF [0x02] = 0xFFFFFFFF + PBIF [0x04] = 0xFFFFFFFF + PBIF [0x09] = " " + PBIF [0x0A] = " " + PBIF [0x0B] = " " + PBIF [0x0C] = " " + BFCC = Zero + } - Method (UPBI, 0, NotSerialized) - { - If (^^PCI0.LPCB.EC0.BAT0) - { - Local0 = (^^PCI0.LPCB.EC0.BDC0 & 0xFFFF) - PBIF [One] = Local0 - Local0 = (^^PCI0.LPCB.EC0.BFC0 & 0xFFFF) - PBIF [0x02] = Local0 - BFCC = Local0 - Local0 = (^^PCI0.LPCB.EC0.BDV0 & 0xFFFF) - PBIF [0x04] = Local0 - Local0 = (^^PCI0.LPCB.EC0.BCW0 & 0xFFFF) - PBIF [0x05] = Local0 - Local0 = (^^PCI0.LPCB.EC0.BCL0 & 0xFFFF) - PBIF [0x06] = Local0 - PBIF [0x09] = "BAT" - PBIF [0x0A] = "0001" - PBIF [0x0B] = "LION" - PBIF [0x0C] = "Notebook" - } - Else - { - IVBI () - } - } + Method (UPBI, 0, NotSerialized) + { + If (^^PCI0.LPCB.EC0.BAT0) + { + Local0 = (^^PCI0.LPCB.EC0.BDC0 & 0xFFFF) + PBIF [One] = Local0 + Local0 = (^^PCI0.LPCB.EC0.BFC0 & 0xFFFF) + PBIF [0x02] = Local0 + BFCC = Local0 + Local0 = (^^PCI0.LPCB.EC0.BDV0 & 0xFFFF) + PBIF [0x04] = Local0 + Local0 = (^^PCI0.LPCB.EC0.BCW0 & 0xFFFF) + PBIF [0x05] = Local0 + Local0 = (^^PCI0.LPCB.EC0.BCL0 & 0xFFFF) + PBIF [0x06] = Local0 + PBIF [0x09] = "BAT" + PBIF [0x0A] = "0001" + PBIF [0x0B] = "LION" + PBIF [0x0C] = "Notebook" + } + Else + { + IVBI () + } + } - Method (_BIF, 0, NotSerialized) // _BIF: Battery Information - { - If (^^PCI0.LPCB.EC0.ECOK) - { - UPBI () - } - Else - { - IVBI () - } + Method (_BIF, 0, NotSerialized) // _BIF: Battery Information + { + If (^^PCI0.LPCB.EC0.ECOK) + { + UPBI () + } + Else + { + IVBI () + } - Return (PBIF) /* \_SB_.BAT0.PBIF */ - } + Return (PBIF) /* \_SB_.BAT0.PBIF */ + } - Name (PBST, Package (0x04) - { - Zero, - 0xFFFFFFFF, - 0xFFFFFFFF, - 0x3D90 - }) - Method (IVBS, 0, NotSerialized) - { - PBST [Zero] = Zero - PBST [One] = 0xFFFFFFFF - PBST [0x02] = 0xFFFFFFFF - PBST [0x03] = 0x2710 - } + Name (PBST, Package (0x04) + { + Zero, + 0xFFFFFFFF, + 0xFFFFFFFF, + 0x3D90 + }) + Method (IVBS, 0, NotSerialized) + { + PBST [Zero] = Zero + PBST [One] = 0xFFFFFFFF + PBST [0x02] = 0xFFFFFFFF + PBST [0x03] = 0x2710 + } - Method (UPBS, 0, NotSerialized) - { - If (^^PCI0.LPCB.EC0.BAT0) - { - Local0 = Zero - Local1 = Zero - If (^^AC.ACFG) - { - If (((^^PCI0.LPCB.EC0.BST0 & 0x02) == 0x02)) - { - Local0 |= 0x02 - Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) - } - } - Else - { - Local0 |= One - Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) - } + Method (UPBS, 0, NotSerialized) + { + If (^^PCI0.LPCB.EC0.BAT0) + { + Local0 = Zero + Local1 = Zero + If (^^AC.ACFG) + { + If (((^^PCI0.LPCB.EC0.BST0 & 0x02) == 0x02)) + { + Local0 |= 0x02 + Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) + } + } + Else + { + Local0 |= One + Local1 = (^^PCI0.LPCB.EC0.BPR0 & 0xFFFF) + } - Local7 = (Local1 & 0x8000) - If ((Local7 == 0x8000)) - { - Local1 ^= 0xFFFF - } + Local7 = (Local1 & 0x8000) + If ((Local7 == 0x8000)) + { + Local1 ^= 0xFFFF + } - Local2 = (^^PCI0.LPCB.EC0.BRC0 & 0xFFFF) - Local3 = (^^PCI0.LPCB.EC0.BPV0 & 0xFFFF) - PBST [Zero] = Local0 - PBST [One] = Local1 - PBST [0x02] = Local2 - PBST [0x03] = Local3 - If ((BFCC != ^^PCI0.LPCB.EC0.BFC0)) - { - Notify (BAT0, 0x81) // Information Change - } - } - Else - { - IVBS () - } - } + Local2 = (^^PCI0.LPCB.EC0.BRC0 & 0xFFFF) + Local3 = (^^PCI0.LPCB.EC0.BPV0 & 0xFFFF) + PBST [Zero] = Local0 + PBST [One] = Local1 + PBST [0x02] = Local2 + PBST [0x03] = Local3 + If ((BFCC != ^^PCI0.LPCB.EC0.BFC0)) + { + Notify (BAT0, 0x81) // Information Change + } + } + Else + { + IVBS () + } + } - Method (_BST, 0, NotSerialized) // _BST: Battery Status - { - If (^^PCI0.LPCB.EC0.ECOK) - { - UPBS () - } - Else - { - IVBS () - } + Method (_BST, 0, NotSerialized) // _BST: Battery Status + { + If (^^PCI0.LPCB.EC0.ECOK) + { + UPBS () + } + Else + { + IVBS () + } - Return (PBST) /* \_SB_.BAT0.PBST */ - } + Return (PBST) /* \_SB_.BAT0.PBST */ + } } diff --git a/src/mainboard/system76/whl-u/acpi/buttons.asl b/src/mainboard/system76/whl-u/acpi/buttons.asl index 4b5940333e..62847b5c09 100644 --- a/src/mainboard/system76/whl-u/acpi/buttons.asl +++ b/src/mainboard/system76/whl-u/acpi/buttons.asl @@ -15,12 +15,12 @@ Device (PWRB) { - Name (_HID, EisaId ("PNP0C0C")) - Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) + Name (_HID, EisaId ("PNP0C0C")) + Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) } Device (SLPB) { - Name (_HID, EisaId ("PNP0C0E")) - Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) + Name (_HID, EisaId ("PNP0C0E")) + Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) } diff --git a/src/mainboard/system76/whl-u/acpi/ec.asl b/src/mainboard/system76/whl-u/acpi/ec.asl index 56bf8f8524..c26670a009 100644 --- a/src/mainboard/system76/whl-u/acpi/ec.asl +++ b/src/mainboard/system76/whl-u/acpi/ec.asl @@ -15,217 +15,217 @@ Device (EC0) { - Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */) // _HID: Hardware ID - Name (_GPE, 0x50 /* GPP_E16 */) // _GPE: General Purpose Events - Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings - { - IO (Decode16, - 0x0062, // Range Minimum - 0x0062, // Range Maximum - 0x00, // Alignment - 0x01, // Length - ) - IO (Decode16, - 0x0066, // Range Minimum - 0x0066, // Range Maximum - 0x00, // Alignment - 0x01, // Length - ) - }) + Name (_HID, EisaId ("PNP0C09") /* Embedded Controller Device */) // _HID: Hardware ID + Name (_GPE, 0x50 /* GPP_E16 */) // _GPE: General Purpose Events + Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings + { + IO (Decode16, + 0x0062, // Range Minimum + 0x0062, // Range Maximum + 0x00, // Alignment + 0x01, // Length + ) + IO (Decode16, + 0x0066, // Range Minimum + 0x0066, // Range Maximum + 0x00, // Alignment + 0x01, // Length + ) + }) - #include "acpi/ec_ram.asl" + #include "acpi/ec_ram.asl" - Name (ECOK, Zero) - Method (_REG, 2, Serialized) // _REG: Region Availability - { - Debug = Concatenate("EC: _REG", Concatenate(ToHexString(Arg0), Concatenate(" ", ToHexString(Arg1)))) - If (((Arg0 == 0x03) && (Arg1 == One))) { - // Enable hardware touchpad lock, airplane mode, and keyboard backlight keys - ECOS = 1 + Name (ECOK, Zero) + Method (_REG, 2, Serialized) // _REG: Region Availability + { + Debug = Concatenate("EC: _REG", Concatenate(ToHexString(Arg0), Concatenate(" ", ToHexString(Arg1)))) + If (((Arg0 == 0x03) && (Arg1 == One))) { + // Enable hardware touchpad lock, airplane mode, and keyboard backlight keys + ECOS = 1 - // Enable software display brightness keys - WINF = 1 + // Enable software display brightness keys + WINF = 1 - // Set current AC state - ^^^^AC.ACFG = ADP - // Update battery information and status - ^^^^BAT0.UPBI() - ^^^^BAT0.UPBS() + // Set current AC state + ^^^^AC.ACFG = ADP + // Update battery information and status + ^^^^BAT0.UPBI() + ^^^^BAT0.UPBS() - PNOT () + PNOT () - // EC is now available - ECOK = Arg1 + // EC is now available + ECOK = Arg1 - // Reset System76 Device - ^^^^S76D.RSET() - } - } + // Reset System76 Device + ^^^^S76D.RSET() + } + } - Method (PTS, 1, Serialized) { - Debug = Concatenate("EC: PTS: ", ToHexString(Arg0)) - If (ECOK) { - // Clear wake cause - WFNO = Zero - } - } + Method (PTS, 1, Serialized) { + Debug = Concatenate("EC: PTS: ", ToHexString(Arg0)) + If (ECOK) { + // Clear wake cause + WFNO = Zero + } + } - Method (WAK, 1, Serialized) { - Debug = Concatenate("EC: WAK: ", ToHexString(Arg0)) - If (ECOK) { - // Set current AC state - ^^^^AC.ACFG = ADP + Method (WAK, 1, Serialized) { + Debug = Concatenate("EC: WAK: ", ToHexString(Arg0)) + If (ECOK) { + // Set current AC state + ^^^^AC.ACFG = ADP - // Update battery information and status - ^^^^BAT0.UPBI() - ^^^^BAT0.UPBS() + // Update battery information and status + ^^^^BAT0.UPBI() + ^^^^BAT0.UPBS() - // Notify of changes - Notify(^^^^AC, Zero) - Notify(^^^^BAT0, Zero) + // Notify of changes + Notify(^^^^AC, Zero) + Notify(^^^^BAT0, Zero) - Sleep (1000) + Sleep (1000) - // Reset System76 Device - ^^^^S76D.RSET() - } - } + // Reset System76 Device + ^^^^S76D.RSET() + } + } - Method (_Q0A, 0, NotSerialized) // Touchpad Toggle - { - Debug = "EC: Touchpad Toggle" - } + Method (_Q0A, 0, NotSerialized) // Touchpad Toggle + { + Debug = "EC: Touchpad Toggle" + } - Method (_Q0B, 0, NotSerialized) // Screen Toggle - { - Debug = "EC: Screen Toggle" - } + Method (_Q0B, 0, NotSerialized) // Screen Toggle + { + Debug = "EC: Screen Toggle" + } - Method (_Q0C, 0, NotSerialized) // Mute - { - Debug = "EC: Mute" - } + Method (_Q0C, 0, NotSerialized) // Mute + { + Debug = "EC: Mute" + } - Method (_Q0D, 0, NotSerialized) // Keyboard Backlight - { - Debug = "EC: Keyboard Backlight" - } + Method (_Q0D, 0, NotSerialized) // Keyboard Backlight + { + Debug = "EC: Keyboard Backlight" + } - Method (_Q0E, 0, NotSerialized) // Volume Down - { - Debug = "EC: Volume Down" - } + Method (_Q0E, 0, NotSerialized) // Volume Down + { + Debug = "EC: Volume Down" + } - Method (_Q0F, 0, NotSerialized) // Volume Up - { - Debug = "EC: Volume Up" - } + Method (_Q0F, 0, NotSerialized) // Volume Up + { + Debug = "EC: Volume Up" + } - Method (_Q10, 0, NotSerialized) // Switch Video Mode - { - Debug = "EC: Switch Video Mode" - } + Method (_Q10, 0, NotSerialized) // Switch Video Mode + { + Debug = "EC: Switch Video Mode" + } - Method (_Q11, 0, NotSerialized) // Brightness Down - { - Debug = "EC: Brightness Down" - ^^^^HIDD.HPEM (20) - } + Method (_Q11, 0, NotSerialized) // Brightness Down + { + Debug = "EC: Brightness Down" + ^^^^HIDD.HPEM (20) + } - Method (_Q12, 0, NotSerialized) // Brightness Up - { - Debug = "EC: Brightness Up" - ^^^^HIDD.HPEM (19) - } + Method (_Q12, 0, NotSerialized) // Brightness Up + { + Debug = "EC: Brightness Up" + ^^^^HIDD.HPEM (19) + } - Method (_Q13, 0, NotSerialized) // Camera Toggle - { - Debug = "EC: Camera Toggle" - } + Method (_Q13, 0, NotSerialized) // Camera Toggle + { + Debug = "EC: Camera Toggle" + } - Method (_Q14, 0, NotSerialized) // Airplane Mode - { - Debug = "EC: Airplane Mode" - // Only send HIDD message when hardware airplane mode not in use - If (ECOS == 2) { - ^^^^HIDD.HPEM (8) - } - } + Method (_Q14, 0, NotSerialized) // Airplane Mode + { + Debug = "EC: Airplane Mode" + // Only send HIDD message when hardware airplane mode not in use + If (ECOS == 2) { + ^^^^HIDD.HPEM (8) + } + } - Method (_Q15, 0, NotSerialized) // Suspend Button - { - Debug = "EC: Suspend Button" - Notify (SLPB, 0x80) - } + Method (_Q15, 0, NotSerialized) // Suspend Button + { + Debug = "EC: Suspend Button" + Notify (SLPB, 0x80) + } - Method (_Q16, 0, NotSerialized) // AC Detect - { - Debug = "EC: AC Detect" - ^^^^AC.ACFG = ADP - Notify (AC, 0x80) // Status Change - Sleep (0x01F4) - If (BAT0) - { - Notify (^^^^BAT0, 0x81) // Information Change - Sleep (0x32) - Notify (^^^^BAT0, 0x80) // Status Change - Sleep (0x32) - } - } + Method (_Q16, 0, NotSerialized) // AC Detect + { + Debug = "EC: AC Detect" + ^^^^AC.ACFG = ADP + Notify (AC, 0x80) // Status Change + Sleep (0x01F4) + If (BAT0) + { + Notify (^^^^BAT0, 0x81) // Information Change + Sleep (0x32) + Notify (^^^^BAT0, 0x80) // Status Change + Sleep (0x32) + } + } - Method (_Q17, 0, NotSerialized) // BAT0 Update - { - Debug = "EC: BAT0 Update (17)" - Notify (^^^^BAT0, 0x81) // Information Change - } + Method (_Q17, 0, NotSerialized) // BAT0 Update + { + Debug = "EC: BAT0 Update (17)" + Notify (^^^^BAT0, 0x81) // Information Change + } - Method (_Q19, 0, NotSerialized) // BAT0 Update - { - Debug = "EC: BAT0 Update (19)" - Notify (^^^^BAT0, 0x81) // Information Change - } + Method (_Q19, 0, NotSerialized) // BAT0 Update + { + Debug = "EC: BAT0 Update (19)" + Notify (^^^^BAT0, 0x81) // Information Change + } - Method (_Q1B, 0, NotSerialized) // Lid Close - { - Debug = "EC: Lid Close" - Notify (LID0, 0x80) - } + Method (_Q1B, 0, NotSerialized) // Lid Close + { + Debug = "EC: Lid Close" + Notify (LID0, 0x80) + } - Method (_Q1C, 0, NotSerialized) // Thermal Trip - { - Debug = "EC: Thermal Trip" - /* TODO - Notify (\_TZ.TZ0, 0x81) // Thermal Trip Point Change - Notify (\_TZ.TZ0, 0x80) // Thermal Status Change - */ - } + Method (_Q1C, 0, NotSerialized) // Thermal Trip + { + Debug = "EC: Thermal Trip" + /* TODO + Notify (\_TZ.TZ0, 0x81) // Thermal Trip Point Change + Notify (\_TZ.TZ0, 0x80) // Thermal Status Change + */ + } - Method (_Q1D, 0, NotSerialized) // Power Button - { - Debug = "EC: Power Button" - Notify (PWRB, 0x80) - } + Method (_Q1D, 0, NotSerialized) // Power Button + { + Debug = "EC: Power Button" + Notify (PWRB, 0x80) + } - Method (_Q50, 0, NotSerialized) // Other Events - { - Local0 = OEM4 - If (Local0 == 0x8A) { - Debug = "EC: White Keyboard Backlight" - Notify (^^^^S76D, 0x80) - } ElseIf (Local0 == 0x9F) { - Debug = "EC: Color Keyboard Toggle" - Notify (^^^^S76D, 0x81) - } ElseIf (Local0 == 0x81) { - Debug = "EC: Color Keyboard Down" - Notify (^^^^S76D, 0x82) - } ElseIf (Local0 == 0x82) { - Debug = "EC: Color Keyboard Up" - Notify (^^^^S76D, 0x83) - } ElseIf (Local0 == 0x80) { - Debug = "EC: Color Keyboard Color Change" - Notify (^^^^S76D, 0x84) - } Else { - Debug = Concatenate("EC: Other: ", ToHexString(Local0)) - } - } + Method (_Q50, 0, NotSerialized) // Other Events + { + Local0 = OEM4 + If (Local0 == 0x8A) { + Debug = "EC: White Keyboard Backlight" + Notify (^^^^S76D, 0x80) + } ElseIf (Local0 == 0x9F) { + Debug = "EC: Color Keyboard Toggle" + Notify (^^^^S76D, 0x81) + } ElseIf (Local0 == 0x81) { + Debug = "EC: Color Keyboard Down" + Notify (^^^^S76D, 0x82) + } ElseIf (Local0 == 0x82) { + Debug = "EC: Color Keyboard Up" + Notify (^^^^S76D, 0x83) + } ElseIf (Local0 == 0x80) { + Debug = "EC: Color Keyboard Color Change" + Notify (^^^^S76D, 0x84) + } Else { + Debug = Concatenate("EC: Other: ", ToHexString(Local0)) + } + } } diff --git a/src/mainboard/system76/whl-u/acpi/ec_ram.asl b/src/mainboard/system76/whl-u/acpi/ec_ram.asl index 9502f5f057..4bb452b6e3 100644 --- a/src/mainboard/system76/whl-u/acpi/ec_ram.asl +++ b/src/mainboard/system76/whl-u/acpi/ec_ram.asl @@ -16,173 +16,173 @@ OperationRegion (ERAM, EmbeddedControl, Zero, 0xFF) Field (ERAM, ByteAcc, Lock, Preserve) { - NMSG, 8, - SLED, 4, - Offset (0x02), - MODE, 1, - FAN0, 1, - TME0, 1, - TME1, 1, - FAN1, 1, - , 2, - Offset (0x03), - LSTE, 1, - LSW0, 1, - LWKE, 1, - WAKF, 1, - , 2, - PWKE, 1, - MWKE, 1, - AC0, 8, - PSV, 8, - CRT, 8, - TMP, 8, - AC1, 8, - BBST, 8, - Offset (0x0B), - Offset (0x0C), - Offset (0x0D), - Offset (0x0E), - SLPT, 8, - SWEJ, 1, - SWCH, 1, - Offset (0x10), - ADP, 1, - AFLT, 1, - BAT0, 1, - BAT1, 1, - , 3, - PWOF, 1, - WFNO, 8, - BPU0, 32, - BDC0, 32, - BFC0, 32, - BTC0, 32, - BDV0, 32, - BST0, 32, - BPR0, 32, - BRC0, 32, - BPV0, 32, - BTP0, 16, - BRS0, 16, - BCW0, 32, - BCL0, 32, - BCG0, 32, - BG20, 32, - BMO0, 64, - BIF0, 64, - BSN0, 32, - BTY0, 64, - Offset (0x67), - Offset (0x68), - ECOS, 8, - LNXD, 8, - ECPS, 8, - Offset (0x6C), - BTMP, 16, - EVTN, 8, - Offset (0x72), - PRCL, 8, - PRC0, 8, - PRC1, 8, - PRCM, 8, - PRIN, 8, - PSTE, 8, - PCAD, 8, - PEWL, 8, - PWRL, 8, - PECD, 8, - PEHI, 8, - PECI, 8, - PEPL, 8, - PEPM, 8, - PWFC, 8, - PECC, 8, - PDT0, 8, - PDT1, 8, - PDT2, 8, - PDT3, 8, - PRFC, 8, - PRS0, 8, - PRS1, 8, - PRS2, 8, - PRS3, 8, - PRS4, 8, - PRCS, 8, - PEC0, 8, - PEC1, 8, - PEC2, 8, - PEC3, 8, - CMDR, 8, - CVRT, 8, - GTVR, 8, - FANT, 8, - SKNT, 8, - AMBT, 8, - MCRT, 8, - DIM0, 8, - DIM1, 8, - PMAX, 8, - PPDT, 8, - PECH, 8, - PMDT, 8, - TSD0, 8, - TSD1, 8, - TSD2, 8, - TSD3, 8, - CPUP, 16, - MCHP, 16, - SYSP, 16, - CPAP, 16, - MCAP, 16, - SYAP, 16, - CFSP, 16, - CPUE, 16, - Offset (0xC6), - Offset (0xC7), - VGAT, 8, - OEM1, 8, - OEM2, 8, - OEM3, 16, - OEM4, 8, - Offset (0xCE), - DUT1, 8, - DUT2, 8, - RPM1, 16, - RPM2, 16, - RPM4, 16, - Offset (0xD7), - DTHL, 8, - DTBP, 8, - AIRP, 8, - WINF, 8, - RINF, 8, - Offset (0xDD), - INF2, 8, - MUTE, 1, - Offset (0xE0), - RPM3, 16, - ECKS, 8, - Offset (0xE4), - , 4, - XTUF, 1, - EP12, 1, - Offset (0xE5), - INF3, 8, - Offset (0xE7), - GFOF, 8, - Offset (0xE9), - KPCR, 1, - Offset (0xEA), - Offset (0xF0), - PL1T, 16, - PL2T, 16, - TAUT, 8, - Offset (0xF8), - FCMD, 8, - FDAT, 8, - FBUF, 8, - FBF1, 8, - FBF2, 8, - FBF3, 8 + NMSG, 8, + SLED, 4, + Offset (0x02), + MODE, 1, + FAN0, 1, + TME0, 1, + TME1, 1, + FAN1, 1, + , 2, + Offset (0x03), + LSTE, 1, + LSW0, 1, + LWKE, 1, + WAKF, 1, + , 2, + PWKE, 1, + MWKE, 1, + AC0, 8, + PSV, 8, + CRT, 8, + TMP, 8, + AC1, 8, + BBST, 8, + Offset (0x0B), + Offset (0x0C), + Offset (0x0D), + Offset (0x0E), + SLPT, 8, + SWEJ, 1, + SWCH, 1, + Offset (0x10), + ADP, 1, + AFLT, 1, + BAT0, 1, + BAT1, 1, + , 3, + PWOF, 1, + WFNO, 8, + BPU0, 32, + BDC0, 32, + BFC0, 32, + BTC0, 32, + BDV0, 32, + BST0, 32, + BPR0, 32, + BRC0, 32, + BPV0, 32, + BTP0, 16, + BRS0, 16, + BCW0, 32, + BCL0, 32, + BCG0, 32, + BG20, 32, + BMO0, 64, + BIF0, 64, + BSN0, 32, + BTY0, 64, + Offset (0x67), + Offset (0x68), + ECOS, 8, + LNXD, 8, + ECPS, 8, + Offset (0x6C), + BTMP, 16, + EVTN, 8, + Offset (0x72), + PRCL, 8, + PRC0, 8, + PRC1, 8, + PRCM, 8, + PRIN, 8, + PSTE, 8, + PCAD, 8, + PEWL, 8, + PWRL, 8, + PECD, 8, + PEHI, 8, + PECI, 8, + PEPL, 8, + PEPM, 8, + PWFC, 8, + PECC, 8, + PDT0, 8, + PDT1, 8, + PDT2, 8, + PDT3, 8, + PRFC, 8, + PRS0, 8, + PRS1, 8, + PRS2, 8, + PRS3, 8, + PRS4, 8, + PRCS, 8, + PEC0, 8, + PEC1, 8, + PEC2, 8, + PEC3, 8, + CMDR, 8, + CVRT, 8, + GTVR, 8, + FANT, 8, + SKNT, 8, + AMBT, 8, + MCRT, 8, + DIM0, 8, + DIM1, 8, + PMAX, 8, + PPDT, 8, + PECH, 8, + PMDT, 8, + TSD0, 8, + TSD1, 8, + TSD2, 8, + TSD3, 8, + CPUP, 16, + MCHP, 16, + SYSP, 16, + CPAP, 16, + MCAP, 16, + SYAP, 16, + CFSP, 16, + CPUE, 16, + Offset (0xC6), + Offset (0xC7), + VGAT, 8, + OEM1, 8, + OEM2, 8, + OEM3, 16, + OEM4, 8, + Offset (0xCE), + DUT1, 8, + DUT2, 8, + RPM1, 16, + RPM2, 16, + RPM4, 16, + Offset (0xD7), + DTHL, 8, + DTBP, 8, + AIRP, 8, + WINF, 8, + RINF, 8, + Offset (0xDD), + INF2, 8, + MUTE, 1, + Offset (0xE0), + RPM3, 16, + ECKS, 8, + Offset (0xE4), + , 4, + XTUF, 1, + EP12, 1, + Offset (0xE5), + INF3, 8, + Offset (0xE7), + GFOF, 8, + Offset (0xE9), + KPCR, 1, + Offset (0xEA), + Offset (0xF0), + PL1T, 16, + PL2T, 16, + TAUT, 8, + Offset (0xF8), + FCMD, 8, + FDAT, 8, + FBUF, 8, + FBF1, 8, + FBF2, 8, + FBF3, 8 } diff --git a/src/mainboard/system76/whl-u/acpi/gpe.asl b/src/mainboard/system76/whl-u/acpi/gpe.asl index d24d53ed57..e68c9cd306 100644 --- a/src/mainboard/system76/whl-u/acpi/gpe.asl +++ b/src/mainboard/system76/whl-u/acpi/gpe.asl @@ -15,10 +15,10 @@ // GPP_D9 SCI Method (_L29, 0, Serialized) { - Debug = Concatenate("GPE _L29: ", ToHexString(\_SB.PCI0.LPCB.EC0.WFNO)) - If (\_SB.PCI0.LPCB.EC0.ECOK) { - If (\_SB.PCI0.LPCB.EC0.WFNO == One) { - Notify(\_SB.LID0, 0x80) - } - } + Debug = Concatenate("GPE _L29: ", ToHexString(\_SB.PCI0.LPCB.EC0.WFNO)) + If (\_SB.PCI0.LPCB.EC0.ECOK) { + If (\_SB.PCI0.LPCB.EC0.WFNO == One) { + Notify(\_SB.LID0, 0x80) + } + } } diff --git a/src/mainboard/system76/whl-u/acpi/hid.asl b/src/mainboard/system76/whl-u/acpi/hid.asl index c75fefa6a0..1f151d5582 100644 --- a/src/mainboard/system76/whl-u/acpi/hid.asl +++ b/src/mainboard/system76/whl-u/acpi/hid.asl @@ -15,49 +15,49 @@ Device (HIDD) { - Name (_HID, "INT33D5") - Name (HBSY, Zero) - Name (HIDX, Zero) - Name (HRDY, Zero) + Name (_HID, "INT33D5") + Name (HBSY, Zero) + Name (HIDX, Zero) + Name (HRDY, Zero) - Method (HDEM, 0, Serialized) - { - HBSY = Zero - Return (HIDX) - } + Method (HDEM, 0, Serialized) + { + HBSY = Zero + Return (HIDX) + } - Method (HDMM, 0, Serialized) - { - Return (Zero) - } + Method (HDMM, 0, Serialized) + { + Return (Zero) + } - Method (HDSM, 1, Serialized) - { - HRDY = Arg0 - } + Method (HDSM, 1, Serialized) + { + HRDY = Arg0 + } - Method (HPEM, 1, Serialized) - { - HBSY = One - HIDX = Arg0 + Method (HPEM, 1, Serialized) + { + HBSY = One + HIDX = Arg0 - Notify (HIDD, 0xC0) - Local0 = Zero - While (((Local0 < 0xFA) && HBSY)) - { - Sleep (0x04) - Local0++ - } + Notify (HIDD, 0xC0) + Local0 = Zero + While (((Local0 < 0xFA) && HBSY)) + { + Sleep (0x04) + Local0++ + } - If ((HBSY == One)) - { - HBSY = Zero - HIDX = Zero - Return (One) - } - Else - { - Return (Zero) - } - } + If ((HBSY == One)) + { + HBSY = Zero + HIDX = Zero + Return (One) + } + Else + { + Return (Zero) + } + } } diff --git a/src/mainboard/system76/whl-u/acpi/lid.asl b/src/mainboard/system76/whl-u/acpi/lid.asl index 0a8688023a..729a0d9090 100644 --- a/src/mainboard/system76/whl-u/acpi/lid.asl +++ b/src/mainboard/system76/whl-u/acpi/lid.asl @@ -15,22 +15,22 @@ Device (LID0) { - Name (_HID, EisaId ("PNP0C0D")) - Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) + Name (_HID, EisaId ("PNP0C0D")) + Name (_PRW, Package () { 0x29 /* GPP_D9 */, 3 }) - Method (_LID, 0, NotSerialized) { - DEBUG = "LID: _LID" - If (^^PCI0.LPCB.EC0.ECOK) { - Return (^^PCI0.LPCB.EC0.LSTE) - } Else { - Return (One) - } - } + Method (_LID, 0, NotSerialized) { + DEBUG = "LID: _LID" + If (^^PCI0.LPCB.EC0.ECOK) { + Return (^^PCI0.LPCB.EC0.LSTE) + } Else { + Return (One) + } + } - Method (_PSW, 1, NotSerialized) { - DEBUG = Concatenate("LID: _PSW: ", ToHexString(Arg0)) - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.LWKE = Arg0 - } - } + Method (_PSW, 1, NotSerialized) { + DEBUG = Concatenate("LID: _PSW: ", ToHexString(Arg0)) + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.LWKE = Arg0 + } + } } diff --git a/src/mainboard/system76/whl-u/acpi/mainboard.asl b/src/mainboard/system76/whl-u/acpi/mainboard.asl index 1a3e8ae8d6..cdc47a4b71 100644 --- a/src/mainboard/system76/whl-u/acpi/mainboard.asl +++ b/src/mainboard/system76/whl-u/acpi/mainboard.asl @@ -14,25 +14,25 @@ */ #if defined(CONFIG_BOARD_SYSTEM76_DARP5) - #define COLOR_KEYBOARD 1 + #define COLOR_KEYBOARD 1 #elif defined(CONFIG_BOARD_SYSTEM76_GALP3_C) - #define COLOR_KEYBOARD 0 + #define COLOR_KEYBOARD 0 #else - #error Unknown Mainboard + #error Unknown Mainboard #endif Scope (\_SB) { - #include "ac.asl" - #include "battery.asl" - #include "buttons.asl" - #include "hid.asl" - #include "lid.asl" - #include "s76.asl" - #include "sleep.asl" + #include "ac.asl" + #include "battery.asl" + #include "buttons.asl" + #include "hid.asl" + #include "lid.asl" + #include "s76.asl" + #include "sleep.asl" } #include "tbt.asl" Scope (_GPE) { - #include "gpe.asl" + #include "gpe.asl" } diff --git a/src/mainboard/system76/whl-u/acpi/s76.asl b/src/mainboard/system76/whl-u/acpi/s76.asl index 06ad9a66bb..e05d32d8fb 100644 --- a/src/mainboard/system76/whl-u/acpi/s76.asl +++ b/src/mainboard/system76/whl-u/acpi/s76.asl @@ -20,108 +20,108 @@ // 0x83 - backlight up // 0x84 - backlight color change Device (S76D) { - Name (_HID, "17761776") - Name (_UID, 0) + Name (_HID, "17761776") + Name (_UID, 0) - Method (RSET, 0, Serialized) { - Debug = "S76D: RSET" - SAPL(0) - SKBL(0) - #if COLOR_KEYBOARD - SKBC(0xFFFFFF) - #endif - } + Method (RSET, 0, Serialized) { + Debug = "S76D: RSET" + SAPL(0) + SKBL(0) + #if COLOR_KEYBOARD + SKBC(0xFFFFFF) + #endif + } - Method (INIT, 0, Serialized) { - Debug = "S76D: INIT" - RSET() - If (^^PCI0.LPCB.EC0.ECOK) { - // Set flags to use software control - ^^PCI0.LPCB.EC0.ECOS = 2 - Return (0) - } Else { - Return (1) - } - } + Method (INIT, 0, Serialized) { + Debug = "S76D: INIT" + RSET() + If (^^PCI0.LPCB.EC0.ECOK) { + // Set flags to use software control + ^^PCI0.LPCB.EC0.ECOS = 2 + Return (0) + } Else { + Return (1) + } + } - Method (FINI, 0, Serialized) { - Debug = "S76D: FINI" - RSET() - If (^^PCI0.LPCB.EC0.ECOK) { - // Set flags to use hardware control - ^^PCI0.LPCB.EC0.ECOS = 1 - Return (0) - } Else { - Return (1) - } - } + Method (FINI, 0, Serialized) { + Debug = "S76D: FINI" + RSET() + If (^^PCI0.LPCB.EC0.ECOK) { + // Set flags to use hardware control + ^^PCI0.LPCB.EC0.ECOS = 1 + Return (0) + } Else { + Return (1) + } + } - // Get Airplane LED - Method (GAPL, 0, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - If (^^PCI0.LPCB.EC0.AIRP & 0x40) { - Return (1) - } - } - Return (0) - } + // Get Airplane LED + Method (GAPL, 0, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + If (^^PCI0.LPCB.EC0.AIRP & 0x40) { + Return (1) + } + } + Return (0) + } - // Set Airplane LED - Method (SAPL, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - If (Arg0) { - ^^PCI0.LPCB.EC0.AIRP |= 0x40 - } Else { - ^^PCI0.LPCB.EC0.AIRP &= 0xBF - } - } - } + // Set Airplane LED + Method (SAPL, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + If (Arg0) { + ^^PCI0.LPCB.EC0.AIRP |= 0x40 + } Else { + ^^PCI0.LPCB.EC0.AIRP &= 0xBF + } + } + } #if COLOR_KEYBOARD - // Set KB LED Brightness - Method (SKBL, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = 6 - ^^PCI0.LPCB.EC0.FBUF = Arg0 - ^^PCI0.LPCB.EC0.FBF1 = 0 - ^^PCI0.LPCB.EC0.FBF2 = Arg0 - ^^PCI0.LPCB.EC0.FCMD = 0xCA - } - } + // Set KB LED Brightness + Method (SKBL, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = 6 + ^^PCI0.LPCB.EC0.FBUF = Arg0 + ^^PCI0.LPCB.EC0.FBF1 = 0 + ^^PCI0.LPCB.EC0.FBF2 = Arg0 + ^^PCI0.LPCB.EC0.FCMD = 0xCA + } + } - // Set Keyboard Color - Method (SKBC, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = 0x3 - ^^PCI0.LPCB.EC0.FBUF = (Arg0 & 0xFF) - ^^PCI0.LPCB.EC0.FBF1 = ((Arg0 >> 16) & 0xFF) - ^^PCI0.LPCB.EC0.FBF2 = ((Arg0 >> 8) & 0xFF) - ^^PCI0.LPCB.EC0.FCMD = 0xCA - Return (Arg0) - } Else { - Return (0) - } - } + // Set Keyboard Color + Method (SKBC, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = 0x3 + ^^PCI0.LPCB.EC0.FBUF = (Arg0 & 0xFF) + ^^PCI0.LPCB.EC0.FBF1 = ((Arg0 >> 16) & 0xFF) + ^^PCI0.LPCB.EC0.FBF2 = ((Arg0 >> 8) & 0xFF) + ^^PCI0.LPCB.EC0.FCMD = 0xCA + Return (Arg0) + } Else { + Return (0) + } + } #else - // Get KB LED - Method (GKBL, 0, Serialized) { - Local0 = 0 - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = One - ^^PCI0.LPCB.EC0.FCMD = 0xCA - Local0 = ^^PCI0.LPCB.EC0.FBUF - ^^PCI0.LPCB.EC0.FCMD = Zero - } - Return (Local0) - } + // Get KB LED + Method (GKBL, 0, Serialized) { + Local0 = 0 + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = One + ^^PCI0.LPCB.EC0.FCMD = 0xCA + Local0 = ^^PCI0.LPCB.EC0.FBUF + ^^PCI0.LPCB.EC0.FCMD = Zero + } + Return (Local0) + } - // Set KB Led - Method (SKBL, 1, Serialized) { - If (^^PCI0.LPCB.EC0.ECOK) { - ^^PCI0.LPCB.EC0.FDAT = Zero - ^^PCI0.LPCB.EC0.FBUF = Arg0 - ^^PCI0.LPCB.EC0.FCMD = 0xCA - } - } + // Set KB Led + Method (SKBL, 1, Serialized) { + If (^^PCI0.LPCB.EC0.ECOK) { + ^^PCI0.LPCB.EC0.FDAT = Zero + ^^PCI0.LPCB.EC0.FBUF = Arg0 + ^^PCI0.LPCB.EC0.FCMD = 0xCA + } + } #endif } diff --git a/src/mainboard/system76/whl-u/bootblock.c b/src/mainboard/system76/whl-u/bootblock.c index 3a24b283bc..00c4588f5f 100644 --- a/src/mainboard/system76/whl-u/bootblock.c +++ b/src/mainboard/system76/whl-u/bootblock.c @@ -17,6 +17,7 @@ #include #include "gpio.h" -void bootblock_mainboard_init(void) { +void bootblock_mainboard_init(void) +{ gpio_configure_pads(early_gpio_table, ARRAY_SIZE(early_gpio_table)); } diff --git a/src/mainboard/system76/whl-u/devicetree.cb b/src/mainboard/system76/whl-u/devicetree.cb index be3eea3784..c477ba3a40 100644 --- a/src/mainboard/system76/whl-u/devicetree.cb +++ b/src/mainboard/system76/whl-u/devicetree.cb @@ -8,7 +8,7 @@ chip soc/intel/cannonlake register "SendVrMbxCmd" = "2" # ACPI (soc/intel/cannonlake/acpi.c) - # Enable s0ix + # Disable s0ix register "s0ix_enable" = "0" # PM Timer Enabled @@ -138,7 +138,7 @@ chip soc/intel/cannonlake register "PchPmSlpS3MinAssert" = "3" # 50ms register "PchPmSlpS4MinAssert" = "1" # 1s register "PchPmSlpSusMinAssert" = "2" # 500ms - register "PchPmSlpAMinAssert" = "4" # 2s + register "PchPmSlpAMinAssert" = "4" # 2s # Thermal register "tcc_offset" = "12" diff --git a/src/mainboard/system76/whl-u/dsdt.asl b/src/mainboard/system76/whl-u/dsdt.asl index a42052f208..75a98885ed 100644 --- a/src/mainboard/system76/whl-u/dsdt.asl +++ b/src/mainboard/system76/whl-u/dsdt.asl @@ -25,34 +25,23 @@ DefinitionBlock( 0x20110725 // OEM revision ) { - // Some generic macros #include - - // global NVS and variables #include - - // CPU #include - Scope (\_SB) { - Device (PCI0) - { - #include - #include - } + Device (\_SB.PCI0) + { + #include + #include } - // Chipset specific sleep states #include - Scope (\_SB.PCI0.LPCB) { - // PS/2 bus - #include - - // Embedded controller - #include "acpi/ec.asl" + Scope (\_SB.PCI0.LPCB) + { + #include + #include "acpi/ec.asl" } - // Mainboard specific #include "acpi/mainboard.asl" } diff --git a/src/mainboard/system76/whl-u/ramstage.c b/src/mainboard/system76/whl-u/ramstage.c index 133627d150..c990a2986f 100644 --- a/src/mainboard/system76/whl-u/ramstage.c +++ b/src/mainboard/system76/whl-u/ramstage.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -23,7 +24,8 @@ #include #include "gpio.h" -void mainboard_silicon_init_params(FSP_S_CONFIG *params) { +void mainboard_silicon_init_params(FSP_S_CONFIG *params) +{ /* Configure pads prior to SiliconInit() in case there's any * dependencies during hardware initialization. */ cnl_configure_pads(gpio_table, ARRAY_SIZE(gpio_table)); diff --git a/src/mainboard/system76/whl-u/romstage.c b/src/mainboard/system76/whl-u/romstage.c index 0cb821db96..e575ad3b87 100644 --- a/src/mainboard/system76/whl-u/romstage.c +++ b/src/mainboard/system76/whl-u/romstage.c @@ -16,7 +16,6 @@ #include #include -//TODO: find correct values static const struct cnl_mb_cfg memcfg = { /* Parameters required to access SPD for CH0D0/CH0D1/CH1D0/CH1D1. */ .spd[0] = { @@ -43,11 +42,11 @@ static const struct cnl_mb_cfg memcfg = { */ .dq_map[DDR_CH0] = { {0x0F, 0xF0}, {0x00, 0xF0}, {0x0F, 0xF0}, - //{0x0F, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} + //{0x0F, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} }, .dq_map[DDR_CH1] = { {0x33, 0xCC}, {0x00, 0xCC}, {0x33, 0xCC}, - //{0x33, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} + //{0x33, 0x00}, {0xFF, 0x00}, {0xFF, 0x00} }, /* @@ -81,17 +80,18 @@ static const struct cnl_mb_cfg memcfg = { .dq_pins_interleaved = 1, /* - * VREF_CA configuraation. + * VREF_CA configuration. * Set to 0 VREF_CA goes to both CH_A and CH_B, * set to 1 VREF_CA goes to CH_A and VREF_DQ_A goes to CH_B, * set to 2 VREF_CA goes to CH_A and VREF_DQ_B goes to CH_B. */ .vref_ca_config = 2, - /* Early Command Training Enabled */ + /* Early Command Training */ .ect = 0, }; -void mainboard_memory_init_params(FSPM_UPD *memupd) { +void mainboard_memory_init_params(FSPM_UPD *memupd) +{ cannonlake_memcfg_init(&memupd->FspmConfig, &memcfg); } diff --git a/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c b/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c index ce9aed8ae5..b76ff8f8f7 100644 --- a/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c +++ b/src/mainboard/system76/whl-u/variants/darp5/hda_verb.c @@ -13,13 +13,10 @@ * GNU General Public License for more details. */ -#ifndef HDA_VERB_H -#define HDA_VERB_H - #include const u32 cim_verb_data[] = { - /* Realtek, ALC293 */ + /* Realtek ALC293 */ 0x10ec0293, /* Vendor ID */ 0x15581325, /* Subsystem ID */ 12, /* Number of entries */ @@ -35,7 +32,8 @@ const u32 cim_verb_data[] = { AZALIA_PIN_CFG(0, 0x1b, 0x411111f0), AZALIA_PIN_CFG(0, 0x1d, 0x41738205), AZALIA_PIN_CFG(0, 0x1e, 0x02451130), - /* Intel, KabylakeHDMI */ + + /* Intel GPU HDMI */ 0x8086280b, /* Vendor ID */ 0x80860101, /* Subsystem ID */ 4, /* Number of entries */ @@ -48,5 +46,3 @@ const u32 cim_verb_data[] = { const u32 pc_beep_verbs[] = {}; AZALIA_ARRAY_SIZES; - -#endif diff --git a/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c b/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c index 200748515f..790d538776 100644 --- a/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c +++ b/src/mainboard/system76/whl-u/variants/galp3-c/hda_verb.c @@ -13,13 +13,10 @@ * GNU General Public License for more details. */ -#ifndef HDA_VERB_H -#define HDA_VERB_H - #include const u32 cim_verb_data[] = { - /* Realtek, ALC293 */ + /* Realtek ALC293 */ 0x10ec0293, /* Vendor ID */ 0x15581323, /* Subsystem ID */ 12, /* Number of entries */ @@ -35,7 +32,8 @@ const u32 cim_verb_data[] = { AZALIA_PIN_CFG(0, 0x1b, 0x411111f0), AZALIA_PIN_CFG(0, 0x1d, 0x40738205), AZALIA_PIN_CFG(0, 0x1e, 0x411111f0), - /* Intel, KabylakeHDMI */ + + /* Intel GPU HDMI */ 0x8086280b, /* Vendor ID */ 0x80860101, /* Subsystem ID */ 4, /* Number of entries */ @@ -48,5 +46,3 @@ const u32 cim_verb_data[] = { const u32 pc_beep_verbs[] = {}; AZALIA_ARRAY_SIZES; - -#endif