firmware: Handle new mag_cal.c location and dependencies
The mag_cal.c file was moved and the Android.mk files were updated, but
the makefile fragments used for the GNU Make system were not updated.
Additionally, the mag_cal.c file now depends on the kasa.c math
functions and diversity_checker.c, so these files must also be
included.
Bug: 112656064
Test: local build test only
Change-Id: Ida6515ae2c37479889cb916399b1cf5a7d6ee8c5
diff --git a/firmware/argonkey_aux_variant_config.mk b/firmware/argonkey_aux_variant_config.mk
index e677395..6e244f6 100644
--- a/firmware/argonkey_aux_variant_config.mk
+++ b/firmware/argonkey_aux_variant_config.mk
@@ -54,25 +54,26 @@
device/google/contexthub/firmware/variant/$(my_variant)/inc \
# this is relative to NANOHUB_OS_PATH
-NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
- os/algos/calibration/accelerometer/accel_cal.c \
- os/algos/calibration/gyroscope/gyro_cal.c \
- os/algos/calibration/gyroscope/gyro_stillness_detect.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/calibration/common/diversity_checker.c \
- os/algos/calibration/over_temp/over_temp_cal.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c \
- os/algos/fusion.c \
- os/algos/time_sync.c \
- os/drivers/hall/hall.c \
- os/drivers/intersil_isl29034/isl29034.c \
- os/drivers/leds/leds_gpio.c \
- os/drivers/leds/leds_lp3943.c \
- os/drivers/orientation/orientation.c \
- os/drivers/st_hts221/hts221.c \
- os/drivers/st_lps22hb/lps22hb.c \
- os/drivers/st_lsm6dsm/st_lsm6dsm.c \
- os/drivers/tilt_detection/tilt_detection.c \
- os/drivers/window_orientation/window_orientation.c \
+NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
+ os/algos/calibration/accelerometer/accel_cal.c \
+ os/algos/calibration/gyroscope/gyro_cal.c \
+ os/algos/calibration/gyroscope/gyro_stillness_detect.c \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/calibration/over_temp/over_temp_cal.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c \
+ os/drivers/hall/hall.c \
+ os/drivers/intersil_isl29034/isl29034.c \
+ os/drivers/leds/leds_gpio.c \
+ os/drivers/leds/leds_lp3943.c \
+ os/drivers/orientation/orientation.c \
+ os/drivers/st_hts221/hts221.c \
+ os/drivers/st_lps22hb/lps22hb.c \
+ os/drivers/st_lsm6dsm/st_lsm6dsm.c \
+ os/drivers/tilt_detection/tilt_detection.c \
+ os/drivers/window_orientation/window_orientation.c \
diff --git a/firmware/lunchbox_aux_variant_config.mk b/firmware/lunchbox_aux_variant_config.mk
index e0228c9..b4e0285 100644
--- a/firmware/lunchbox_aux_variant_config.mk
+++ b/firmware/lunchbox_aux_variant_config.mk
@@ -59,29 +59,30 @@
#'Lu' -> lunchbox
NANO_VARIANT_CFLAGS_$(my_variant) += -DPLATFORM_HW_TYPE=0x4C75
-NANO_VARIANT_C_INCLUDES_$(my_variant) := \
- device/google/contexthub/firmware/variant/lunchbox/inc \
+NANO_VARIANT_C_INCLUDES_$(my_variant) := \
+ device/google/contexthub/firmware/variant/lunchbox/inc \
# this is relative to NANOHUB_OS_PATH
-NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
- os/algos/calibration/accelerometer/accel_cal.c \
- os/algos/calibration/gyroscope/gyro_cal.c \
- os/algos/calibration/gyroscope/gyro_stillness_detect.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/calibration/common/diversity_checker.c \
- os/algos/calibration/over_temp/over_temp_cal.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c \
- os/algos/fusion.c \
- os/algos/time_sync.c \
- os/drivers/ams_tmd2772/ams_tmd2772.c \
- os/drivers/bosch_bmi160/bosch_bmi160.c \
- os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
- os/drivers/bosch_bmp280/bosch_bmp280.c \
- os/drivers/hall/hall.c \
- os/drivers/orientation/orientation.c \
- os/drivers/rohm_rpr0521/rohm_rpr0521.c \
- os/drivers/tilt_detection/tilt_detection.c \
- os/drivers/vsync/vsync.c \
- os/drivers/window_orientation/window_orientation.c \
+NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
+ os/algos/calibration/accelerometer/accel_cal.c \
+ os/algos/calibration/gyroscope/gyro_cal.c \
+ os/algos/calibration/gyroscope/gyro_stillness_detect.c \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/calibration/over_temp/over_temp_cal.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c \
+ os/drivers/ams_tmd2772/ams_tmd2772.c \
+ os/drivers/bosch_bmi160/bosch_bmi160.c \
+ os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
+ os/drivers/bosch_bmp280/bosch_bmp280.c \
+ os/drivers/hall/hall.c \
+ os/drivers/orientation/orientation.c \
+ os/drivers/rohm_rpr0521/rohm_rpr0521.c \
+ os/drivers/tilt_detection/tilt_detection.c \
+ os/drivers/vsync/vsync.c \
+ os/drivers/window_orientation/window_orientation.c \
diff --git a/firmware/neonkey_aux_variant_config.mk b/firmware/neonkey_aux_variant_config.mk
index 6698c7c..d53ad8c 100644
--- a/firmware/neonkey_aux_variant_config.mk
+++ b/firmware/neonkey_aux_variant_config.mk
@@ -55,26 +55,27 @@
device/google/contexthub/firmware/variant/neonkey/inc \
# this is relative to NANOHUB_OS_PATH
-NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
- os/algos/calibration/accelerometer/accel_cal.c \
- os/algos/calibration/gyroscope/gyro_cal.c \
- os/algos/calibration/gyroscope/gyro_stillness_detect.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/calibration/common/diversity_checker.c \
- os/algos/calibration/over_temp/over_temp_cal.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c \
- os/algos/fusion.c \
- os/algos/time_sync.c \
- os/drivers/bosch_bmi160/bosch_bmi160.c \
- os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
- os/drivers/bosch_bmp280/bosch_bmp280.c \
- os/drivers/hall/hall.c \
- os/drivers/leds/leds_gpio.c \
- os/drivers/leds/leds_lp3943.c \
- os/drivers/orientation/orientation.c \
- os/drivers/rohm_rpr0521/rohm_rpr0521.c \
- os/drivers/si_si7034/si7034a10.c \
- os/drivers/tilt_detection/tilt_detection.c \
- os/drivers/window_orientation/window_orientation.c \
+NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
+ os/algos/calibration/accelerometer/accel_cal.c \
+ os/algos/calibration/gyroscope/gyro_cal.c \
+ os/algos/calibration/gyroscope/gyro_stillness_detect.c \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/calibration/over_temp/over_temp_cal.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c \
+ os/drivers/bosch_bmi160/bosch_bmi160.c \
+ os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
+ os/drivers/bosch_bmp280/bosch_bmp280.c \
+ os/drivers/hall/hall.c \
+ os/drivers/leds/leds_gpio.c \
+ os/drivers/leds/leds_lp3943.c \
+ os/drivers/orientation/orientation.c \
+ os/drivers/rohm_rpr0521/rohm_rpr0521.c \
+ os/drivers/si_si7034/si7034a10.c \
+ os/drivers/tilt_detection/tilt_detection.c \
+ os/drivers/window_orientation/window_orientation.c \
diff --git a/firmware/nucleo_aux_variant_config.mk b/firmware/nucleo_aux_variant_config.mk
index 06b01a5..c5b6d6b 100644
--- a/firmware/nucleo_aux_variant_config.mk
+++ b/firmware/nucleo_aux_variant_config.mk
@@ -55,25 +55,26 @@
device/google/contexthub/firmware/variant/nucleo/inc \
# this is relative to NANOHUB_OS_PATH
-NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
- os/algos/calibration/accelerometer/accel_cal.c \
- os/algos/calibration/gyroscope/gyro_cal.c \
- os/algos/calibration/gyroscope/gyro_stillness_detect.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/calibration/common/diversity_checker.c \
- os/algos/calibration/over_temp/over_temp_cal.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c \
- os/algos/fusion.c \
- os/algos/time_sync.c \
- os/drivers/ams_tmd2772/ams_tmd2772.c \
- os/drivers/bosch_bmi160/bosch_bmi160.c \
- os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
- os/drivers/bosch_bmp280/bosch_bmp280.c \
- os/drivers/hall/hall.c \
- os/drivers/orientation/orientation.c \
- os/drivers/rohm_rpr0521/rohm_rpr0521.c \
- os/drivers/tilt_detection/tilt_detection.c \
- os/drivers/vsync/vsync.c \
- os/drivers/window_orientation/window_orientation.c \
+NANO_VARIANT_OSCFG_SRC_FILES_$(my_variant) := \
+ os/algos/calibration/accelerometer/accel_cal.c \
+ os/algos/calibration/gyroscope/gyro_cal.c \
+ os/algos/calibration/gyroscope/gyro_stillness_detect.c \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/calibration/over_temp/over_temp_cal.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c \
+ os/drivers/ams_tmd2772/ams_tmd2772.c \
+ os/drivers/bosch_bmi160/bosch_bmi160.c \
+ os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
+ os/drivers/bosch_bmp280/bosch_bmp280.c \
+ os/drivers/hall/hall.c \
+ os/drivers/orientation/orientation.c \
+ os/drivers/rohm_rpr0521/rohm_rpr0521.c \
+ os/drivers/tilt_detection/tilt_detection.c \
+ os/drivers/vsync/vsync.c \
+ os/drivers/window_orientation/window_orientation.c \
diff --git a/firmware/variant/argonkey/argonkey.mk b/firmware/variant/argonkey/argonkey.mk
index 75dc5af..d6f2613 100644
--- a/firmware/variant/argonkey/argonkey.mk
+++ b/firmware/variant/argonkey/argonkey.mk
@@ -31,22 +31,23 @@
SRCS_os += $(VARIANT_PATH)/src/os/spi.c
#keys
-#drivers
-# Fusion algorithms
-SRCS_os += os/algos/fusion.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c
+SRCS_os += \
+ os/algos/calibration/accelerometer/accel_cal.c \
+ os/algos/calibration/gyroscope/gyro_cal.c \
+ os/algos/calibration/gyroscope/gyro_stillness_detect.c \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/calibration/over_temp/over_temp_cal.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c
+#drivers
# LSM6DSL accel+gyro with mag slave
-SRCS_os += os/drivers/st_lsm6dsm/st_lsm6dsm.c \
- os/algos/calibration/accelerometer/accel_cal.c \
- os/algos/calibration/gyroscope/gyro_cal.c \
- os/algos/calibration/gyroscope/gyro_stillness_detect.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/calibration/common/diversity_checker.c \
- os/algos/calibration/over_temp/over_temp_cal.c \
- os/algos/time_sync.c
+SRCS_os += os/drivers/st_lsm6dsm/st_lsm6dsm.c
# Orientation sensor driver
SRCS_os += os/drivers/orientation/orientation.c
diff --git a/firmware/variant/lunchbox/lunchbox.mk b/firmware/variant/lunchbox/lunchbox.mk
index 4b400eb..90ed90f 100644
--- a/firmware/variant/lunchbox/lunchbox.mk
+++ b/firmware/variant/lunchbox/lunchbox.mk
@@ -30,22 +30,25 @@
SRCS_os += $(VARIANT_PATH)/src/os/spi.c
#keys
+SRCS_os += \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c
+
#drivers
-# ROHM ALS/prox
-SRCS_os += os/drivers/rohm_rpr0521/rohm_rpr0521.c
-
-# Fusion algorithms
-SRCS_os += os/algos/fusion.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c
-
# BMI160 accel and gyro, BMM150 mag drivers
FLAGS += -DUSE_BMM150 -DMAG_SLAVE_PRESENT
-SRCS_os += os/drivers/bosch_bmi160/bosch_bmi160.c \
- os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/time_sync.c
+SRCS_os += \
+ os/drivers/bosch_bmi160/bosch_bmi160.c \
+ os/drivers/bosch_bmi160/bosch_bmm150_slave.c
+
+# ROHM ALS/prox
+SRCS_os += os/drivers/rohm_rpr0521/rohm_rpr0521.c
# Orientation sensor driver
SRCS_os += os/drivers/orientation/orientation.c
diff --git a/firmware/variant/neonkey/neonkey.mk b/firmware/variant/neonkey/neonkey.mk
index b762f92..217f8e6 100644
--- a/firmware/variant/neonkey/neonkey.mk
+++ b/firmware/variant/neonkey/neonkey.mk
@@ -32,7 +32,22 @@
SRCS_os += $(VARIANT_PATH)/src/os/led.c
#keys
+SRCS_os += \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c
+
#drivers
+# Bosch BMI160 accel and gyro, BMM150 mag drivers
+FLAGS += -DUSE_BMM150 -DMAG_SLAVE_PRESENT
+SRCS_os += \
+ os/drivers/bosch_bmi160/bosch_bmi160.c \
+ os/drivers/bosch_bmi160/bosch_bmm150_slave.c
# ROHM ALS/prox
SRCS_os += os/drivers/rohm_rpr0521/rohm_rpr0521.c
@@ -52,23 +67,10 @@
# Bosch BMP280 Barometer/Temperature
SRCS_os += os/drivers/bosch_bmp280/bosch_bmp280.c
-# Bosch BMI160 accel and gyro, BMM150 mag drivers
-FLAGS += -DUSE_BMM150 -DMAG_SLAVE_PRESENT
-SRCS_os += os/drivers/bosch_bmi160/bosch_bmi160.c \
- os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/time_sync.c
-
# Hall effect sensor driver
SRCS_os += os/drivers/hall/hall.c
# Tilt detection
SRCS_os += os/drivers/tilt_detection/tilt_detection.c
-# Fusion algorithm
-SRCS_os += os/algos/fusion.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c
-
$(info included NEONKEY variant)
diff --git a/firmware/variant/nucleo/nucleo.mk b/firmware/variant/nucleo/nucleo.mk
index 2e09dae..eddd644 100644
--- a/firmware/variant/nucleo/nucleo.mk
+++ b/firmware/variant/nucleo/nucleo.mk
@@ -29,29 +29,31 @@
#board configuration shims
SRCS_os += $(VARIANT_PATH)/src/os/i2c.c
SRCS_os += $(VARIANT_PATH)/src/os/spi.c
-
#keys
+SRCS_os += \
+ os/algos/calibration/magnetometer/mag_cal/mag_cal.c \
+ os/algos/calibration/diversity_checker/diversity_checker.c \
+ os/algos/common/math/kasa.c \
+ os/algos/common/math/mat.c \
+ os/algos/common/math/quat.c \
+ os/algos/common/math/vec.c \
+ os/algos/fusion.c \
+ os/algos/time_sync.c
+
#drivers
+# BMI160 accel and gyro, BMM150 mag drivers
+FLAGS += -DUSE_BMM150 -DMAG_SLAVE_PRESENT
+SRCS_os += \
+ os/drivers/bosch_bmi160/bosch_bmi160.c \
+ os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
+
# AMS ALS/prox
SRCS_os += os/drivers/ams_tmd2772/ams_tmd2772.c
# ROHM ALS/prox
SRCS_os += os/drivers/rohm_rpr0521/rohm_rpr0521.c
-# Fusion algorithm
-SRCS_os += os/algos/fusion.c \
- os/algos/common/math/mat.c \
- os/algos/common/math/quat.c \
- os/algos/common/math/vec.c
-
-# BMI160 accel and gyro, BMM150 mag drivers
-FLAGS += -DUSE_BMM150 -DMAG_SLAVE_PRESENT
-SRCS_os += os/drivers/bosch_bmi160/bosch_bmi160.c \
- os/drivers/bosch_bmi160/bosch_bmm150_slave.c \
- os/algos/calibration/magnetometer/mag_cal.c \
- os/algos/time_sync.c
-
# Orientation sensor driver
SRCS_os += os/drivers/orientation/orientation.c