Compare commits
2 Commits
rei/develo
...
reduce-ram
Author | SHA1 | Date |
---|---|---|
Jean-François Milants | f7e01c5143 | |
Jean-François Milants | a162ec67ce |
|
@ -809,7 +809,7 @@ add_definitions(-DOS_CPUTIME_FREQ)
|
|||
add_definitions(-DNRF52 -DNRF52832 -DNRF52832_XXAA -DNRF52_PAN_74 -DNRF52_PAN_64 -DNRF52_PAN_12 -DNRF52_PAN_58 -DNRF52_PAN_54 -DNRF52_PAN_31 -DNRF52_PAN_51 -DNRF52_PAN_36 -DNRF52_PAN_15 -DNRF52_PAN_20 -DNRF52_PAN_55 -DBOARD_PCA10040)
|
||||
add_definitions(-DFREERTOS)
|
||||
add_definitions(-D__STACK_SIZE=1024)
|
||||
add_definitions(-D__HEAP_SIZE=4096)
|
||||
add_definitions(-D__HEAP_SIZE=3072)
|
||||
|
||||
# NOTE : Add the following defines to enable debug mode of the NRF SDK:
|
||||
#add_definitions(-DDEBUG)
|
||||
|
|
|
@ -62,7 +62,7 @@
|
|||
#define configTICK_RATE_HZ 1024
|
||||
#define configMAX_PRIORITIES (3)
|
||||
#define configMINIMAL_STACK_SIZE (120)
|
||||
#define configTOTAL_HEAP_SIZE (1024 * 17)
|
||||
#define configTOTAL_HEAP_SIZE (1024 * 14)
|
||||
#define configMAX_TASK_NAME_LEN (4)
|
||||
#define configUSE_16_BIT_TICKS 0
|
||||
#define configIDLE_SHOULD_YIELD 1
|
||||
|
@ -95,7 +95,7 @@
|
|||
#define configUSE_TIMERS 1
|
||||
#define configTIMER_TASK_PRIORITY (0)
|
||||
#define configTIMER_QUEUE_LENGTH 32
|
||||
#define configTIMER_TASK_STACK_DEPTH (300)
|
||||
#define configTIMER_TASK_STACK_DEPTH (250)
|
||||
|
||||
/* Tickless Idle configuration. */
|
||||
#define configEXPECTED_IDLE_TIME_BEFORE_SLEEP 2
|
||||
|
|
|
@ -124,7 +124,7 @@ void DisplayApp::Start(System::BootErrors error) {
|
|||
LoadApp(Apps::Clock, DisplayApp::FullRefreshDirections::None);
|
||||
}
|
||||
|
||||
if (pdPASS != xTaskCreate(DisplayApp::Process, "displayapp", 800, this, 0, &taskHandle)) {
|
||||
if (pdPASS != xTaskCreate(DisplayApp::Process, "displayapp", 600, this, 0, &taskHandle)) {
|
||||
APP_ERROR_HANDLER(NRF_ERROR_NO_MEM);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -74,7 +74,7 @@ typedef int16_t lv_coord_t;
|
|||
#define LV_MEM_CUSTOM 0
|
||||
#if LV_MEM_CUSTOM == 0
|
||||
/* Size of the memory used by `lv_mem_alloc` in bytes (>= 2kB)*/
|
||||
#define LV_MEM_SIZE (14U * 1024U)
|
||||
#define LV_MEM_SIZE (8U * 1024U)
|
||||
|
||||
/* Complier prefix for a big array declaration */
|
||||
#define LV_MEM_ATTR
|
||||
|
|
|
@ -37,7 +37,7 @@ nimble_port_freertos_init(TaskFunction_t host_task_fn)
|
|||
* provided by NimBLE and in case of FreeRTOS it does not need to be wrapped
|
||||
* since it has compatible prototype.
|
||||
*/
|
||||
xTaskCreate(nimble_port_ll_task_func, "ll", configMINIMAL_STACK_SIZE + 200,
|
||||
xTaskCreate(nimble_port_ll_task_func, "ll", configMINIMAL_STACK_SIZE + 20,
|
||||
NULL, configMAX_PRIORITIES - 1, &ll_task_h);
|
||||
#endif
|
||||
|
||||
|
@ -46,6 +46,6 @@ nimble_port_freertos_init(TaskFunction_t host_task_fn)
|
|||
* have separate task for NimBLE host, but since something needs to handle
|
||||
* default queue it is just easier to make separate task which does this.
|
||||
*/
|
||||
xTaskCreate(host_task_fn, "ble", configMINIMAL_STACK_SIZE + 600,
|
||||
xTaskCreate(host_task_fn, "ble", configMINIMAL_STACK_SIZE + 210,
|
||||
NULL, tskIDLE_PRIORITY + 1, &host_task_h);
|
||||
}
|
||||
|
|
|
@ -2,6 +2,8 @@
|
|||
#include <FreeRTOS.h>
|
||||
#include <task.h>
|
||||
#include <nrf_log.h>
|
||||
#include <lvgl/lvgl.h>
|
||||
#include <malloc.h>
|
||||
|
||||
namespace Pinetime {
|
||||
namespace System {
|
||||
|
@ -32,6 +34,24 @@ namespace Pinetime {
|
|||
tasksStatus[i].pcTaskName,
|
||||
tasksStatus[i].usStackHighWaterMark * 4);
|
||||
}
|
||||
|
||||
lv_mem_monitor_t mon;
|
||||
lv_mem_monitor(&mon);
|
||||
NRF_LOG_INFO("#LVGL Memory#\n"
|
||||
" used# %d (%d%%) / free %d\n"
|
||||
" max used# %lu\n"
|
||||
" frag# %d%%\n"
|
||||
" free# %d",
|
||||
static_cast<int>(mon.total_size - mon.free_size),
|
||||
mon.used_pct,
|
||||
mon.free_size,
|
||||
mon.max_used,
|
||||
mon.frag_pct,
|
||||
static_cast<int>(mon.free_biggest_size));
|
||||
|
||||
auto m = mallinfo();
|
||||
NRF_LOG_INFO("heap : %d", m.uordblks);
|
||||
|
||||
lastTick = xTaskGetTickCount();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -115,7 +115,7 @@ SystemTask::SystemTask(Drivers::SpiMaster& spi,
|
|||
|
||||
void SystemTask::Start() {
|
||||
systemTasksMsgQueue = xQueueCreate(10, 1);
|
||||
if (pdPASS != xTaskCreate(SystemTask::Process, "MAIN", 350, this, 0, &taskHandle)) {
|
||||
if (pdPASS != xTaskCreate(SystemTask::Process, "MAIN", 300, this, 0, &taskHandle)) {
|
||||
APP_ERROR_HANDLER(NRF_ERROR_NO_MEM);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -147,7 +147,7 @@ namespace Pinetime {
|
|||
bool stepCounterMustBeReset = false;
|
||||
static constexpr TickType_t batteryMeasurementPeriod = pdMS_TO_TICKS(10 * 60 * 1000);
|
||||
|
||||
#if configUSE_TRACE_FACILITY == 1
|
||||
#if configUSE_TRACE_FACILITY == 1 && NRF_LOG_ENABLED == 1
|
||||
SystemMonitor<FreeRtosMonitor> monitor;
|
||||
#else
|
||||
SystemMonitor<DummyMonitor> monitor;
|
||||
|
|
Loading…
Reference in New Issue