[PATCH 6/6] soc: samsung: pm_domains: Add Exynos850 support

From: Sam Protsenko
Date: Wed Mar 08 2023 - 18:10:24 EST


Add a new compatible string for Exynos850, providing all HW specific
data, which enables Exynos PD support for this chip.

Signed-off-by: Sam Protsenko <semen.protsenko@xxxxxxxxxx>
---
drivers/soc/samsung/pm_domains.c | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)

diff --git a/drivers/soc/samsung/pm_domains.c b/drivers/soc/samsung/pm_domains.c
index ec630a151247..795d8a9cd4b5 100644
--- a/drivers/soc/samsung/pm_domains.c
+++ b/drivers/soc/samsung/pm_domains.c
@@ -20,6 +20,8 @@
#include <linux/mfd/syscon.h>
#include <linux/regmap.h>

+#include <dt-bindings/power/samsung,exynos850-power.h>
+
/* Register offsets inside Power Domain area in PMU */
#define EXYNOS_PD_CONF 0x0
#define EXYNOS_PD_STATUS 0x4
@@ -132,6 +134,21 @@ static const struct exynos_pm_domain_config exynos5433_cfg = {
.local_pwr_cfg = 0xf,
};

+static const unsigned int exynos850_pd_offsets[] = {
+ [EXYNOS850_PD_HSI] = 0x1c80,
+ [EXYNOS850_PD_G3D] = 0x1d00,
+ [EXYNOS850_PD_MFCMSCL] = 0x1d80,
+ [EXYNOS850_PD_DPU] = 0x2000,
+ [EXYNOS850_PD_AUD] = 0x2080,
+ [EXYNOS850_PD_IS] = 0x2100,
+};
+
+static const struct exynos_pm_domain_config exynos850_cfg = {
+ .local_pwr_cfg = 0x1,
+ .pd_offsets = exynos850_pd_offsets,
+ .pd_offsets_num = ARRAY_SIZE(exynos850_pd_offsets),
+};
+
static const struct of_device_id exynos_pm_domain_of_match[] = {
{
.compatible = "samsung,exynos4210-pd",
@@ -139,6 +156,9 @@ static const struct of_device_id exynos_pm_domain_of_match[] = {
}, {
.compatible = "samsung,exynos5433-pd",
.data = &exynos5433_cfg,
+ }, {
+ .compatible = "samsung,exynos850-pd",
+ .data = &exynos850_cfg,
},
{ },
};
--
2.39.2