zephyr/subsys
Bjarki Arge Andreasen 5c24c79a90 modem: pipe: simplify synchronization
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>
2024-06-13 16:43:49 -04:00
..
bindesc build: namespace the generated headers with zephyr/ 2024-05-28 22:03:55 +02:00
bluetooth Bluetooth: Controller: Fix regression due to use of TMR_START_DELAY_US 2024-06-13 12:01:22 -04:00
canbus canbus: isotp: use proper CAN ID masks 2024-04-24 09:53:06 +02:00
console
debug subsys/debug: relocate symtab Kconfig 2024-06-04 22:36:51 -04:00
demand_paging kernel: mm: rename z_page_frame_* to k_mem_page_frame_* 2024-06-12 21:13:26 -04:00
dfu dfu/mcuboot: Use flash_area_flatten instead of flash_area_erase 2024-06-04 08:00:46 +02:00
disk drivers: disk: add DISK_IOCTL_CTRL_DEINIT command to supported IOCTLs 2024-06-07 18:16:01 +01:00
dsp
emul treewide: drivers: espi: Adjust terms per eSPI specification 1.5 2024-05-02 13:56:46 -04:00
fb
fs fs: nvs: Add CRC-32 to protect data 2024-06-13 05:51:56 -04:00
input input: utils: rename the input dump callback 2024-04-01 11:05:02 +01:00
ipc ipc: fix return code of icbmsg backend send operation. 2024-06-10 15:00:01 +03:00
jwt jwt: add missing PSA_WANT dependencies to RSA signature 2024-06-13 09:22:20 +02:00
llext llext: refact: move ELF loading and linking to separate files 2024-06-07 18:07:53 +01:00
logging logging: allow OOT backend to enable LOG_BACKEND_FORMAT_TIMESTAMP 2024-06-12 12:49:32 -04:00
lorawan lorawan: services: frag decoder: add lowmem implementation 2024-06-11 16:09:23 +03:00
mem_mgmt
mgmt mgmt: hawkbit: some Kconfig improvements 2024-06-07 18:06:45 +01:00
modbus modbus: Respect CONFIG_UART_USE_RUNTIME_CONFIGURE 2024-04-10 10:01:55 +02:00
modem modem: pipe: simplify synchronization 2024-06-13 16:43:49 -04:00
net net: dhcpv4: Reset Renewal/Rebinding times on ACK 2024-06-13 17:50:52 +02:00
pm pm: Add a symbol for device power state constraints 2024-06-07 19:06:23 -04:00
portability subsys/portability/CMSIS: Do not redefine TRUE & FALSE 2024-06-11 16:29:22 +03:00
random random: enable AES support CTR_DRBG CSPRNG when it relies on Mbed TLS 2024-06-03 16:13:05 -04:00
retention
rtio sys: Add a lockfree mpsc and spsc queues 2024-06-06 00:42:29 -07:00
sd sd: sd_ops: fix DISK_IOCTL_CTRL_SYNC return code 2024-05-29 07:31:39 +02:00
sensing sensing: Fix build warning on invalid array index 2024-06-07 09:52:09 +02:00
settings storage/settings: Replace flash_area_erase with flash_area_flatten 2024-06-04 08:00:46 +02:00
shell shell: device_service: print DT metadata 2024-06-12 18:49:54 +02:00
sip_svc linker: subsys: Use Z_LINK_ITERABLE_SUBALIGN 2024-04-20 13:45:25 -04:00
stats
storage storage/stream_flash: Support for devices without explicit erase 2024-06-04 08:00:46 +02:00
task_wdt task_wdt: Feed hardware watchdog only when its started 2024-06-06 00:40:53 -07:00
testsuite testsuite: coverage: Add CONFIG_ZTEST_COVERAGE_RESET_BEFORE_TESTS 2024-06-12 14:32:04 +03:00
timing
tracing tracing: change controlling expressions in while to Boolean 2024-06-11 20:02:40 +03:00
usb usb: device_next: rename the rate properties to use the correct unit 2024-06-13 08:03:49 -04:00
zbus zbus: vded: msg_sub: Improve channel ref copy 2024-06-09 09:07:21 -05:00
CMakeLists.txt
Kconfig