diff options
author | Li Feng <li1.feng@intel.com> | 2022-09-28 17:29:40 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-10-08 23:01:30 +0000 |
commit | 3e3536a3fbe3a6054c3970255a849c99cd170584 (patch) | |
tree | 52b99929d5e06939e1fce9c8563b4a2377b613ad | |
parent | 976218ebde5629f229d71b66eaff19bfa95088c8 (diff) | |
download | chrome-ec-stabilize-15174.B-main.tar.gz |
adl_ish_lite: add ISH firmware for ADLstabilize-15174.B-main
ISH and UFS are in same PCI slot function 0. To enable UFS, ISH has to
be enabled too.
This ISH firmware is a lite version; only provides power management.
If no activities, ISH will be in deep sleep all the time.
BUG=b:234136500
BRANCH=none
TEST=make BOARD=adl_ish_lite
TEST=on ADLP RVP
Flash ISH enabled Coreboot (ISH BUP and loader are stitched to CB)
Copy ec.bin to DUT's file system: /lib/firmware/intel;
Rename it as adlrvp_ish.bin and "sync".
Reboot system, host dmesg shows ISH main firmware is loaded.
And ISH console shows ISH is in deep sleep.
dmesg: "ish-loader {C804D06A-55BD-4EA7-ADED-1E31228C76DC}:
ISH firmware intel/adlrvp_ish.bin loaded"
EC console: "[15.038421 Disabling console in deep sleep] "
Signed-off-by: Li Feng <li1.feng@intel.com>
Signed-off-by: Guangfu Hu <guangfu.hu@intel.com>
Change-Id: I93877d7f50af985a63895bbb7785ca67d0ec0747
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3925007
Reviewed-by: Vijay P Hiremath <vijay.p.hiremath@intel.com>
Reviewed-by: Keith Short <keithshort@chromium.org>
l--------- | board/adl_ish_lite | 1 | ||||
-rw-r--r-- | board/tglrvp_ish/board.c | 6 | ||||
-rw-r--r-- | board/tglrvp_ish/board.h | 17 | ||||
-rw-r--r-- | board/tglrvp_ish/ec.tasklist | 9 |
4 files changed, 23 insertions, 10 deletions
diff --git a/board/adl_ish_lite b/board/adl_ish_lite new file mode 120000 index 0000000000..e43fd15937 --- /dev/null +++ b/board/adl_ish_lite @@ -0,0 +1 @@ +tglrvp_ish
\ No newline at end of file diff --git a/board/tglrvp_ish/board.c b/board/tglrvp_ish/board.c index f05d7d337c..ff0e93ebfb 100644 --- a/board/tglrvp_ish/board.c +++ b/board/tglrvp_ish/board.c @@ -18,6 +18,11 @@ #include "gpio_list.h" /* has to be included last */ /* I2C port map */ +#ifdef BOARD_ADL_ISH_LITE +const struct i2c_port_t i2c_ports[] = {}; +const unsigned int i2c_ports_used = ARRAY_SIZE(i2c_ports); + +#elif defined(BOARD_TGLRVP_ISH) const struct i2c_port_t i2c_ports[] = { { .name = "sensor", .port = I2C_PORT_SENSOR, .kbps = 1000 }, }; @@ -56,6 +61,7 @@ struct motion_sensor_t motion_sensors[] = { }, }; const unsigned int motion_sensor_count = ARRAY_SIZE(motion_sensors); +#endif /* BOARD_TGLRVP_ISH */ int chipset_in_state(int state_mask) { diff --git a/board/tglrvp_ish/board.h b/board/tglrvp_ish/board.h index 702494cdcc..3912e8803a 100644 --- a/board/tglrvp_ish/board.h +++ b/board/tglrvp_ish/board.h @@ -9,12 +9,6 @@ #define __CROS_EC_BOARD_H /* - * Allow dangerous commands. - * TODO: Don't use this on production systems. - */ -#define CONFIG_SYSTEM_UNLOCKED - -/* * By default, enable all console messages except HC, ACPI and event * The sensor stack is generating a lot of activity. */ @@ -25,26 +19,29 @@ #undef CONFIG_DEBUG_ASSERT #define CONFIG_CLOCK_CRYSTAL #define CONFIG_ISH_UART_0 + /* EC */ #define CONFIG_FLASH_SIZE_BYTES 0x80000 #define CONFIG_FPU #define CONFIG_I2C #define CONFIG_I2C_CONTROLLER -#define CONFIG_ACCELGYRO_LSM6DSM /* For LSM6DS3 */ -#define CONFIG_ACCEL_FORCE_MODE_MASK BIT(BASE_ACCEL) - /* Host command over HECI */ #define CONFIG_HOST_INTERFACE_HECI +#ifdef BOARD_TGLRVP_ISH +#define CONFIG_ACCELGYRO_LSM6DSM /* For LSM6DS3 */ +#define CONFIG_ACCEL_FORCE_MODE_MASK BIT(BASE_ACCEL) + /* I2C ports */ #define I2C_PORT_SENSOR ISH_I2C1 -#define CONFIG_CMD_I2C_XFER /* EC Console Commands */ #define CONFIG_CMD_ACCELS #define CONFIG_CMD_ACCEL_INFO #define CONFIG_CMD_TIMERINFO +#define CONFIG_CMD_I2C_XFER +#endif /* BOARD_TGLRVP_ISH */ /* Undefined features */ #undef CONFIG_CMD_HASH diff --git a/board/tglrvp_ish/ec.tasklist b/board/tglrvp_ish/ec.tasklist index de7d256324..aa98f37479 100644 --- a/board/tglrvp_ish/ec.tasklist +++ b/board/tglrvp_ish/ec.tasklist @@ -7,6 +7,14 @@ * See CONFIG_TASK_LIST in config.h for details. */ +#ifdef BOARD_ADL_ISH_LITE +#define CONFIG_TASK_LIST \ + TASK_ALWAYS(HOOKS, hook_task, NULL, HUGE_TASK_STACK_SIZE, 0) \ + TASK_NOTEST(CHIPSET, board_idle_task, NULL, IDLE_TASK_STACK_SIZE, 0) \ + TASK_ALWAYS(CONSOLE, console_task, NULL, LARGER_TASK_STACK_SIZE, 0) \ + TASK_ALWAYS(HECI_RX, heci_rx_task, NULL, HUGE_TASK_STACK_SIZE, 0) \ + TASK_ALWAYS(IPC_MNG, ipc_mng_task, NULL, LARGER_TASK_STACK_SIZE, 0) +#else #define CONFIG_TASK_LIST \ TASK_ALWAYS(HOOKS, hook_task, NULL, HUGE_TASK_STACK_SIZE, 0) \ TASK_ALWAYS(MOTIONSENSE, motion_sense_task, NULL, LARGER_TASK_STACK_SIZE, 0) \ @@ -15,3 +23,4 @@ TASK_ALWAYS(CONSOLE, console_task, NULL, LARGER_TASK_STACK_SIZE, 0) \ TASK_ALWAYS(HECI_RX, heci_rx_task, NULL, HUGE_TASK_STACK_SIZE, 0) \ TASK_ALWAYS(IPC_MNG, ipc_mng_task, NULL, LARGER_TASK_STACK_SIZE, 0) +#endif |