blob: 8276791401adb08eea81d9053d1386b208fb946b [file] [log] [blame]
Prashanth Swaminathanacbd0702021-01-22 11:58:15 -08001.. _module-pw_sync_baremetal:
2
Ted Pudlik1b69a4e2021-11-13 00:30:12 +00003=================
Prashanth Swaminathanacbd0702021-01-22 11:58:15 -08004pw_sync_baremetal
Ted Pudlik1b69a4e2021-11-13 00:30:12 +00005=================
Prashanth Swaminathanacbd0702021-01-22 11:58:15 -08006This is a set of backends for pw_sync that works on baremetal targets. It is not
Prashanth Swaminathanf605f2d2021-05-17 11:49:38 -07007ready 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-------------------------------------
18pw_sync_baremetal's InterruptSpinLock
19-------------------------------------
20The interrupt spin-lock implementation makes a single attempt to acquire the lock
21and asserts if it is unavailable. It does not perform interrupt masking or disable global
22interrupts.
23
24-------------------------
25pw_sync_baremetal's Mutex
26-------------------------
27The mutex implementation makes a single attempt to acquire the lock and asserts if
28it is unavailable.