diff options
author | Alec Berg <alecaberg@chromium.org> | 2015-09-17 11:42:43 -0700 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2015-09-17 19:00:53 -0700 |
commit | 5717b3150c8a8d43e07ce2dc8065c3515d3651f7 (patch) | |
tree | b908d7a6bed31be5e5c06661bab52356b4d2b5da /common/motion_sense.c | |
parent | e686e95e9e2f50380862a9f95c0bba02d237b646 (diff) | |
download | chrome-ec-5717b3150c8a8d43e07ce2dc8065c3515d3651f7.tar.gz |
motion: add config option to use the old accelerometer ref frame
Add config option to use the old accelerometer reference frame,
which is used on samus and products using 3.14 or earlier kernel.
This fixes samus so that the lid angle calculation is correct
again.
This also moves the accel_orientation structure out of the board
directory and into common code, since it purely is a function of
the reference frame being used.
BUG=chrome-os-partner:43494
BRANCH=none
TEST=test on samus, verify lid angle calculation is correct once
again. also, enable the motion_lid test and verify that it passes.
Change-Id: I948a74a71964b54c68be66e828a030ddd0418947
Signed-off-by: Alec Berg <alecaberg@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/300510
Tested-by: Aseda Aboagye <aaboagye@chromium.org>
Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
Diffstat (limited to 'common/motion_sense.c')
-rw-r--r-- | common/motion_sense.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/common/motion_sense.c b/common/motion_sense.c index bea0bef1cf..9add2d1712 100644 --- a/common/motion_sense.c +++ b/common/motion_sense.c @@ -41,6 +41,10 @@ static int accel_disp; #define SENSOR_ACTIVE(_sensor) (sensor_active & (_sensor)->active_mask) +#if defined(CONFIG_LPC) || defined(TEST_MOTION_LID) +#define UPDATE_HOST_MEM_MAP +#endif + /* * Mutex to protect sensor values between host command task and * motion sense task: @@ -388,7 +392,7 @@ static inline void set_present(uint8_t *lpc_status) *lpc_status |= EC_MEMMAP_ACC_STATUS_PRESENCE_BIT; } -#ifdef CONFIG_LPC +#ifdef UPDATE_HOST_MEM_MAP /* Update/Write LPC data */ static inline void update_sense_data(uint8_t *lpc_status, uint16_t *lpc_data, int *psample_id) @@ -526,7 +530,7 @@ void motion_sense_task(void) #ifdef CONFIG_ACCEL_FIFO timestamp_t ts_last_int; #endif -#ifdef CONFIG_LPC +#ifdef UPDATE_HOST_MEM_MAP int sample_id = 0; uint8_t *lpc_status; uint16_t *lpc_data; @@ -591,7 +595,7 @@ void motion_sense_task(void) CPRINTF("]\n"); } #endif -#ifdef CONFIG_LPC +#ifdef UPDATE_HOST_MEM_MAP update_sense_data(lpc_status, lpc_data, &sample_id); #endif |