1#
2# Copyright (C) 2016 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16
17#variant makefile for nucleo
18
19
20ifneq ($(PLATFORM),stm32f4xx)
21        $(error "NUCLEO variant cannot be build on a platform that is not stm32f411")
22endif
23
24FLAGS += -DPLATFORM_HW_TYPE=0x4E75   #'Nu' ->nucleo
25FLAGS += -DDEBUG_SWD
26
27#board configuration shims
28SRCS_os += src/variant/$(VARIANT)/i2c.c
29SRCS_os += src/variant/$(VARIANT)/spi.c
30
31#keys
32
33#drivers
34# AMS ALS/prox
35SRCS_os += src/drivers/ams_tmd2772/ams_tmd2772.c
36
37# ROHM ALS/prox
38SRCS_os += src/drivers/rohm_rpr0521/rohm_rpr0521.c
39
40# Fusion algorithm
41SRCS_os += src/algos/fusion.c src/algos/mat.c src/algos/quat.c src/algos/vec.c
42
43# BMI160 accel and gyro, BMM150 mag drivers
44FLAGS += -DUSE_BMM150
45SRCS_os += src/drivers/bosch_bmi160/bosch_bmi160.c \
46	src/drivers/bosch_bmi160/bosch_bmm150_slave.c \
47	src/algos/mag_cal.c \
48	src/algos/time_sync.c
49
50# Orientation sensor driver
51SRCS_os += src/drivers/orientation/orientation.c
52
53# Window orientation sensor driver
54SRCS_os += src/drivers/window_orientation/window_orientation.c
55
56# Bosch BMP280 Barometer/Temperature
57SRCS_os += src/drivers/bosch_bmp280/bosch_bmp280.c
58
59# Hall effect sensor driver
60SRCS_os += src/drivers/hall/hall.c
61
62# Camera Vsync driver
63SRCS_os += src/drivers/vsync/vsync.c
64
65# Tilt detection
66SRCS_os += src/drivers/tilt_detection/tilt_detection.c
67
68#linker script
69LKR_os = misc/variant/common/stm32f411.os.lkr
70LKR_bl = misc/variant/common/stm32f411.bl.lkr
71OSFLAGS_os += -Wl,-T $(LKR_os)
72OSFLAGS_bl += -Wl,-T $(LKR_bl)
73DEPS += $(LKR_os) $(LKR_bl)
74DEPS += $(LKR)
75