diff options
author | Wai-Hong Tam <waihong@google.com> | 2020-07-24 16:30:50 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-07-31 23:41:45 +0000 |
commit | eaffee8a2567be9be30a2290456dc3d4c0f39147 (patch) | |
tree | ea16e3e70d124b37fd56fe7d12d0e06f5bca0cde /board/trogdor | |
parent | 325c12bf03488c5e3466aa4e7f134c8bcb1e2c3e (diff) | |
download | chrome-ec-eaffee8a2567be9be30a2290456dc3d4c0f39147.tar.gz |
trogdor: Increase stack sizes
Some tasks don't have enough stacks and may result stack overflow.
Increase the stack sizes. Use the stack analyzer to check the deepest
call flow. The annotations are WIP (still has a lot missing). The
result is used as reference only.
The PD and KEYSCAN tasks are assigned more than the analyer result.
Their sizes come from other boards' values.
BRANCH=None
BUG=b:162039557
TEST=Checked lazor RW, using "make analyzestack":
Task: HOOKS, Max size: 948 (724 + 224), Allocated size: 1056
Task: USB_CHG_P0, Max size: 756 (532 + 224), Allocated size: 800
Task: USB_CHG_P1, Max size: 756 (532 + 224), Allocated size: 800
Task: CHIPSET, Max size: 940 (716 + 224), Allocated size: 1056
Task: CHARGER, Max size: 948 (724 + 224), Allocated size: 1056
Task: MOTIONSENSE, Max size: 812 (588 + 224), Allocated size: 928
Task: HOSTCMD, Max size: 980 (756 + 224), Allocated size: 1056
Task: CONSOLE, Max size: 972 (748 + 224), Allocated size: 1056
Task: KEYSCAN, Max size: 588 (364 + 224), Allocated size: 928
Task: PD_C0, Max size: 844 (620 + 224), Allocated size: 1056
Task: PD_C1, Max size: 844 (620 + 224), Allocated size: 1056
Task: PD_INT_C0, Max size: 1020 (796 + 224), Allocated size: 1056
Task: PD_INT_C1, Max size: 1020 (796 + 224), Allocated size: 1056
Change-Id: I6d95f27db7ce1c50ba9bf9c262e7c7e2d352a940
Signed-off-by: Wai-Hong Tam <waihong@google.com>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2318374
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Commit-Queue: Douglas Anderson <dianders@chromium.org>
Diffstat (limited to 'board/trogdor')
-rw-r--r-- | board/trogdor/ec.tasklist | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/board/trogdor/ec.tasklist b/board/trogdor/ec.tasklist index 56cea01e74..eb14fab204 100644 --- a/board/trogdor/ec.tasklist +++ b/board/trogdor/ec.tasklist @@ -8,16 +8,16 @@ */ #define CONFIG_TASK_LIST \ - TASK_ALWAYS(HOOKS, hook_task, NULL, LARGER_TASK_STACK_SIZE) \ - TASK_ALWAYS(USB_CHG_P0, usb_charger_task, NULL, TASK_STACK_SIZE) \ - TASK_ALWAYS(USB_CHG_P1, usb_charger_task, NULL, TASK_STACK_SIZE) \ - TASK_NOTEST(CHIPSET, chipset_task, NULL, LARGER_TASK_STACK_SIZE) \ - TASK_ALWAYS(CHARGER, charger_task, NULL, LARGER_TASK_STACK_SIZE) \ + TASK_ALWAYS(HOOKS, hook_task, NULL, ULTRA_TASK_STACK_SIZE) \ + TASK_ALWAYS(USB_CHG_P0, usb_charger_task, NULL, LARGER_TASK_STACK_SIZE) \ + TASK_ALWAYS(USB_CHG_P1, usb_charger_task, NULL, LARGER_TASK_STACK_SIZE) \ + TASK_NOTEST(CHIPSET, chipset_task, NULL, ULTRA_TASK_STACK_SIZE) \ + TASK_ALWAYS(CHARGER, charger_task, NULL, ULTRA_TASK_STACK_SIZE) \ TASK_ALWAYS(MOTIONSENSE, motion_sense_task, NULL, VENTI_TASK_STACK_SIZE) \ - TASK_ALWAYS(HOSTCMD, host_command_task, NULL, VENTI_TASK_STACK_SIZE) \ - TASK_ALWAYS(CONSOLE, console_task, NULL, LARGER_TASK_STACK_SIZE) \ - TASK_NOTEST(KEYSCAN, keyboard_scan_task, NULL, TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_C0, pd_task, NULL, LARGER_TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_C1, pd_task, NULL, LARGER_TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_INT_C0, pd_interrupt_handler_task, 0, TASK_STACK_SIZE) \ - TASK_ALWAYS(PD_INT_C1, pd_interrupt_handler_task, 1, TASK_STACK_SIZE) + TASK_ALWAYS(HOSTCMD, host_command_task, NULL, ULTRA_TASK_STACK_SIZE) \ + TASK_ALWAYS(CONSOLE, console_task, NULL, ULTRA_TASK_STACK_SIZE) \ + TASK_NOTEST(KEYSCAN, keyboard_scan_task, NULL, VENTI_TASK_STACK_SIZE) \ + TASK_ALWAYS(PD_C0, pd_task, NULL, ULTRA_TASK_STACK_SIZE) \ + TASK_ALWAYS(PD_C1, pd_task, NULL, ULTRA_TASK_STACK_SIZE) \ + TASK_ALWAYS(PD_INT_C0, pd_interrupt_handler_task, 0, ULTRA_TASK_STACK_SIZE) \ + TASK_ALWAYS(PD_INT_C1, pd_interrupt_handler_task, 1, ULTRA_TASK_STACK_SIZE) |