[PATCH v3 2/3] firmware: add exynos ACPM protocol driver
Daniel Lezcano
daniel.lezcano at linaro.org
Thu Dec 5 15:39:56 PST 2024
On 12/5/24 18:53, Tudor Ambarus wrote:
> Alive Clock and Power Manager (ACPM) Message Protocol is defined for
> the purpose of communication between the ACPM firmware and masters
> (AP, AOC, ...). ACPM firmware operates on the Active Power Management
> (APM) module that handles overall power activities.
>
> ACPM and masters regard each other as independent hardware component and
> communicate with each other using mailbox messages and shared memory.
>
> This protocol library provides the interface for all the client drivers
> making use of the features offered by the APM. Add ACPM protocol support.
>
> Signed-off-by: Tudor Ambarus <tudor.ambarus at linaro.org>
> ---
> drivers/firmware/Kconfig | 1 +
> drivers/firmware/Makefile | 1 +
> drivers/firmware/samsung/Kconfig | 14 +
> drivers/firmware/samsung/Makefile | 4 +
> drivers/firmware/samsung/exynos-acpm-pmic.c | 226 +++++
> drivers/firmware/samsung/exynos-acpm-pmic.h | 24 +
> drivers/firmware/samsung/exynos-acpm.c | 772 ++++++++++++++++++
> drivers/firmware/samsung/exynos-acpm.h | 15 +
> .../linux/soc/samsung/exynos-acpm-protocol.h | 57 ++
> 9 files changed, 1114 insertions(+)
> create mode 100644 drivers/firmware/samsung/Kconfig
> create mode 100644 drivers/firmware/samsung/Makefile
> create mode 100644 drivers/firmware/samsung/exynos-acpm-pmic.c
> create mode 100644 drivers/firmware/samsung/exynos-acpm-pmic.h
> create mode 100644 drivers/firmware/samsung/exynos-acpm.c
> create mode 100644 drivers/firmware/samsung/exynos-acpm.h
> create mode 100644 include/linux/soc/samsung/exynos-acpm-protocol.h
>
> diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig
> index 71d8b26c4103..24edb956831b 100644
> --- a/drivers/firmware/Kconfig
> +++ b/drivers/firmware/Kconfig
> @@ -267,6 +267,7 @@ source "drivers/firmware/meson/Kconfig"
> source "drivers/firmware/microchip/Kconfig"
> source "drivers/firmware/psci/Kconfig"
> source "drivers/firmware/qcom/Kconfig"
> +source "drivers/firmware/samsung/Kconfig"
> source "drivers/firmware/smccc/Kconfig"
> source "drivers/firmware/tegra/Kconfig"
> source "drivers/firmware/xilinx/Kconfig"
> diff --git a/drivers/firmware/Makefile b/drivers/firmware/Makefile
> index 7a8d486e718f..91efcc868a05 100644
> --- a/drivers/firmware/Makefile
> +++ b/drivers/firmware/Makefile
> @@ -33,6 +33,7 @@ obj-y += efi/
> obj-y += imx/
> obj-y += psci/
> obj-y += qcom/
> +obj-y += samsung/
> obj-y += smccc/
> obj-y += tegra/
> obj-y += xilinx/
> diff --git a/drivers/firmware/samsung/Kconfig b/drivers/firmware/samsung/Kconfig
> new file mode 100644
> index 000000000000..eed8cd8a677b
> --- /dev/null
> +++ b/drivers/firmware/samsung/Kconfig
> @@ -0,0 +1,14 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +
> +config EXYNOS_ACPM_PROTOCOL
> + tristate "Exynos Alive Clock and Power Manager (ACPM) Message Protocol"
Given the importance of this driver where a lot of PM services rely on,
does it really make sense to allow it as a module ?
Some PM services may be needed very early in the boot process
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
More information about the linux-arm-kernel
mailing list