On Thu, Jun 26, 2025 at 04:54:38PM +0530, Aswin Murugan wrote: > Added support for Qualcomm RPMH power domain driver, responsible > for managing power domains on Qualcomm SoCs. This is a port of > the Linux RPMHPD driver [1] and sa8775p related changes. The > power domain driver currently has support to power on and off > MMCX power domain; support for other power domains can be added > in this driver. > > [1]: > https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/pmdomain/qcom/rpmhpd.c?id=3d25d46a255a83f94d7d4d4216f38aafc8e116b > > Signed-off-by: Balaji Selvanathan <[email protected]> > Signed-off-by: Aswin Murugan <[email protected]> > --- > drivers/power/domain/Kconfig | 8 + > drivers/power/domain/Makefile | 1 + > drivers/power/domain/qcom-rpmhpd.c | 271 +++++++++++++++++++++++++++++ > 3 files changed, 280 insertions(+) > create mode 100644 drivers/power/domain/qcom-rpmhpd.c > > diff --git a/drivers/power/domain/Kconfig b/drivers/power/domain/Kconfig > index 5f5218bd8b5..2e246c5bb73 100644 > --- a/drivers/power/domain/Kconfig > +++ b/drivers/power/domain/Kconfig > @@ -82,6 +82,14 @@ config MESON_SECURE_POWER_DOMAIN > Enable support for manipulating Amlogic Meson Secure power domains. > Support for Amlogic A1 series. > > +config QCOM_POWER_DOMAIN > + bool "Enable the QCOM RPMH Power domain driver" > + depends on POWER_DOMAIN > + help > + Generic RPMH power domain implementation for QCOM devices. > + The RPMH power domain driver is responsible for managing power > + domains on Qualcomm SoCs. > + > config SANDBOX_POWER_DOMAIN > bool "Enable the sandbox power domain test driver" > depends on POWER_DOMAIN && SANDBOX > diff --git a/drivers/power/domain/Makefile b/drivers/power/domain/Makefile > index 4d20c97d26c..ad355f88479 100644 > --- a/drivers/power/domain/Makefile > +++ b/drivers/power/domain/Makefile > @@ -14,6 +14,7 @@ obj-$(CONFIG_MTK_POWER_DOMAIN) += mtk-power-domain.o > obj-$(CONFIG_MESON_GX_VPU_POWER_DOMAIN) += meson-gx-pwrc-vpu.o > obj-$(CONFIG_MESON_EE_POWER_DOMAIN) += meson-ee-pwrc.o > obj-$(CONFIG_MESON_SECURE_POWER_DOMAIN) += meson-secure-pwrc.o > +obj-$(CONFIG_QCOM_POWER_DOMAIN) += qcom-rpmhpd.o > obj-$(CONFIG_SANDBOX_POWER_DOMAIN) += sandbox-power-domain.o > obj-$(CONFIG_SANDBOX_POWER_DOMAIN) += sandbox-power-domain-test.o > obj-$(CONFIG_SCMI_POWER_DOMAIN) += scmi-power-domain.o > diff --git a/drivers/power/domain/qcom-rpmhpd.c > b/drivers/power/domain/qcom-rpmhpd.c > new file mode 100644 > index 00000000000..6653995f5ed > --- /dev/null > +++ b/drivers/power/domain/qcom-rpmhpd.c > @@ -0,0 +1,271 @@ > +// SPDX-License-Identifier: GPL-2.0 > +// Copyright (c) 2018, The Linux Foundation. All rights reserved. > +// Copyright (c) 2025 Qualcomm Innovation Center, Inc. All rights reserved. > + > +#include <dm.h> > +#include <dm/lists.h> > +#include <power-domain.h> > +#include <asm/io.h> > +#include <linux/errno.h> > + > +#include <power-domain-uclass.h> > +#include <soc/qcom/cmd-db.h> > +#include <soc/qcom/rpmh.h>
This needs to depends on ARCH_SNAPDRAGON in Kconfig as it won't compile on any other platform due to the includes. -- Tom
signature.asc
Description: PGP signature

