diff options
author | Michael5 Chen <michael5_chen1@pegatron.corp-partner.google.com> | 2020-12-28 15:05:19 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-12-29 08:23:57 +0000 |
commit | 5213877f265446c9cc7b3d0fed10b3a98ebf11d8 (patch) | |
tree | c3c7c01512a5e4acf6dc6fbdedd81bc702e56bb2 | |
parent | 154d1112d228a366d008e25aa78d71a71bab9028 (diff) | |
download | chrome-ec-5213877f265446c9cc7b3d0fed10b3a98ebf11d8.tar.gz |
hayato: Modify base rotation matrix.
Modify base rotation matrix depend on schematic.
BUG=b:176137993
BRANCH=none
TEST=manual
1. Using "ectool motionsense" check x/y/z value.
2. Using "ectool motionsense lid_angle" check angle.
Signed-off-by: Michael5 Chen <michael5_chen1@pegatron.corp-partner.google.com>
Change-Id: Ib21b6a5b10d247047ef65b78e9c5ea3d919963d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2604801
Reviewed-by: Ting Shen <phoenixshen@chromium.org>
-rw-r--r-- | board/asurada/board.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/board/asurada/board.c b/board/asurada/board.c index aa143ce995..1b9e99eeb9 100644 --- a/board/asurada/board.c +++ b/board/asurada/board.c @@ -709,6 +709,27 @@ static struct tcs3400_rgb_drv_data_t g_tcs3400_rgb_data = { }; #endif /* BOARD_ASURADA_REV0 */ +#ifdef BOARD_HAYATO +/* Matrix to rotate accelerometer into standard reference frame */ +/* for Hayato */ +static const mat33_fp_t base_standard_ref = { + {0, FLOAT_TO_FP(1), 0}, + {FLOAT_TO_FP(-1), 0 , 0}, + {0, 0, FLOAT_TO_FP(1)}, +}; + +static void update_rotation_matrix(void) +{ + if (board_get_version() >= 2) { + motion_sensors[BASE_ACCEL].rot_standard_ref = + &base_standard_ref; + motion_sensors[BASE_GYRO].rot_standard_ref = + &base_standard_ref; + } +} +DECLARE_HOOK(HOOK_INIT, update_rotation_matrix, HOOK_PRIO_INIT_ADC + 1); +#endif + struct motion_sensor_t motion_sensors[] = { /* * Note: bmi160: supports accelerometer and gyro sensor |