nuttx/drivers/ioexpander
hujun5 e4d0f404f1 driver: There is no need to use sched_[un]lock
purpose:
1 sched_lock is very time-consuming, and reducing its invocations can improve performance.
2 sched_lock is prone to misuse, and narrowing its scope of use is to prevent people from referencing incorrect code and using it

test:
We can use qemu for testing.
compiling
make distclean -j20; ./tools/configure.sh -l qemu-armv8a:nsh_smp ;make -j20
running
qemu-system-aarch64 -cpu cortex-a53 -smp 4 -nographic -machine virt,virtualization=on,gic-version=3 -net none -chardev stdio,id=con,mux=on -serial chardev:con -mon chardev=con,mode=readline -kernel ./nuttx

We have also tested this patch on other ARM hardware platforms.

Signed-off-by: hujun5 <hujun5@xiaomi.com>
2024-04-30 11:35:13 -03:00
..
CMakeLists.txt cmake:fix drivers build block during cmake reforming 2023-08-16 22:38:52 +08:00
gpio_lower_half.c mm/alloc: remove all unnecessary cast for alloc 2023-08-30 14:34:20 +08:00
gpio.c fs/inode: remove all unnecessary check for filep/inode 2023-08-29 09:47:11 +08:00
icjx.c ioexpander/icjx: add support for change of input interrupts on NINT 2024-04-05 15:23:10 -03:00
icjx.h ioexpander/icjx: add support for change of input interrupts on NINT 2024-04-05 15:23:10 -03:00
ioe_dummy.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
ioe_rpmsg.c
iso1h812g.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
iso1h812g.h ioexpander: add support for ISO1H812G expander 2023-08-29 10:31:40 +08:00
iso1i813t.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
iso1i813t.h ioexpander: add support for ISO1I813T expander 2023-08-29 17:35:59 +08:00
Kconfig rpmsg: make all the rpmsg services deponds on RPMSG 2024-02-18 04:09:34 -08:00
Make.defs ioexpander: add support for iC-JX expander 2024-01-23 17:15:25 -03:00
mcp23x08.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
mcp23x08.h mcp23008 Initial support 2023-09-08 01:33:12 +08:00
mcp23x17.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
mcp23x17.h
pca9538.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
pca9538.h
pca9555.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
pca9555.h
pcf8574.c driver: There is no need to use sched_[un]lock 2024-04-30 11:35:13 -03:00
pcf8574.h
pcf8575.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
pcf8575.h ioexpander: add support for pcf8575 expander 2023-08-03 06:52:27 -07:00
skeleton.c drivers/ioexpander: Add const to the value array of multiwritepin 2023-09-28 10:09:51 +08:00
sx1509.c
sx1509.h
tca64xx.c driver: There is no need to use sched_[un]lock 2024-04-30 11:35:13 -03:00
tca64xx.h