Re: [PATCH v3 2/3] firmware: add exynos ACPM protocol driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxx>
---
  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




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux