[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250728071438.2332382-11-joy.zou@nxp.com>
Date: Mon, 28 Jul 2025 15:14:37 +0800
From: Joy Zou <joy.zou@....com>
To: robh@...nel.org,
krzk+dt@...nel.org,
conor+dt@...nel.org,
shawnguo@...nel.org,
s.hauer@...gutronix.de,
kernel@...gutronix.de,
festevam@...il.com,
peng.fan@....com,
richardcochran@...il.com,
catalin.marinas@....com,
will@...nel.org,
ulf.hansson@...aro.org,
andrew+netdev@...n.ch,
davem@...emloft.net,
edumazet@...gle.com,
kuba@...nel.org,
pabeni@...hat.com,
mcoquelin.stm32@...il.com,
alexandre.torgue@...s.st.com,
frieder.schrempf@...tron.de,
primoz.fiser@...ik.com,
othacehe@....org,
Markus.Niebel@...tq-group.com,
alexander.stein@...tq-group.com
Cc: devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
imx@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org,
linux@...tq-group.com,
netdev@...r.kernel.org,
linux-pm@...r.kernel.org,
linux-stm32@...md-mailman.stormreply.com,
Frank.Li@....com
Subject: [PATCH v7 10/11] pmdomain: imx93-blk-ctrl: mask DSI and PXP PD domain register on i.MX91
The i.MX91 is derived from i.MX93, but there is no DSI and PXP in i.MX91,
so skip these mask.
Signed-off-by: Joy Zou <joy.zou@....com>
---
Changes for v7:
1. Optimize i.MX91 num_clks hardcode with ARRAY_SIZE().
Changes for v5:
1. The i.MX91 has different PD domain compared to i.MX93,
so add new imx91 dev_data.
---
drivers/pmdomain/imx/imx93-blk-ctrl.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/drivers/pmdomain/imx/imx93-blk-ctrl.c b/drivers/pmdomain/imx/imx93-blk-ctrl.c
index 1dcb84593e01..e094fe5a42bf 100644
--- a/drivers/pmdomain/imx/imx93-blk-ctrl.c
+++ b/drivers/pmdomain/imx/imx93-blk-ctrl.c
@@ -86,6 +86,7 @@ struct imx93_blk_ctrl_domain {
struct imx93_blk_ctrl_data {
const struct imx93_blk_ctrl_domain_data *domains;
+ u32 skip_mask;
int num_domains;
const char * const *clk_names;
int num_clks;
@@ -250,6 +251,8 @@ static int imx93_blk_ctrl_probe(struct platform_device *pdev)
int j;
domain->data = data;
+ if (bc_data->skip_mask & BIT(i))
+ continue;
for (j = 0; j < data->num_clks; j++)
domain->clks[j].id = data->clk_names[j];
@@ -422,6 +425,15 @@ static const char * const media_blk_clk_names[] = {
"axi", "apb", "nic"
};
+static const struct imx93_blk_ctrl_data imx91_media_blk_ctl_dev_data = {
+ .domains = imx93_media_blk_ctl_domain_data,
+ .skip_mask = BIT(IMX93_MEDIABLK_PD_MIPI_DSI) | BIT(IMX93_MEDIABLK_PD_PXP),
+ .num_domains = ARRAY_SIZE(imx93_media_blk_ctl_domain_data),
+ .clk_names = media_blk_clk_names,
+ .num_clks = ARRAY_SIZE(media_blk_clk_names),
+ .reg_access_table = &imx93_media_blk_ctl_access_table,
+};
+
static const struct imx93_blk_ctrl_data imx93_media_blk_ctl_dev_data = {
.domains = imx93_media_blk_ctl_domain_data,
.num_domains = ARRAY_SIZE(imx93_media_blk_ctl_domain_data),
@@ -432,6 +444,9 @@ static const struct imx93_blk_ctrl_data imx93_media_blk_ctl_dev_data = {
static const struct of_device_id imx93_blk_ctrl_of_match[] = {
{
+ .compatible = "fsl,imx91-media-blk-ctrl",
+ .data = &imx91_media_blk_ctl_dev_data
+ }, {
.compatible = "fsl,imx93-media-blk-ctrl",
.data = &imx93_media_blk_ctl_dev_data
}, {
--
2.37.1
Powered by blists - more mailing lists