drivers: mfd: add class skeleton

Introduce the skeleton for multi-function device drivers. This driver
class is inspired by the same class found in Linux. Multi-function
devices expose multiple functionalities, for example, a LED driver,
regulator, GPIO controller, etc. The MFD driver class serves as a kind
of "parent" device where common functionality can be managed: bus
access, IRQ sharing, initialization code, etc.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
This commit is contained in:
Gerard Marull-Paretas 2023-05-24 11:50:23 +02:00 committed by Anas Nashif
commit 0d3f18d3c4
4 changed files with 27 additions and 0 deletions

View file

@ -48,6 +48,7 @@ add_subdirectory_ifdef(CONFIG_LORA lora)
add_subdirectory_ifdef(CONFIG_MBOX mbox)
add_subdirectory_ifdef(CONFIG_MDIO mdio)
add_subdirectory_ifdef(CONFIG_MEMC memc)
add_subdirectory_ifdef(CONFIG_MFD mfd)
add_subdirectory_ifdef(CONFIG_MIPI_DSI mipi_dsi)
add_subdirectory_ifdef(CONFIG_MM_DRV mm)
add_subdirectory_ifdef(CONFIG_MODEM modem)

View file

@ -47,6 +47,7 @@ source "drivers/lora/Kconfig"
source "drivers/mbox/Kconfig"
source "drivers/mdio/Kconfig"
source "drivers/memc/Kconfig"
source "drivers/mfd/Kconfig"
source "drivers/mipi_dsi/Kconfig"
source "drivers/misc/Kconfig"
source "drivers/mm/Kconfig"

View file

@ -0,0 +1,4 @@
# Copyright 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
zephyr_library()

21
drivers/mfd/Kconfig Normal file
View file

@ -0,0 +1,21 @@
# Copyright 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
menuconfig MFD
bool "Multi-function device (MFD) drivers"
help
Include drivers for multi-function devices
if MFD
module = MFD
module-str = mfd
source "subsys/logging/Kconfig.template.log_config"
config MFD_INIT_PRIORITY
int "Initialization priority"
default 60
help
Multi-function devices initialization priority.
endif # MFD