aboutsummaryrefslogtreecommitdiff
path: root/docs/pages
diff options
context:
space:
mode:
authorDániel Buga <[email protected]>2025-03-31 13:16:11 +0200
committerDániel Buga <[email protected]>2025-03-31 13:16:11 +0200
commitaa5ecbdb56aa5c3cf35d5c0512c0a0e2a3739cee (patch)
tree727ff8b001ad16420e45b54f451e1fa065241c78 /docs/pages
parent154870b2c3475ecef9ef801035dce57ec3a6634a (diff)
Remove task arena FAQ
Diffstat (limited to 'docs/pages')
-rw-r--r--docs/pages/faq.adoc23
1 files changed, 0 insertions, 23 deletions
diff --git a/docs/pages/faq.adoc b/docs/pages/faq.adoc
index f95ccf48b..88e0c3330 100644
--- a/docs/pages/faq.adoc
+++ b/docs/pages/faq.adoc
@@ -169,29 +169,6 @@ Note that the git revision should match any other embassy patches or git depende
169 ** make `main` spawn everything, then enable link:https://docs.rs/cortex-m/latest/cortex_m/peripheral/struct.SCB.html#method.set_sleeponexit[SCB.SLEEPONEXIT] and `loop { cortex_m::asm::wfi() }` 169 ** make `main` spawn everything, then enable link:https://docs.rs/cortex-m/latest/cortex_m/peripheral/struct.SCB.html#method.set_sleeponexit[SCB.SLEEPONEXIT] and `loop { cortex_m::asm::wfi() }`
170 ** *Note:* If you need 2 priority levels, using 2 interrupt executors is better than 1 thread executor + 1 interrupt executor. 170 ** *Note:* If you need 2 priority levels, using 2 interrupt executors is better than 1 thread executor + 1 interrupt executor.
171 171
172== How do I set up the task arenas on stable?
173
174When you aren't using the `nightly` feature of `embassy-executor`, the executor uses a bump allocator, which may require configuration.
175
176Something like this error will occur at **compile time** if the task arena is *too large* for the target's RAM:
177
178[source,plain]
179----
180rust-lld: error: section '.bss' will not fit in region 'RAM': overflowed by _ bytes
181rust-lld: error: section '.uninit' will not fit in region 'RAM': overflowed by _ bytes
182----
183
184And this message will appear at **runtime** if the task arena is *too small* for the tasks running:
185
186[source,plain]
187----
188ERROR panicked at 'embassy-executor: task arena is full. You must increase the arena size, see the documentation for details: https://docs.embassy.dev/embassy-executor/'
189----
190
191NOTE: If all tasks are spawned at startup, this panic will occur immediately.
192
193Check out link:https://docs.embassy.dev/embassy-executor/git/cortex-m/index.html#task-arena[Task Arena Documentation] for more details.
194
195== Can I use manual ISRs alongside Embassy? 172== Can I use manual ISRs alongside Embassy?
196 173
197Yes! This can be useful if you need to respond to an event as fast as possible, and the latency caused by the usual “ISR, wake, return from ISR, context switch to woken task” flow is too much for your application. Simply define a `#[interrupt] fn INTERRUPT_NAME() {}` handler as you would link:https://docs.rust-embedded.org/book/start/interrupts.html[in any other embedded rust project]. 174Yes! This can be useful if you need to respond to an event as fast as possible, and the latency caused by the usual “ISR, wake, return from ISR, context switch to woken task” flow is too much for your application. Simply define a `#[interrupt] fn INTERRUPT_NAME() {}` handler as you would link:https://docs.rust-embedded.org/book/start/interrupts.html[in any other embedded rust project].