nuttx/include/nuttx
ouyangxiangzhen 6f72f5481d sched/wqueue: Refactor delayed and periodical workqueue.
This commit refactors the logic of workqueue processing delayed and periodic work, and changes the timer to be set in `work_thread`. The improvements of this change are as follows:
- Fixed the memory reuse problem of the original periodic workqueue implementation.
- By removing the `wdog_s` structure in the `work_s` structure, the memory overhead of each `work_s` structure is reduced by about 30 bytes.
- Set the timer for each workqueue instead of each work, which improves system performance.
- Simplified the workqueue cancel logic.

Signed-off-by: ouyangxiangzhen <ouyangxiangzhen@xiaomi.com>
2025-05-07 02:02:10 +08:00
..
1wire
aie
analog drivers/analog/mcp47x6: Add support for MCP47X6 DAC series 2025-04-29 16:17:44 -03:00
audio nuttx/audio: add fake audio driver. 2024-12-20 11:47:08 -03:00
binfmt libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
can nuttx/can: Modify poll logic to bind can_reader_s and pollfd. 2025-02-12 10:28:21 -03:00
clk
contactless
coresight
crypto
dma
drivers bch: add BIOC_DISCARD ioctl that discards cached sector 2025-01-23 02:35:46 +08:00
eeprom
efuse
fs typo: fix incorrect doc 2025-03-12 10:36:30 -03:00
himem
hwspinlock
i2c
i3c
input nuttx: add open and close callback functions for the mouse. 2025-01-17 09:19:18 +08:00
ioexpander drivers/ioexpander/icjx: add option to set filters during initialization 2025-04-24 10:05:56 -03:00
lcd
leds
lib libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
math
mbox
mm Revert "mm_heap: double malloced memory default alignment (4 -> 8, 8 -> 16)" 2025-01-09 00:00:11 +08:00
modem
motor
mtd driver/mtd: ramtron multi-device spi bus support 2025-03-26 19:26:01 +08:00
net h7: eth: add checks for PHYID in stm32_phyinit 2025-02-12 15:00:19 -03:00
note
nx
pci
pinctrl
power
rc
regmap
reset drivers/reset: fix typo retrun -> return 2024-12-17 20:48:07 +08:00
rf
rmt
rpmsg rpmsg/rpmsg_virtio_lite: rename rpmsg_virtio to rpmsg_virtio_lite 2024-12-28 22:43:20 -03:00
rptun rptun_bmp: add remote_cpu to rptun_secure_init 2025-01-14 13:34:35 +08:00
segger
sensors sensors/nau7802: Add support for the NAU7802 2025-04-01 09:38:37 +08:00
serial serial: Add struct serial_icounter_s and CONFIG_SERIAL_TIOCGICOUNT 2025-02-14 18:24:47 +01:00
spi Add GD55 QSPI NOR Flash support 2025-01-17 09:07:22 +08:00
syslog
timers drivers/pwm: add PWMIOC_FAULTS_FETCH_AND_CLEAR ioctl for fault clears 2025-02-27 11:47:51 -03:00
usb driver/syslog: add cdcacm channel 2025-03-10 13:43:54 +08:00
usrsock
vhost
video drivers/video/fb.c: Add startup splashscreen option 2025-04-30 06:38:05 -03:00
virtio
wireless nuttx/wireless/ioctl: Common IOCTL API for RF Modulation Technologies. 2025-03-23 17:51:15 +08:00
.gitignore
addrenv.h modlib/gnu-elf.ld.in: fix regression with armv7a 2025-01-17 23:16:26 +08:00
allsyms.h
arch.h libc/stream: Support lowsyslog. 2025-04-02 12:01:46 +08:00
ascii.h
atexit.h
atomic.h include/nuttx/atomic.h: For each ATOMIC func, cast the parameters to (FAR intXX_t *) of correct size 2025-04-17 20:14:15 +08:00
bits.h
board.h
cache.h
can.h
cancelpt.h
circbuf.h lib/circbuf: add static initialize macro helper 2024-12-17 20:48:23 +08:00
clock.h nuttx/clock: make NSEC_PER_USEC and others long 2025-04-02 08:29:00 -03:00
compiler.h nuttx/compiler: replace AVR __flash qualifier with __memx for some chips 2025-04-27 13:07:45 +08:00
coredump.h coredump: fix issue that nvic region overlapped by board memory region 2025-01-24 09:15:56 +08:00
crc8.h
crc16.h libs/libc/crc16: Separate implementation of crc16xmodem from crc16 2025-04-10 16:47:28 +08:00
crc32.h
crc64.h
elf.h
environ.h
envpath.h
ethtool.h
event.h
fdcheck.h
fdt.h qemu/armv7a: register cfi flash 2025-02-11 17:23:44 +08:00
gdbstub.h gdbstub: change send buffer to const char 2025-01-20 20:07:13 +08:00
hashtable.h
idr.h
init.h
instrument.h
ipcc.h
irq.h sched/spin_lock: rename raw_spin_lock to spin_lock_notrace 2025-02-13 20:48:15 +08:00
kmalloc.h
kthread.h
lin.h
lirc.h
list.h
macro.h
memoryregion.h
mmcsd.h
module.h libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
mqueue.h
mutex.h sched/mutex: add ticked lock version for mutex/rmutex 2025-04-03 20:13:55 +08:00
notifier.h
nuttx.h macro/align: Fix ALIGN_UP and ALIGN_DOWN 2025-01-11 12:13:10 +08:00
page.h
panic_notifier.h
pgalloc.h
progmem.h
pthread.h
queue.h
random.h
reboot_notifier.h
rwsem.h
sched.h binfmt:use crt0 inside of starthook 2025-04-09 23:07:29 +08:00
sched_note.h
scsi.h
sdio.h
sdio_slave.h
semaphore.h libc/semaphore: Move fast mutex wait/post paths to libc 2025-04-01 20:37:23 +08:00
signal.h
spawn.h
spinlock.h sched/spin_lock: continue work to rename raw_spin* to spin_*_notrace 2025-02-27 06:11:58 +02:00
spinlock_type.h fix compile error 2025-01-08 09:28:58 +08:00
streams.h
symtab.h
tee.h
thermal.h drivers/thermal: Add support for passive trip point 2025-02-16 11:22:41 -03:00
tls.h sched/gettid: Move thread ID to TLS 2025-04-08 22:53:10 +08:00
trace.h
uorb.h sensors/mcp9600: Converted MCP9600 legacy driver to UORB driver as per suggestions on PR #15525. 2025-01-21 09:09:43 +08:00
userspace.h
vt100.h
wdog.h wqueue: improve the robustness of the work 2025-05-07 02:02:10 +08:00
wqueue.h sched/wqueue: Refactor delayed and periodical workqueue. 2025-05-07 02:02:10 +08:00
zoneinfo.h