summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Rhodes <sean@starlabs.systems>2024-02-19 14:11:11 +0000
committerFelix Held <felix-coreboot@felixheld.de>2024-06-07 18:31:06 +0000
commitee49088cc3b5396ba526e2980e2d73ea5f49a22e (patch)
treeb376b144c74878e3cc74f050279f1f57efc181d0
parentea96ed3c7218c66a0d3c6fcdf363a6a1f483fffb (diff)
mb/starlabs/starbook/cml: Switch to the merlin EC
Change-Id: I27062c38c10df1d03f563b2f5391f79a3b6ee4fe Signed-off-by: Sean Rhodes <sean@starlabs.systems> Reviewed-on: https://review.coreboot.org/c/coreboot/+/81411 Reviewed-by: Matt DeVillier <matt.devillier@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r--src/ec/starlabs/merlin/variants/cml/ecdefs.h28
-rw-r--r--src/ec/starlabs/merlin/variants/cml/emem.asl169
-rw-r--r--src/ec/starlabs/merlin/variants/cml/events.asl140
-rw-r--r--src/mainboard/starlabs/starbook/Kconfig2
4 files changed, 2 insertions, 337 deletions
diff --git a/src/ec/starlabs/merlin/variants/cml/ecdefs.h b/src/ec/starlabs/merlin/variants/cml/ecdefs.h
deleted file mode 100644
index 0a2654bf8f..0000000000
--- a/src/ec/starlabs/merlin/variants/cml/ecdefs.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-
-#include <assert.h>
-#include <stdint.h>
-
-/*
- * EC communication interface for ITE Embedded Controller
- */
-
-#ifndef _EC_STARLABS_CML_EC_DEFS_H
-#define _EC_STARLABS_CML_EC_DEFS_H
-
-/* IT8987 chip ID byte values */
-#define ITE_CHIPID_VAL 0x8987
-
-/* EC RAM offsets */
-#define ECRAM_KBL_TIMEOUT 0x07
-#define ECRAM_FN_CTRL_REVERSE 0x08
-#define ECRAM_FAN_MODE 0x09
-#define ECRAM_MAX_CHARGE 0x1a
-#define ECRAM_TRACKPAD_STATE 0x14
-#define ECRAM_KBL_STATE 0x18
-#define ECRAM_KBL_BRIGHTNESS 0x19
-#define ECRAM_FN_LOCK_STATE 0x2c
-#define ECRAM_FAST_CHARGE dead_code_t(uint8_t)
-#define ECRAM_MIRROR_FLAG 0x04
-
-#endif
diff --git a/src/ec/starlabs/merlin/variants/cml/emem.asl b/src/ec/starlabs/merlin/variants/cml/emem.asl
deleted file mode 100644
index 995949a099..0000000000
--- a/src/ec/starlabs/merlin/variants/cml/emem.asl
+++ /dev/null
@@ -1,169 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-
-OperationRegion (ECF2, EmbeddedControl, 0x00, 0x100)
-Field (ECF2, ByteAcc, Lock, Preserve)
-{
- Offset(0x00),
- ECMV, 8, // Major Version Number
- ECSV, 8, // Minor Version Number
- KBVS, 8, // Keyboard Controller Version
- ECTV, 8, // Test Version Number
- FRMF, 8, // Force Mirror Flag
- TXEL, 8, // TXE Lock
- SSIT, 8, // Show Setup Items
- KLTE, 8, // Keyboard Backlight Timeout
- FCLA, 8, // Fn Ctrl Reverse
- FANM, 8, // Fan Mode
-
- Offset(0x0a),
- P0MV, 8, // PD Port 0 Major Version
- P0SV, 8, // PD Port 0 Minor Version
- P1MV, 8, // PD Port 1 Major Version
- P1SV, 8, // PD Port 1 Minor Version
-
- Offset(0x10),
- PWCT, 8, // Power Control
- CDEV, 8, // Control Device
- OSFG, 8, // OS Flag
-
- Offset(0x14),
- TPLE, 8, // Trackpad State
- AFG3, 8, // After G3
- CLTP, 8, // Close Trackpad
- WKOL, 8, // Wake on Lid
- KLSE, 8, // Keyboard Backlight State
- KLBE, 8, // Keyboard Backlight Brightness
-
- Offset(0x1a),
- BFCP, 8, // Battery Full Charge Percentage
-
- Offset(0x1c),
- WIFI, 8, // WiFi Enable
-
- Offset(0x22),
- ECT0, 8, // EC Build Time 0
- ECT1, 8, // EC Build Time 1
- ECT2, 8, // EC Build Time 2
- ECT3, 8, // EC Build Time 3
- ECT4, 8, // EC Build Time 4
- ECT5, 8, // EC Build Time 5
- ECT6, 8, // EC Build Time 6
- ECT7, 8, // EC Build Time 7
- ECT8, 8, // EC Build Time 8
- ECT9, 8, // EC Build Time 9
- FLKE, 8, // Function Lock State
- MICF, 8, // Mic Flag
- MUTF, 8, // Mute Flag
- BC12, 8, // BC12 Flag
-
- Offset(0x30),
- STEF, 8, // Sensor T Error F
- ECD0, 8, // EC Build Date 0
- ECD1, 8, // EC Build Date 1
- ECD2, 8, // EC Build Date 2
- ECD3, 8, // EC Build Date 3
- ECD4, 8, // EC Build Date 4
- ECD5, 8, // EC Build Date 5
- ECD6, 8, // EC Build Date 6
- ECD7, 8, // EC Build Date 7
- ECD8, 8, // EC Build Date 8
- ECD9, 8, // EC Build Date 9
-
- Offset(0x4c),
- PJN0, 8, // Project Name 0
- PJN1, 8, // Project Name 1
- PJN2, 8, // Project Name 2
- PJN3, 8, // Project Name 3
-
- Offset(0x62),
- TSE2, 8, // Sensor 2 Temperature
- SENF, 8, // Sensor F
- TSHT, 8, // Thermal Sensor High Trip Point
- TSLT, 8, // Thermal Sensor Low Trip Point
- THER, 8, // Thermal Source
-
- Offset(0x70),
- CPUT, 8, // PECI CPU Temperature
- PMXT, 8, // PLMX Temperature
- CHAR, 8, // Charger Temperature
-
- Offset(0x7f),
- LSTE, 1, // Lid Status
- , 7, // Reserved
-
- Offset(0x80),
- ECPS, 8, // AC & Battery status
- B1MN, 8, // Battery Model Number Code
- B1SN, 16, // Battery Serial Number
- B1DC, 16, // Battery Design Capacity
- B1DV, 16, // Battery Design Voltage
- B1FC, 16, // Battery Last Full Charge Capacity
- B1TP, 16, // Battery Trip Point
- B1ST, 8, // Battery State
- B1PR, 16, // Battery Present Rate
- B1RC, 16, // Battery Remaining Capacity
- B1PV, 16, // Battery Present Voltage
- BPRP, 8, // Battery Remaining percentage
- BT1A, 8, // Bt1 ASOC
- BT1T, 16, // Bt1 Temperature
- BT1C, 8, // Bt1 Control
-
- Offset(0x9d),
- OPWE, 8, // OPM write to EC flag for UCSI
-
- Offset(0xa0),
- UCSV, 16, // UCSI DS Version
- UCSD, 16, // UCSI DS Reserved
- CCI0, 8, // UCSI DS CCI 0
- CCI1, 8, // UCSI DS CCI 1
- CCI2, 8, // UCSI DS CCI 2
- CCI3, 8, // UCSI DS CCI 3
- CTL0, 8, // UCSI DS Control 0
- CTL1, 8, // UCSI DS Control 0
- CTL2, 8, // UCSI DS Control 0
- CTL3, 8, // UCSI DS Control 0
- CTL4, 8, // UCSI DS Control 0
- CTL5, 8, // UCSI DS Control 0
- CTL6, 8, // UCSI DS Control 0
- CTL7, 8, // UCSI DS Control 0
-
- Offset(0xb0),
- MGI0, 8, // UCSI DS MGI 0
- MGI1, 8, // UCSI DS MGI 1
- MGI2, 8, // UCSI DS MGI 2
- MGI3, 8, // UCSI DS MGI 3
- MGI4, 8, // UCSI DS MGI 4
- MGI5, 8, // UCSI DS MGI 5
- MGI6, 8, // UCSI DS MGI 6
- MGI7, 8, // UCSI DS MGI 7
- MGI8, 8, // UCSI DS MGI 8
- MGI9, 8, // UCSI DS MGI 9
- MGIA, 8, // UCSI DS MGI A
- MGIB, 8, // UCSI DS MGI B
- MGIC, 8, // UCSI DS MGI C
- MGID, 8, // UCSI DS MGI D
- MGIE, 8, // UCSI DS MGI E
- MGIF, 8, // UCSI DS MGI F
-
- Offset(0xc0),
- MGO0, 8, // UCSI DS MGO 0
- MGO1, 8, // UCSI DS MGO 1
- MGO2, 8, // UCSI DS MGO 2
- MGO3, 8, // UCSI DS MGO 3
- MGO4, 8, // UCSI DS MGO 4
- MGO5, 8, // UCSI DS MGO 5
- MGO6, 8, // UCSI DS MGO 6
- MGO7, 8, // UCSI DS MGO 7
- MGO8, 8, // UCSI DS MGO 8
- MGO9, 8, // UCSI DS MGO 9
- MGOA, 8, // UCSI DS MGO A
- MGOB, 8, // UCSI DS MGO B
- MGOC, 8, // UCSI DS MGO C
- MGOD, 8, // UCSI DS MGO D
- MGOE, 8, // UCSI DS MGO E
- MGOF, 8, // UCSI DS MGO F
-
- Offset(0xe6),
- ECWD, 16, // EC Wakeup Delay
- ECWE, 8, // EC Wakeup Enable
-}
diff --git a/src/ec/starlabs/merlin/variants/cml/events.asl b/src/ec/starlabs/merlin/variants/cml/events.asl
deleted file mode 100644
index 00a2ca6c16..0000000000
--- a/src/ec/starlabs/merlin/variants/cml/events.asl
+++ /dev/null
@@ -1,140 +0,0 @@
-/* SPDX-License-Identifier: GPL-2.0-only */
-
-Method (_Q0D, 0, NotSerialized) // Event: Lid Opened
-{
- \LIDS = LSTE
- Notify (LID0, 0x80)
-}
-
-Method (_Q0C, 0, NotSerialized) // Event: Lid Closed
-{
- \LIDS = LSTE
- Notify (LID0, 0x80)
-}
-
-Method (_QA0, 0, NotSerialized) // Event: AC Power Connected
-{
- Notify (BAT0, 0x81)
- Notify (ADP1, 0x80)
-}
-
-Method (_Q0B, 0, NotSerialized) // Event: AC Power Disconnected
-{
- Notify (BAT0, 0x81)
- Notify (BAT0, 0x80)
-}
-
-Method (_Q06, 0, NotSerialized) // Event: Backlight Brightness Down
-{
- ^^^^HIDD.HPEM (20)
-}
-
-Method (_Q07, 0, NotSerialized) // Event: Backlight Brightness Up
-{
- ^^^^HIDD.HPEM (19)
-}
-
-Method (_Q08, 0, NotSerialized) // Event: Function Lock
-{
- Printf ("EC: Function Lock")
-}
-
-Method (_Q04, 0, NotSerialized) // Event: Trackpad Lock
-{
- Printf ("EC: Trackpad Lock")
-}
-
-Method (_Q11, 0, NotSerialized) // Event: Keyboard Backlight Brightness
-{
- Printf ("EC: Keyboard Brightness")
-}
-
-Method (_Q99, 0, NotSerialized) // Event: Airplane Mode
-{
- ^^^^HIDD.HPEM (8)
-}
-
-Method (_QD5, 0, NotSerialized) // Event: 10 Second Power Button Pressed
-{
- Notify (HIDD, 0xCE)
-}
-
-Method (_QD6, 0, NotSerialized) // Event: 10 Second Power Button Released
-{
- Notify (HIDD, 0xCF)
-}
-
-Method (_Q22, 0, NotSerialized) // Event: CHARGER_T
-{
- Printf ("EC: CHARGER_T")
-}
-
-Method (_Q40, 0, NotSerialized) // Event: AC and DC Power
-{
- SMB2 = 0xC6
-}
-
-Method (_Q41, 0, NotSerialized) // Event: Battery Charge between 0% and 20%
-{
- SMB2 = 0xC7
-}
-
-Method (_Q42, 0, NotSerialized) // Event: Battery Charge between 20% and 60%
-{
- SMB2 = 0xC8
-}
-
-Method (_Q43, 0, NotSerialized) // Event: Battery Charge between 60% and 100%
-{
- SMB2 = 0xC9
-}
-
-Method (_Q44, 0, NotSerialized) // Event: AC Power Only
-{
- SMB2 = 0xCA
-}
-
-Method (_Q80, 0, NotSerialized) // Event: Volume Up
-{
- Printf ("EC: VOLUME_UP")
-}
-
-Method (_Q81, 0, NotSerialized) // Event: Volume Down
-{
- Printf ("EC: VOLUME_DOWN")
-}
-
-Method (_Q54, 0, NotSerialized) // Event: Power Button Press
-{
- Printf ("EC: PWRBTN")
-}
-
-Method (_QF0, 0, NotSerialized) // Event: Temperature Report
-{
- Printf ("EC: Temperature Report")
-}
-
-Method (_QF1, 0, NotSerialized) // Event: Temperature Trigger
-{
- // Notify (SEN3, 0x90)
-}
-
-/*
- * The below events are unique to this platform.
- */
-
-
-Method (_Q02, 0, NotSerialized) // Event: APP
-{
- Printf ("EC: APP")
-}
-
-Method (_Q82, 0, NotSerialized) // Event: MIC
-{
- Printf ("EC: MIC")
-}
-
-Method (_Q83, 0, NotSerialized) // Event: MUTE
-{
- Printf ("EC: MUTE")
-}
diff --git a/src/mainboard/starlabs/starbook/Kconfig b/src/mainboard/starlabs/starbook/Kconfig
index a5ba419134..e8172c94b8 100644
--- a/src/mainboard/starlabs/starbook/Kconfig
+++ b/src/mainboard/starlabs/starbook/Kconfig
@@ -30,7 +30,9 @@ config BOARD_STARLABS_LABTOP_KBL
config BOARD_STARLABS_LABTOP_CML
select BOARD_ROMSIZE_KB_16384
select BOARD_STARLABS_STARBOOK_SERIES
+ select EC_STARLABS_KBL_LEVELS
select EC_STARLABS_MAX_CHARGE
+ select EC_STARLABS_MERLIN
select EC_STARLABS_NEED_ITE_BIN
select HAVE_INTEL_PTT
select HAVE_SPD_IN_CBFS