summaryrefslogtreecommitdiff
path: root/docs/contributing
diff options
context:
space:
mode:
authorhathach <[email protected]>2023-06-01 13:28:28 +0700
committerhathach <[email protected]>2023-06-01 13:28:28 +0700
commitaf59864ab51d43b0308df617097949b399c5d112 (patch)
treefe07568ebc4c0a3ce9acdecad249c5208498445c /docs/contributing
parent412b557a080526fbfe7b42dd8aa07468c16413cc (diff)
parent77714e02caa6b873a78737385e603cdae1f9f109 (diff)
Merge branch 'master' into feature/STM32G0
Diffstat (limited to 'docs/contributing')
-rw-r--r--docs/contributing/porting.rst4
1 files changed, 2 insertions, 2 deletions
diff --git a/docs/contributing/porting.rst b/docs/contributing/porting.rst
index 710af51c3..f81d98782 100644
--- a/docs/contributing/porting.rst
+++ b/docs/contributing/porting.rst
@@ -62,9 +62,9 @@ Feel free to skip this until you want to verify your demo code is running. To im
OS Abstraction Layer (OSAL)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The OS Abstraction Layer is responsible for providing basic data structures for TinyUSB that may allow for concurrency when used with an RTOS. Without an RTOS it simply handles concurrency issues between the main code and interrupts.
+The OS Abstraction Layer is responsible for providing basic data structures for TinyUSB that may allow for concurrency when used with an RTOS. Without an RTOS it simply handles concurrency issues between the main code and interrupts. The code is almost entirely agnostic of MCU and lives in ``src/osal``.
-The code is almost entirely agnostic of MCU and lives in ``src/osal``.
+In RTOS configurations, tud_task()/tuh_task() blocks behind a synchronization structure when the event queue is empty, so that the scheduler may give the CPU to a different task. To take advantage of the library's capability to yield the CPU when there are no actionable USB device events, ensure that the `CFG_TUSB_OS` symbol is defined, e.g `OPT_OS_FREERTOS` enables the FreeRTOS scheduler to schedule other threads than that which calls `tud_task()/tuh_task()`.
Device API
^^^^^^^^^^