Files
zephyr/drivers/pinctrl/Kconfig
Scott Worley 99ce899c22 drivers: pinctrl: microchip: mec: One PINCTRL driver for all MEC parts
GPIO hardware in Microchip MEC parts is the same except for the MUX
field (number of alternate functions). We modify the old XEC PINCTRL
driver to work on all MEC parts and also be independent of HAL and
CMSIS register structures. During development we found a DT issue
with DT_ENUM_IDX_OR always inserting the default value. Worked around
by converting slew rate and drive strength to YAML integer type and
created defines for the values in the dt-bindings header.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2026-01-07 07:50:18 +01:00

97 lines
3.3 KiB
Plaintext

# Copyright (c) 2021 Nordic Semiconductor ASA
# Copyright 2025 Arm Limited and/or its affiliates <open-source-office@arm.com>
# SPDX-License-Identifier: Apache-2.0
menuconfig PINCTRL
bool "Pin controller drivers"
if PINCTRL
module = PINCTRL
module-str = PINCTRL
source "subsys/logging/Kconfig.template.log_config"
config PINCTRL_STORE_REG
bool
help
This option must be selected by drivers that require access to the device
register address. This can happen, for example, if certain pin control
actions are device dependent or require access to device specific
registers
config PINCTRL_NON_STATIC
bool
help
This option can be selected if the pin control configuration defined by
a driver has to be accessed externally. This can happen, for example, when
dynamic pin control is enabled or in testing environments.
config PINCTRL_DYNAMIC
bool "Dynamic configuration of pins"
select PINCTRL_NON_STATIC
help
When this option is enabled pin control configuration can be changed at
runtime. This can be useful, for example, to change the pins assigned to a
peripheral at early boot stages depending on a certain input.
config PINCTRL_KEEP_SLEEP_STATE
bool "Keep sleep state"
default y if PM || PM_DEVICE || DEVICE_DEINIT_SUPPORT
# zephyr-keep-sorted-start
source "drivers/pinctrl/Kconfig.ambiq"
source "drivers/pinctrl/Kconfig.ameba"
source "drivers/pinctrl/Kconfig.arm_mps2"
source "drivers/pinctrl/Kconfig.arm_mps3"
source "drivers/pinctrl/Kconfig.arm_mps4"
source "drivers/pinctrl/Kconfig.arm_v2m_beetle"
source "drivers/pinctrl/Kconfig.b91"
source "drivers/pinctrl/Kconfig.bflb"
source "drivers/pinctrl/Kconfig.cc13xx_cc26xx"
source "drivers/pinctrl/Kconfig.cc23x0"
source "drivers/pinctrl/Kconfig.emsdp"
source "drivers/pinctrl/Kconfig.ene"
source "drivers/pinctrl/Kconfig.eos_s3"
source "drivers/pinctrl/Kconfig.esp32"
source "drivers/pinctrl/Kconfig.gd32"
source "drivers/pinctrl/Kconfig.gecko"
source "drivers/pinctrl/Kconfig.imx"
source "drivers/pinctrl/Kconfig.infineon"
source "drivers/pinctrl/Kconfig.it8xxx2"
source "drivers/pinctrl/Kconfig.lpc_iocon"
source "drivers/pinctrl/Kconfig.max32"
source "drivers/pinctrl/Kconfig.mchp"
source "drivers/pinctrl/Kconfig.mci_io_mux"
source "drivers/pinctrl/Kconfig.mspm0"
source "drivers/pinctrl/Kconfig.npcx"
source "drivers/pinctrl/Kconfig.nrf"
source "drivers/pinctrl/Kconfig.numaker"
source "drivers/pinctrl/Kconfig.numicro"
source "drivers/pinctrl/Kconfig.nxp_port"
source "drivers/pinctrl/Kconfig.nxp_siul2"
source "drivers/pinctrl/Kconfig.realtek_rts5912"
source "drivers/pinctrl/Kconfig.rpi_pico"
source "drivers/pinctrl/Kconfig.rv32m1"
source "drivers/pinctrl/Kconfig.sam"
source "drivers/pinctrl/Kconfig.sam0"
source "drivers/pinctrl/Kconfig.sf32lb52x"
source "drivers/pinctrl/Kconfig.sifive"
source "drivers/pinctrl/Kconfig.silabs_dbus"
source "drivers/pinctrl/Kconfig.siwx91x"
source "drivers/pinctrl/Kconfig.stm32"
source "drivers/pinctrl/Kconfig.sy1xx"
source "drivers/pinctrl/Kconfig.ti_cc32xx"
source "drivers/pinctrl/Kconfig.ti_k3"
source "drivers/pinctrl/Kconfig.wch_00x_afio"
source "drivers/pinctrl/Kconfig.wch_20x_30x_afio"
source "drivers/pinctrl/Kconfig.wch_afio"
source "drivers/pinctrl/Kconfig.xec"
source "drivers/pinctrl/Kconfig.xlnx"
source "drivers/pinctrl/Kconfig.xmc4xxx"
source "drivers/pinctrl/Kconfig.zynqmp"
# zephyr-keep-sorted-stop
rsource "renesas/Kconfig"
endif # PINCTRL