summaryrefslogtreecommitdiff
path: root/chip
diff options
context:
space:
mode:
authorBill Richardson <wfrichar@chromium.org>2012-10-01 14:29:15 -0700
committerGerrit <chrome-bot@google.com>2012-10-02 10:52:54 -0700
commitbc50e0cabbd241118cbab95b7f202ae90b193a11 (patch)
treeef7c3e78d8fd54c6b1f382e31a9ac566f28e1634 /chip
parent56ce828309b2c7a15d032bd47b3deac39c7715ab (diff)
downloadchrome-ec-bc50e0cabbd241118cbab95b7f202ae90b193a11.tar.gz
Enable FPU support for Link EC
With this CL, if CONFIG_FPU is defined (only for Link, ATM), the EC task switcher will enable CONTROL.FPCA and expect all stack contexts to include floating point state as well as normal state (an additional 18 words). To support this, we need to increase the allocated stack space for each task. The stack sizes are already chosen empirically, so I'm just rounding them up a bit. BUG=chrome-os-partner:14766 BRANCH=Link TEST=manual There should be no noticeable change. If you run the EC command "taskinfo" you'll see the increased size each thread's stack, but everything that was working before should continue to work just fine. The additional overhead required to load and store another 18 words on each context switch is not really measurable (I tried). Change-Id: Ibaca7d7a2565285f049fda6906f32761e83207af Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/34391 Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Diffstat (limited to 'chip')
-rw-r--r--chip/lm4/config.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/chip/lm4/config.h b/chip/lm4/config.h
index ccabe931cb..7a39262ba6 100644
--- a/chip/lm4/config.h
+++ b/chip/lm4/config.h
@@ -24,11 +24,13 @@
/* System stack size */
#define CONFIG_STACK_SIZE 4096
-/* Idle task stack size */
-#define IDLE_TASK_STACK_SIZE 320
+/* non-standard task stack sizes */
+#define IDLE_TASK_STACK_SIZE 384
+#define WATCHDOG_TASK_STACK_SIZE 256
+#define LARGER_TASK_STACK_SIZE 640
/* Default task stack size */
-#define TASK_STACK_SIZE 488
+#define TASK_STACK_SIZE 512
#define CONFIG_FLASH_BASE 0x00000000
#define CONFIG_FLASH_BANK_SIZE 0x00000800 /* protect bank size */