Prashanth Swaminathan | acbd070 | 2021-01-22 11:58:15 -0800 | [diff] [blame] | 1 | .. _module-pw_sync_baremetal: |
| 2 | |
Ted Pudlik | 1b69a4e | 2021-11-13 00:30:12 +0000 | [diff] [blame] | 3 | ================= |
Prashanth Swaminathan | acbd070 | 2021-01-22 11:58:15 -0800 | [diff] [blame] | 4 | pw_sync_baremetal |
Ted Pudlik | 1b69a4e | 2021-11-13 00:30:12 +0000 | [diff] [blame] | 5 | ================= |
Prashanth Swaminathan | acbd070 | 2021-01-22 11:58:15 -0800 | [diff] [blame] | 6 | This is a set of backends for pw_sync that works on baremetal targets. It is not |
Prashanth Swaminathan | f605f2d | 2021-05-17 11:49:38 -0700 | [diff] [blame] | 7 | ready for use, and is under construction. |
| 8 | |
| 9 | .. note:: |
| 10 | All constructs in this baremetal backend do not support hardware multi-threading |
| 11 | (SMP, SMT, etc). |
| 12 | |
| 13 | .. warning:: |
| 14 | It does not perform interrupt masking or disable global interrupts. This is not |
| 15 | safe to use yet! |
| 16 | |
| 17 | ------------------------------------- |
| 18 | pw_sync_baremetal's InterruptSpinLock |
| 19 | ------------------------------------- |
| 20 | The interrupt spin-lock implementation makes a single attempt to acquire the lock |
| 21 | and asserts if it is unavailable. It does not perform interrupt masking or disable global |
| 22 | interrupts. |
| 23 | |
| 24 | ------------------------- |
| 25 | pw_sync_baremetal's Mutex |
| 26 | ------------------------- |
| 27 | The mutex implementation makes a single attempt to acquire the lock and asserts if |
| 28 | it is unavailable. |