5c24c79a90
The design of the pipe is overly complicated compared to the in-tree and planned future use of the pipe module. The pipe is currently designed to protect against multiple threads calling any API simultaineously. This is not neccesary as only one thread ever calls open/close/transmit/receive at once, while the notification APIs are potentially called by a different thread. This commit removes the synchronization of calls to the open/ close/receive/transmit APIs. It also uses a k_event for thread safe event and state handling instead of a k_mutex and k_condvar. The callback is proteced by a k_sem as it modified using the attach/release APIs, which can be called simultaneously to a thread invoking the callback. Signed-off-by: Bjarki Arge Andreasen <bjarki@arge-andreasen.me> |
||
---|---|---|
.. | ||
backends | ||
CMakeLists.txt | ||
Kconfig | ||
modem_chat.c | ||
modem_cmux.c | ||
modem_pipe.c | ||
modem_pipelink.c | ||
modem_ppp.c | ||
modem_stats.c | ||
modem_ubx.c |