{ec,mb}/system76: Replace color keyboard logic
The EC now detects if the keyboard is white or RGB backlit via `RGBKB-DET#`. Remove the Kconfig for the selection and update the ACPI methods for the new functionality. Change-Id: I263ede51a4184769659082a2c60d9556b5328670 Signed-off-by: Tim Crawford <tcrawford@system76.com>
This commit is contained in:
@ -8,11 +8,6 @@ config EC_SYSTEM76_EC_BAT_THRESHOLDS
|
||||
bool
|
||||
default y
|
||||
|
||||
config EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
depends on EC_SYSTEM76_EC
|
||||
bool
|
||||
default n
|
||||
|
||||
config EC_SYSTEM76_EC_DGPU
|
||||
depends on EC_SYSTEM76_EC
|
||||
bool
|
||||
|
@ -16,10 +16,8 @@ Device (S76D) {
|
||||
Method (RSET, 0, Serialized) {
|
||||
Printf ("S76D: RSET")
|
||||
SAPL(0)
|
||||
SKBL(0)
|
||||
#if CONFIG(EC_SYSTEM76_EC_COLOR_KEYBOARD)
|
||||
SKBB(0)
|
||||
SKBC(0xFFFFFF)
|
||||
#endif // CONFIG(EC_SYSTEM76_EC_COLOR_KEYBOARD)
|
||||
}
|
||||
|
||||
Method (INIT, 0, Serialized) {
|
||||
@ -67,53 +65,63 @@ Device (S76D) {
|
||||
}
|
||||
}
|
||||
|
||||
#if CONFIG(EC_SYSTEM76_EC_COLOR_KEYBOARD)
|
||||
// Set KB LED Brightness
|
||||
Method (SKBL, 1, Serialized) {
|
||||
// Get Keyboard Backlight Kind
|
||||
// 0 - No backlight
|
||||
// 1 - White backlight
|
||||
// 2 - RGB backlight
|
||||
Method (GKBK, 0, Serialized) {
|
||||
Local0 = 0
|
||||
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.FDAT = 2
|
||||
^^PCI0.LPCB.EC0.FCMD = 0xCA
|
||||
Local0 = ^^PCI0.LPCB.EC0.FBUF
|
||||
}
|
||||
Return (Local0)
|
||||
}
|
||||
|
||||
// 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 // CONFIG(EC_SYSTEM76_EC_COLOR_KEYBOARD)
|
||||
// Get KB LED
|
||||
Method (GKBL, 0, Serialized) {
|
||||
// Get Keyboard Brightness
|
||||
Method (GKBB, 0, Serialized) {
|
||||
Local0 = 0
|
||||
If (^^PCI0.LPCB.EC0.ECOK) {
|
||||
^^PCI0.LPCB.EC0.FDAT = 1
|
||||
^^PCI0.LPCB.EC0.FCMD = 0xCA
|
||||
Local0 = ^^PCI0.LPCB.EC0.FBUF
|
||||
^^PCI0.LPCB.EC0.FCMD = 0
|
||||
}
|
||||
Return (Local0)
|
||||
}
|
||||
|
||||
// Set KB Led
|
||||
Method (SKBL, 1, Serialized) {
|
||||
// Set Keyboard Brightness
|
||||
Method (SKBB, 1, Serialized) {
|
||||
If (^^PCI0.LPCB.EC0.ECOK) {
|
||||
^^PCI0.LPCB.EC0.FDAT = 0
|
||||
^^PCI0.LPCB.EC0.FBUF = Arg0
|
||||
^^PCI0.LPCB.EC0.FCMD = 0xCA
|
||||
}
|
||||
}
|
||||
#endif // CONFIG(EC_SYSTEM76_EC_COLOR_KEYBOARD)
|
||||
|
||||
// Get Keyboard Color
|
||||
Method (GKBC, 0, Serialized) {
|
||||
Local0 = 0
|
||||
If (^^PCI0.LPCB.EC0.ECOK) {
|
||||
^^PCI0.LPCB.EC0.FDAT = 4
|
||||
^^PCI0.LPCB.EC0.FCMD = 0xCA
|
||||
Local0 = ^^PCI0.LPCB.EC0.FBUF
|
||||
Local0 |= (^^PCI0.LPCB.EC0.FBF1) << 16
|
||||
Local0 |= (^^PCI0.LPCB.EC0.FBF2) << 8
|
||||
}
|
||||
Return (Local0)
|
||||
}
|
||||
|
||||
// Set Keyboard Color
|
||||
Method (SKBC, 1, Serialized) {
|
||||
If (^^PCI0.LPCB.EC0.ECOK) {
|
||||
^^PCI0.LPCB.EC0.FDAT = 3
|
||||
^^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
|
||||
}
|
||||
}
|
||||
|
||||
// Fan names
|
||||
Method (NFAN, 0, Serialized) {
|
||||
|
@ -7,7 +7,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_I2C_HID
|
||||
select DRIVERS_I2C_TAS5825M
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select EC_SYSTEM76_EC_OLED
|
||||
select HAVE_ACPI_RESUME
|
||||
|
@ -25,7 +25,6 @@ config BOARD_SYSTEM76_ADL_COMMON
|
||||
|
||||
config BOARD_SYSTEM76_DARP8
|
||||
select BOARD_SYSTEM76_ADL_COMMON
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
|
||||
config BOARD_SYSTEM76_GALP6
|
||||
select BOARD_SYSTEM76_ADL_COMMON
|
||||
@ -33,7 +32,6 @@ config BOARD_SYSTEM76_GALP6
|
||||
config BOARD_SYSTEM76_GAZE17_3050
|
||||
select BOARD_SYSTEM76_ADL_COMMON
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select PCIEXP_HOTPLUG
|
||||
select PCIEXP_HOTPLUG_PREFETCH_MEM_BELOW_4G
|
||||
@ -42,7 +40,6 @@ config BOARD_SYSTEM76_GAZE17_3050
|
||||
config BOARD_SYSTEM76_GAZE17_3060_B
|
||||
select BOARD_SYSTEM76_ADL_COMMON
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select MAINBOARD_USES_IFD_GBE_REGION
|
||||
select PCIEXP_HOTPLUG
|
||||
@ -57,13 +54,11 @@ config BOARD_SYSTEM76_ORYP9
|
||||
select BOARD_SYSTEM76_ADL_COMMON
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_I2C_TAS5825M
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
|
||||
config BOARD_SYSTEM76_ORYP10
|
||||
select BOARD_SYSTEM76_ADL_COMMON
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
|
||||
if BOARD_SYSTEM76_ADL_COMMON
|
||||
|
@ -6,7 +6,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_I2C_HID
|
||||
select DRIVERS_I2C_TAS5825M
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select HAVE_ACPI_RESUME
|
||||
select HAVE_ACPI_TABLES
|
||||
|
@ -5,7 +5,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select BOARD_ROMSIZE_KB_16384
|
||||
select DRIVERS_I2C_HID
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD if BOARD_SYSTEM76_DARP6
|
||||
select HAVE_ACPI_RESUME
|
||||
select HAVE_ACPI_TABLES
|
||||
select HAVE_CMOS_DEFAULT
|
||||
|
@ -6,7 +6,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_I2C_HID
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select HAVE_ACPI_RESUME
|
||||
select HAVE_ACPI_TABLES
|
||||
|
@ -7,7 +7,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_I2C_HID
|
||||
select DRIVERS_I2C_TAS5825M
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select HAVE_ACPI_RESUME
|
||||
select HAVE_ACPI_TABLES
|
||||
|
@ -7,7 +7,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_I2C_HID
|
||||
select DRIVERS_I2C_TAS5825M
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select HAVE_ACPI_RESUME
|
||||
select HAVE_ACPI_TABLES
|
||||
|
@ -26,7 +26,6 @@ config BOARD_SYSTEM76_ADDW3
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_GFX_NVIDIA_DYNAMIC_BOOST
|
||||
select DRIVERS_INTEL_DTBT
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select MAINBOARD_USES_IFD_GBE_REGION
|
||||
select PCIEXP_HOTPLUG
|
||||
@ -37,14 +36,12 @@ config BOARD_SYSTEM76_BONW15
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_GFX_NVIDIA_DYNAMIC_BOOST
|
||||
select DRIVERS_INTEL_DTBT
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select PCIEXP_HOTPLUG
|
||||
select SOC_INTEL_ALDERLAKE_PCH_S
|
||||
|
||||
config BOARD_SYSTEM76_DARP9
|
||||
select BOARD_SYSTEM76_RPL_COMMON
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select PCIEXP_HOTPLUG
|
||||
select SOC_INTEL_ALDERLAKE_PCH_P
|
||||
|
||||
@ -57,7 +54,6 @@ config BOARD_SYSTEM76_GAZE18
|
||||
select BOARD_SYSTEM76_RPL_COMMON
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_GFX_NVIDIA_DYNAMIC_BOOST
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select SOC_INTEL_ALDERLAKE_PCH_P
|
||||
select TPM_RDRESP_NEED_DELAY
|
||||
@ -73,7 +69,6 @@ config BOARD_SYSTEM76_ORYP11
|
||||
select BOARD_SYSTEM76_RPL_COMMON
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_GFX_NVIDIA_DYNAMIC_BOOST
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select SOC_INTEL_ALDERLAKE_PCH_P
|
||||
select SOC_INTEL_ENABLE_USB4_PCIE_RESOURCES
|
||||
@ -83,7 +78,6 @@ config BOARD_SYSTEM76_SERW13
|
||||
select DRIVERS_GFX_NVIDIA
|
||||
select DRIVERS_GFX_NVIDIA_DYNAMIC_BOOST
|
||||
select DRIVERS_INTEL_DTBT
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select PCIEXP_HOTPLUG
|
||||
select SOC_INTEL_ALDERLAKE_PCH_S
|
||||
|
@ -7,7 +7,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_I2C_HID
|
||||
select DRIVERS_I2C_TAS5825M if BOARD_SYSTEM76_ORYP8
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD
|
||||
select EC_SYSTEM76_EC_DGPU
|
||||
select EC_SYSTEM76_EC_LOCKDOWN
|
||||
select HAVE_ACPI_RESUME
|
||||
|
@ -8,7 +8,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select DRIVERS_INTEL_PMC
|
||||
select DRIVERS_INTEL_USB4_RETIMER
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD if BOARD_SYSTEM76_DARP7
|
||||
select EC_SYSTEM76_EC_DGPU if BOARD_SYSTEM76_GALP5
|
||||
select EC_SYSTEM76_EC_LOCKDOWN
|
||||
select HAVE_ACPI_TABLES
|
||||
|
@ -5,7 +5,6 @@ config BOARD_SPECIFIC_OPTIONS
|
||||
select BOARD_ROMSIZE_KB_16384
|
||||
select DRIVERS_I2C_HID
|
||||
select EC_SYSTEM76_EC
|
||||
select EC_SYSTEM76_EC_COLOR_KEYBOARD if BOARD_SYSTEM76_DARP5
|
||||
select HAVE_ACPI_RESUME
|
||||
select HAVE_ACPI_TABLES
|
||||
select HAVE_CMOS_DEFAULT
|
||||
|
Reference in New Issue
Block a user