walnux/include/nuttx
Zik Saleeba 835c535e18 drivers/ioexpander/aw9523b: New driver for AW9523B i/o expander
This is an I2C driver for the Awinic AW9523B I/O expander. As well
as the supporting usual digital I/Os, this device features the
ability to drive LEDs directly, and can control the drive current
to each LED individually. The driver was derived from the PCA9555
driver, provides all the standard interfaces of an i/o expander
driver. It also features support for the special features of the
AW9523B through pin direction IOEXPANDER_DIRECTION_OUT_LED and
IOEXPANDER_OPTION_NONGENERIC with AW9523B_OPTION_* options.

The driver has a number of configurable features including interrupt
handling and a shadow register mode based on the PCA9555 driver,
plus new LED/dimming support.

Testing was done using an ESP32S3 host and I2C connection to the
Adafruit AW9523 breakout board.

Signed-off-by: Zik Saleeba <zik@zikzak.net>
2025-08-29 09:10:50 -03:00
..
1wire include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
aie nuttx ai driver update 2024-10-17 22:35:40 +08:00
analog drivers/analog/ads7046: Add support for ADS7046 ADC 2025-08-22 00:29:55 +08:00
audio drivers/i2s/i2schar: Implement ioctl commands for i2schar 2025-08-27 11:07:05 +08:00
binfmt style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
can drivers/can: move CAN utils to CAN common files 2025-05-14 10:30:25 -03:00
clk include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
contactless include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
coresight style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
crypto include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
dma include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
drivers drivers/fs: Control the behavior of FTL by passing oflags during the open process. 2025-07-16 14:11:41 +08:00
eeprom include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
efuse include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
fs drivers/i2s/i2schar: Implement ioctl commands for i2schar 2025-08-27 11:07:05 +08:00
himem include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
hwspinlock include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
i2c include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
i3c style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
input drivers/input: Create Single Button Multi Actions 2025-07-15 18:39:59 -03:00
ioexpander drivers/ioexpander/aw9523b: New driver for AW9523B i/o expander 2025-08-29 09:10:50 -03:00
lcd style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
leds drivers/leds: Add support for KTD2052 2025-07-07 09:49:51 -03:00
lib libc: add support for sigsetjmp() and siglongjmp() 2025-08-22 20:50:13 +08:00
math style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
mbox include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mm fix kasan_bypss compile unused error 2025-06-30 18:19:38 +08:00
modem include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
motor style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
mtd drivers/mtd: introduce nvblk 2025-08-06 01:53:56 +08:00
net include/net/if.h: Add mechanism for MMD access with SIOCxMIIREG ioctls 2025-08-29 06:45:37 +02:00
note style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
nx style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
pci drivers/pci: epc add dma heap 2025-08-01 20:47:43 +08:00
pinctrl include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
power style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
rc style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
regmap include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
reset style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
rf include: migrate license to ASF 2024-11-06 19:46:13 +08:00
rmt include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
rpmsg style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
rptun rptun_bmp: add remote_cpu to rptun_secure_init 2025-01-14 13:34:35 +08:00
segger include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
sensors drivers/sensors/tmp112: Add support for TMP112 temperature sensor 2025-08-19 19:45:32 -03:00
serial drivers/serial/serial: prevent race conditions on 8-bit architectures 2025-06-19 10:01:24 -03:00
spi style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
syslog drivers/syslog: remove implement of syslog_putc() 2024-11-15 19:46:36 +08:00
timers style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
usb style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
usrsock include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
vhost drivers/vhost: add vhost framework for NuttX 2024-10-03 17:37:40 +08:00
video style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
virtio virtio-mmio/pci: add alloc_buf/free_buf for mmio and pci transport layer 2024-10-09 23:32:58 +08:00
wireless include: fix Private Types banners 2025-05-28 10:17: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 include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
arch.h mte/kasan: Implementing KASAN memory protection for ARM64 hardware MTE 2025-06-30 18:19:38 +08:00
ascii.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
atexit.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
atomic.h include/nuttx/atomic.h: Fix C++ compilation with -nostdinc++ 2025-08-08 01:09:34 +08:00
bits.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
board.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
cache.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
can.h drivers/can: move CAN utils to CAN common files 2025-05-14 10:30:25 -03:00
cancelpt.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
circbuf.h lib/circbuf: add static initialize macro helper 2024-12-17 20:48:23 +08:00
clock.h clock: Add clock_delay2abstick. 2025-05-12 19:56:29 +08:00
compiler.h include/nuttx/compiler.h: 2025-08-21 08:34:13 -03:00
coredump.h coredump: fix issue that nvic region overlapped by board memory region 2025-01-24 09:15:56 +08:00
crc8.h libc: add CRC-8-ROHC support 2024-10-13 03:09:26 +08:00
crc16.h libs/libc/crc16: Separate implementation of crc16xmodem from crc16 2025-04-10 16:47:28 +08:00
crc32.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
crc64.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
elf.h nuttx/elf.h: Fix build error with unknown type name 'bool'. 2024-10-15 12:35:10 +08:00
environ.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
envpath.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
ethtool.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
event.h fs: support VFS-based named event group 2024-10-09 01:40:00 +08:00
fdcheck.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
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 include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
idr.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
init.h sched: change nxsched_islocked_global to nxsched_islocked_tcb 2024-10-05 13:49:55 +08:00
instrument.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
ipcc.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
irq.h sched/spin_lock: rename raw_spin_lock to spin_lock_notrace 2025-02-13 20:48:15 +08:00
kmalloc.h userspace: Exclude nuttx/arch.h 2024-11-01 16:59:37 +08:00
kthread.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
lin.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
lirc.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
list.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
macro.h arch_atomic : Introduce CONFIG_LIBC_ARCH_ATOMIC 2024-11-15 14:01:56 +08:00
memoryregion.h libs/misc/memoryregion: remove unused memory_region 2024-10-18 21:32:48 +08:00
mmcsd.h mmcsd:add postsleep fields for mmc_ioc_cmd 2024-10-15 02:06:00 +08:00
module.h libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
mqueue.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
mutex.h Clean up the nxmutex library 2025-05-08 16:00:05 +08:00
notifier.h spinlock: Fix compilation error with atomic.h. 2025-06-25 22:13:00 +08:00
nuttx.h macro/align: Fix ALIGN_UP and ALIGN_DOWN 2025-01-11 12:13:10 +08:00
page.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
panic_notifier.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
pgalloc.h mm/gran: add gran_alloc_align API 2025-05-12 15:01:37 +08:00
progmem.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
pthread.h pthread: add pthread_attr_{get|set}guardsize support 2025-08-22 20:50:13 +08:00
queue.h include: queue.h: Make flink clear after sq_rem 2024-10-16 13:56:49 +08:00
random.h libc: Refine the arc4random_buf implementation 2024-10-26 18:04:21 -03:00
reboot_notifier.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
rwsem.h Revert "shced:sem: replace mutex with spinlock" 2024-10-29 23:01:39 +08:00
sched.h fs/vfs: Separate file descriptors from file descriptions 2025-06-12 18:12:42 +08:00
sched_note.h spinlock: Fix compilation error with atomic.h. 2025-06-25 22:13:00 +08:00
scsi.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
sdio.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
sdio_slave.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
semaphore.h Integrate nxmutex support fully into nxsem 2025-05-08 16:00:05 +08:00
signal.h signal: add sig_tgkill() kenrnel version support 2024-10-10 02:38:12 +08:00
spawn.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
spinlock.h spinlock: Remove atomic.h inclusion in spinlock_type.h 2025-06-25 22:13:00 +08:00
spinlock_type.h spinlock: Remove atomic.h inclusion in spinlock_type.h 2025-06-25 22:13:00 +08:00
streams.h libc/stream: Add support for lib_scanf 2025-06-20 09:48:39 +08:00
symtab.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
tee.h drivers/misc/optee: Expanded RPC support. 2025-08-06 02:29:33 +08:00
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 support trace_beginex and trace_endex 2024-10-13 10:23:44 +08:00
uorb.h drivers/sensor: Add flags for GNSS satellite 2025-08-03 10:41:06 +08:00
userspace.h userspace: Exclude nuttx/arch.h 2024-11-01 16:59:37 +08:00
vt100.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
wdog.h sched: Add comments for wd_start_next and work_queue_next. 2025-06-10 11:02:45 -03:00
wqueue.h sched: Add comments for wd_start_next and work_queue_next. 2025-06-10 11:02:45 -03:00
zoneinfo.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00