diff options
-rw-r--r-- | board/meowth_fp/board.h | 4 | ||||
-rw-r--r-- | common/fpsensor.c | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/board/meowth_fp/board.h b/board/meowth_fp/board.h index 65327dbe90..33949cb61e 100644 --- a/board/meowth_fp/board.h +++ b/board/meowth_fp/board.h @@ -53,6 +53,10 @@ * (shared_mem_init done too late). */ #define CONFIG_MALLOC +/* Special memory regions to store large arrays */ +#define FP_FRAME_SECTION __SECTION(ahb4) +#define FP_TEMPLATE_SECTION __SECTION(ahb) + /* we are doing slow compute */ #undef CONFIG_WATCHDOG_PERIOD_MS #define CONFIG_WATCHDOG_PERIOD_MS 10000 diff --git a/common/fpsensor.c b/common/fpsensor.c index bf342f3cce..c465dd6963 100644 --- a/common/fpsensor.c +++ b/common/fpsensor.c @@ -10,6 +10,7 @@ #include "fpsensor.h" #include "gpio.h" #include "host_command.h" +#include "link_defs.h" #include "mkbp_event.h" #include "spi.h" #include "system.h" @@ -27,8 +28,13 @@ #define FP_SENSOR_RES_Y 0 #endif +/* if no special memory regions are defined, fallback on regular SRAM */ +#ifndef FP_FRAME_SECTION +#define FP_FRAME_SECTION +#endif + /* Last acquired frame */ -static uint8_t fp_buffer[FP_SENSOR_IMAGE_SIZE]; +static uint8_t fp_buffer[FP_SENSOR_IMAGE_SIZE] FP_FRAME_SECTION; #define CPRINTF(format, args...) cprintf(CC_FP, format, ## args) #define CPRINTS(format, args...) cprints(CC_FP, format, ## args) |