Skip to content

Commit

Permalink
drivers: gpio: add driver for PCA6416 IO expander
Browse files Browse the repository at this point in the history
The PCA6416A is a 16-bit general purpose I/O expander that provides
remote I/O expansion for most microcontroller families via the I2C-bus
interface.

Signed-off-by: Jiafei Pan <[email protected]>
  • Loading branch information
JiafeiPan committed Jan 24, 2025
1 parent 2e711aa commit dd5d94c
Show file tree
Hide file tree
Showing 5 changed files with 554 additions and 0 deletions.
1 change: 1 addition & 0 deletions drivers/gpio/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ zephyr_library_sources_ifdef(CONFIG_GPIO_NRFX gpio_nrfx.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_NUMAKER gpio_numaker.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_NUMICRO gpio_numicro.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_NXP_S32 gpio_nxp_s32.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_PCA6416 gpio_pca6416.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_PCA953X gpio_pca953x.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_PCA95XX gpio_pca95xx.c)
zephyr_library_sources_ifdef(CONFIG_GPIO_PCAL64XXA gpio_pcal64xxa.c)
Expand Down
1 change: 1 addition & 0 deletions drivers/gpio/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,7 @@ source "drivers/gpio/Kconfig.nrfx"
source "drivers/gpio/Kconfig.numaker"
source "drivers/gpio/Kconfig.numicro"
source "drivers/gpio/Kconfig.nxp_s32"
source "drivers/gpio/Kconfig.pca6416"
source "drivers/gpio/Kconfig.pca953x"
source "drivers/gpio/Kconfig.pca95xx"
source "drivers/gpio/Kconfig.pca_series"
Expand Down
22 changes: 22 additions & 0 deletions drivers/gpio/Kconfig.pca6416
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# PCA6416 GPIO configuration options

# Copyright 2024 NXP
# SPDX-License-Identifier: Apache-2.0

menuconfig GPIO_PCA6416
bool "PCA6416 I2C GPIO chip"
default y
depends on DT_HAS_NXP_PCA6416_ENABLED
select I2C
help
Enable driver for PCA6416 I2C GPIO chip.

if GPIO_PCA6416

config GPIO_PCA6416_INIT_PRIORITY
int "Init priority"
default 70
help
PCA6416 Device driver initialization priority.

endif # GPIO_PCA6416
Loading

0 comments on commit dd5d94c

Please sign in to comment.