summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjeffrey <jeffrey_lin@pegatron.corp-partner.google.com>2022-12-16 17:36:23 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-12-19 08:11:04 +0000
commit27e224f04d5f2b0be0ad234644374e370bb2ee49 (patch)
treead14216a5f2f5f710eeb76cab4e3c2365e337d7e
parent1210223f25f7146e446faee2c096b4e57f73877d (diff)
downloadchrome-ec-27e224f04d5f2b0be0ad234644374e370bb2ee49.tar.gz
tentacruel: Setting convertible device with default sensor.
1.The convertible device gyro sensor default is icm42607 2.The convertible device lid sensor default is lis2dw12. BUG=b:255501962 TEST=ectool motionsense info to check sensor are initial success. confirm device can switch between tablet mode and non-tablet mode. BRANCH=firmware-corsola-15194.B Change-Id: Idc322df784be9e0101d360752723d49c8a2a7420 Signed-off-by: jeffrey <jeffrey_lin@pegatron.corp-partner.google.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4113743 Reviewed-by: Ting Shen <phoenixshen@chromium.org> Code-Coverage: Zoss <zoss-cl-coverage@prod.google.com>
-rw-r--r--zephyr/program/corsola/tentacruel/src/sensor.c34
1 files changed, 22 insertions, 12 deletions
diff --git a/zephyr/program/corsola/tentacruel/src/sensor.c b/zephyr/program/corsola/tentacruel/src/sensor.c
index d0b89ac77a..232dd4f5e8 100644
--- a/zephyr/program/corsola/tentacruel/src/sensor.c
+++ b/zephyr/program/corsola/tentacruel/src/sensor.c
@@ -22,12 +22,17 @@ void base_sensor_interrupt(enum gpio_signal signal)
{
uint32_t val;
- cros_cbi_get_fw_config(BASE_SENSOR, &val);
- if (val == BASE_ICM42607) {
- icm42607_interrupt(signal);
- } else if (val == BASE_BMI323) {
- bmi3xx_interrupt(signal);
- } else if (val == BASE_NONE) {
+ cros_cbi_get_fw_config(FORM_FACTOR, &val);
+ if (val == CONVERTIBLE) {
+ cros_cbi_get_fw_config(BASE_SENSOR, &val);
+ if (val == BASE_BMI323) {
+ bmi3xx_interrupt(signal);
+ }
+ /* The convertible device gyro sensor default is icm42607 */
+ else {
+ icm42607_interrupt(signal);
+ }
+ } else {
base_is_none = true;
}
}
@@ -36,12 +41,17 @@ void lid_sensor_interrupt(enum gpio_signal signal)
{
uint32_t val;
- cros_cbi_get_fw_config(LID_SENSOR, &val);
- if (val == LID_LIS2DWLTR) {
- lis2dw12_interrupt(signal);
- } else if (val == LID_BMA422) {
- bma4xx_interrupt(signal);
- } else if (val == LID_NONE) {
+ cros_cbi_get_fw_config(FORM_FACTOR, &val);
+ if (val == CONVERTIBLE) {
+ cros_cbi_get_fw_config(LID_SENSOR, &val);
+ if (val == LID_BMA422) {
+ bma4xx_interrupt(signal);
+ }
+ /* The convertible device lid sensor default is lis2dw12 */
+ else {
+ lis2dw12_interrupt(signal);
+ }
+ } else {
lid_is_none = true;
}
}