nuttx/drivers/input
chao an 87f134cfaa sched/sleep: replace all Signal-based sleep implement to Scheduled sleep
Nuttx currently has 2 types of sleep interfaces:

1. Signal-scheduled sleep: nxsig_sleep() / nxsig_usleep() / nxsig_nanosleep()
Weaknesses:
a. Signal-dependent: The signal-scheduled sleep method is bound to the signal framework, while some driver sleep operations do not depend on signals.
b. Timespec conversion: Signal-scheduled sleep involves timespec conversion, which has a significant impact on performance.

2. Busy sleep: up_mdelay() / up_udelay()
Weaknesses:
a. Does not actively trigger scheduling, occupy the CPU loading.

3. New interfaces: Scheduled sleep: nxsched_sleep() / nxsched_usleep() / nxsched_msleep() / nxsched_ticksleep()
Strengths:
a. Does not depend on the signal framework.
b. Tick-based, without additional computational overhead.

Currently, the Nuttx driver framework extensively uses nxsig_* interfaces. However, the driver does not need to rely on signals or timespec conversion.
Therefore, a new set of APIs is added to reduce dependencies on other modules.

(This PR also aims to make signals optional, further reducing the code size of Nuttx.)

Signed-off-by: chao an <anchao.archer@bytedance.com>
2025-10-17 14:05:02 +08:00
..
ads7843e.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
ads7843e.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
ajoystick.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
aw86225.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
aw86225_internal.h arch_atomic: only support atomic_xx and atomic64_xx function 2024-12-04 14:03:14 +01:00
aw86225_reg.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
button_lower.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
button_upper.c spinlock: Better recursive spinlock implementation. 2025-06-25 22:13:00 +08:00
CMakeLists.txt drivers/input: Create Single Button Multi Actions 2025-07-15 18:39:59 -03:00
cypress_mbr3108.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
djoystick.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
ff_dummy.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
ff_upper.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
ft5x06.c drivers/input/ft5x06: Adapt to touchscreen frame 2025-07-07 08:46:58 -03:00
ft5x06.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
goldfish_events.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
gt9xx.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
Kconfig drivers/input: Fix Kconfig style 2025-09-17 08:54:58 +08:00
keyboard_upper.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
Make.defs drivers/input: Create Single Button Multi Actions 2025-07-15 18:39:59 -03:00
max11802.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
max11802.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
mouse_upper.c nuttx: add open and close callback functions for the mouse. 2025-01-17 09:19:18 +08:00
mxt.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
mxt.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
nunchuck.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
sbutton.c drivers/input: Create Single Button Multi Actions 2025-07-15 18:39:59 -03:00
spq10kbd.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
stmpe811.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
stmpe811_adc.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
stmpe811_base.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
stmpe811_gpio.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
stmpe811_temp.c drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
stmpe811_tsc.c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
touchscreen_upper.c driver/touchscreen: Add support for mirror/swap 2025-07-07 08:46:58 -03:00
tsc2007.c sched/sleep: replace all Signal-based sleep implement to Scheduled sleep 2025-10-17 14:05:02 +08:00
tsc2007.h drivers: migrate to SPDX identifier 2024-11-06 18:02:25 +08:00
uinput.c driver/touchscreen: Add support for mirror/swap 2025-07-07 08:46:58 -03:00