summaryrefslogtreecommitdiff
path: root/test/mutex.tasklist
diff options
context:
space:
mode:
authorRandall Spangler <rspangler@chromium.org>2012-09-07 13:48:23 -0700
committerGerrit <chrome-bot@google.com>2012-09-09 11:00:34 -0700
commita3d62a3700206b9cd34e129f6a04967bed5e46e4 (patch)
tree7961d109a7bf74d000f283a678ed757b0bf0989b /test/mutex.tasklist
parent22d13781dcd006f9305956d33bf1ce1581454d2e (diff)
downloadchrome-ec-a3d62a3700206b9cd34e129f6a04967bed5e46e4.tar.gz
Switch to variable-size stacks
Increase stack size slightly for vboot hash task since the vboot SHA256 function allocates ~300 bytes of stack data. Reduce stack size for watchdog, power LED, and a few other tasks with simple call trees where we can be sure an error path isn't going to blow past the reduced stack. This frees up ~1KB of RAM on STM32. BUG=chrome-os-partner:13814 BRANCH=all TEST=boot system; shmem should show more unused RAM; taskinfo should show tasks still have unused stack Change-Id: I47d6b77564a0180d15d86667cc0566a8919b776e Signed-off-by: Randall Spangler <rspangler@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/32608 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Diffstat (limited to 'test/mutex.tasklist')
-rw-r--r--test/mutex.tasklist28
1 files changed, 19 insertions, 9 deletions
diff --git a/test/mutex.tasklist b/test/mutex.tasklist
index c617fc5387..44bfe8b664 100644
--- a/test/mutex.tasklist
+++ b/test/mutex.tasklist
@@ -1,16 +1,26 @@
+/* Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
/**
* List of enabled tasks in the priority order
*
* The first one has the lowest priority.
+ *
+ * For each task, use the macro TASK(n, r, d, s) where :
+ * 'n' in the name of the task
+ * 'r' in the main routine of the task
+ * 'd' in an opaque parameter passed to the routine at startup
+ * 's' is the stack size in bytes; must be a multiple of 8
*/
#define CONFIG_TASK_LIST \
- TASK(WATCHDOG, watchdog_task, NULL) \
- TASK(VBOOTHASH, vboot_hash_task, NULL) \
- TASK(HOSTCMD, host_command_task, NULL) \
- TASK(CONSOLE, console_task, NULL) \
- TASK(MTX3C, mutex_random_task, NULL) \
- TASK(MTX3B, mutex_random_task, NULL) \
- TASK(MTX3A, mutex_random_task, NULL) \
- TASK(MTX2, mutex_second_task, NULL) \
- TASK(MTX1, mutex_main_task, NULL)
+ TASK(WATCHDOG, watchdog_task, NULL, TASK_STACK_SIZE) \
+ TASK(VBOOTHASH, vboot_hash_task, NULL, TASK_STACK_SIZE) \
+ TASK(HOSTCMD, host_command_task, NULL, TASK_STACK_SIZE) \
+ TASK(CONSOLE, console_task, NULL, TASK_STACK_SIZE) \
+ TASK(MTX3C, mutex_random_task, NULL, TASK_STACK_SIZE) \
+ TASK(MTX3B, mutex_random_task, NULL, TASK_STACK_SIZE) \
+ TASK(MTX3A, mutex_random_task, NULL, TASK_STACK_SIZE) \
+ TASK(MTX2, mutex_second_task, NULL, TASK_STACK_SIZE) \
+ TASK(MTX1, mutex_main_task, NULL, TASK_STACK_SIZE)