Skip to content

Commit 6341e97

Browse files
superna9999storulf
authored andcommitted
pmdomain: amlogic: meson-ee-pwrc: add support for G12A ISP power domain
Add entries for the ISP power domain found in the Amlogic G12B SoC Signed-off-by: Neil Armstrong <[email protected]> Reviewed-by: Daniel Scally <[email protected]> Tested-by: Daniel Scally <[email protected]> Link: https://lore.kernel.org/r/20231123-topic-amlogic-upstream-isp-pmdomain-v2-2-61f2fcf709e5@linaro.org Signed-off-by: Ulf Hansson <[email protected]>
1 parent e22fd8d commit 6341e97

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

drivers/pmdomain/amlogic/meson-ee-pwrc.c

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@
4747

4848
#define G12A_HHI_NANOQ_MEM_PD_REG0 (0x43 << 2)
4949
#define G12A_HHI_NANOQ_MEM_PD_REG1 (0x44 << 2)
50+
#define G12A_HHI_ISP_MEM_PD_REG0 (0x45 << 2)
51+
#define G12A_HHI_ISP_MEM_PD_REG1 (0x46 << 2)
5052

5153
struct meson_ee_pwrc;
5254
struct meson_ee_pwrc_domain;
@@ -115,6 +117,13 @@ static struct meson_ee_pwrc_top_domain g12a_pwrc_nna = {
115117
.iso_mask = BIT(16) | BIT(17),
116118
};
117119

120+
static struct meson_ee_pwrc_top_domain g12a_pwrc_isp = {
121+
.sleep_reg = GX_AO_RTI_GEN_PWR_SLEEP0,
122+
.sleep_mask = BIT(18) | BIT(19),
123+
.iso_reg = GX_AO_RTI_GEN_PWR_ISO0,
124+
.iso_mask = BIT(18) | BIT(19),
125+
};
126+
118127
/* Memory PD Domains */
119128

120129
#define VPU_MEMPD(__reg) \
@@ -231,6 +240,11 @@ static struct meson_ee_pwrc_mem_domain g12a_pwrc_mem_nna[] = {
231240
{ G12A_HHI_NANOQ_MEM_PD_REG1, GENMASK(31, 0) },
232241
};
233242

243+
static struct meson_ee_pwrc_mem_domain g12a_pwrc_mem_isp[] = {
244+
{ G12A_HHI_ISP_MEM_PD_REG0, GENMASK(31, 0) },
245+
{ G12A_HHI_ISP_MEM_PD_REG1, GENMASK(31, 0) },
246+
};
247+
234248
#define VPU_PD(__name, __top_pd, __mem, __is_pwr_off, __resets, __clks) \
235249
{ \
236250
.name = __name, \
@@ -269,6 +283,8 @@ static struct meson_ee_pwrc_domain_desc g12a_pwrc_domains[] = {
269283
[PWRC_G12A_ETH_ID] = MEM_PD("ETH", meson_pwrc_mem_eth),
270284
[PWRC_G12A_NNA_ID] = TOP_PD("NNA", &g12a_pwrc_nna, g12a_pwrc_mem_nna,
271285
pwrc_ee_is_powered_off),
286+
[PWRC_G12A_ISP_ID] = TOP_PD("ISP", &g12a_pwrc_isp, g12a_pwrc_mem_isp,
287+
pwrc_ee_is_powered_off),
272288
};
273289

274290
static struct meson_ee_pwrc_domain_desc gxbb_pwrc_domains[] = {

0 commit comments

Comments
 (0)