From: l.stach@pengutronix.de (Lucas Stach)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 4/8] soc: imx: gpc: fix imx6sl gpc power domain regression
Date: Wed, 22 Mar 2017 14:31:36 +0100 [thread overview]
Message-ID: <1490189496.29056.1.camel@pengutronix.de> (raw)
In-Reply-To: <1490244805-3921-5-git-send-email-aisheng.dong@nxp.com>
Am Donnerstag, den 23.03.2017, 12:53 +0800 schrieb Dong Aisheng:
> Commit 721cabf6c660 ("soc: imx: move PGC handling to a new GPC driver")
> broke the MX6SL GPC power domain support.
> It always got the following error:
> [ 1.248364] imx-gpc 20dc000.gpc: could not find pgc DT node
> This patch adds back the legecy support.
>
> Cc: Lucas Stach <l.stach@pengutronix.de>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Fixes: 721cabf6c660 ("soc: imx: move PGC handling to a new GPC driver")
> Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
I would have hoped to keep the sanity check, but it makes things more
complicated for no real gain, as probably nobody is going to try adding
SoC support with the old bindings:
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
> ---
> Change Log:
> v1->v2: add back the three domain support for MX6SL
> ---
> drivers/soc/imx/gpc.c | 18 +++++++-----------
> 1 file changed, 7 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/soc/imx/gpc.c b/drivers/soc/imx/gpc.c
> index ba6e7ab..9a2354e 100644
> --- a/drivers/soc/imx/gpc.c
> +++ b/drivers/soc/imx/gpc.c
> @@ -309,12 +309,13 @@ static struct genpd_onecell_data imx_gpc_onecell_data = {
> .num_domains = 2,
> };
>
> -static int imx_gpc_old_dt_init(struct device *dev, struct regmap *regmap)
> +static int imx_gpc_old_dt_init(struct device *dev, struct regmap *regmap,
> + unsigned int num_domains)
> {
> struct imx_pm_domain *domain;
> int i, ret;
>
> - for (i = 0; i < 2; i++) {
> + for (i = 0; i < num_domains; i++) {
> domain = &imx_gpc_domains[i];
> domain->regmap = regmap;
> domain->ipg_rate_mhz = 66;
> @@ -332,7 +333,7 @@ static int imx_gpc_old_dt_init(struct device *dev, struct regmap *regmap)
> }
> }
>
> - for (i = 0; i < 2; i++)
> + for (i = 0; i < num_domains; i++)
> pm_genpd_init(&imx_gpc_domains[i].base, NULL, false);
>
> if (IS_ENABLED(CONFIG_PM_GENERIC_DOMAINS)) {
> @@ -345,7 +346,7 @@ static int imx_gpc_old_dt_init(struct device *dev, struct regmap *regmap)
> return 0;
>
> genpd_err:
> - for (i = 0; i < 2; i++)
> + for (i = 0; i < num_domains; i++)
> pm_genpd_remove(&imx_gpc_domains[i].base);
> imx_pgc_put_clocks(&imx_gpc_domains[1]);
> clk_err:
> @@ -385,13 +386,8 @@ static int imx_gpc_probe(struct platform_device *pdev)
> }
>
> if (!pgc_node) {
> - /* old DT layout is only supported for mx6q aka 2 domains */
> - if (of_id_data->num_domains != 2) {
> - dev_err(&pdev->dev, "could not find pgc DT node\n");
> - return -ENODEV;
> - }
> -
> - ret = imx_gpc_old_dt_init(&pdev->dev, regmap);
> + ret = imx_gpc_old_dt_init(&pdev->dev, regmap,
> + of_id_data->num_domains);
> if (ret)
> return ret;
> } else {
next prev parent reply other threads:[~2017-03-22 13:31 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-23 4:53 [PATCH v2 0/8] soc: imx: gpc: fixes and clean up Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 1/8] soc: imx: gpc: fix gpc clk get error handling Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 2/8] soc: imx: gpc: fix the wrong using of regmap cache Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 3/8] soc: imx: gpc: fix domain_index sanity check issue Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 4/8] soc: imx: gpc: fix imx6sl gpc power domain regression Dong Aisheng
2017-03-22 13:31 ` Lucas Stach [this message]
2017-03-23 4:53 ` [PATCH v2 5/8] soc: imx: gpc: fix comment when power up domain Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 6/8] soc: imx: gpc: keep PGC_X_CTRL name align with reference manual Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 7/8] dt-bindings: imx-gpc: correct the DOMAIN_INDEX using Dong Aisheng
2017-03-23 4:53 ` [PATCH v2 8/8] soc: imx: gpc: remove unnecessary readable_reg callback Dong Aisheng
2017-03-24 5:49 ` [PATCH v2 0/8] soc: imx: gpc: fixes and clean up Shawn Guo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1490189496.29056.1.camel@pengutronix.de \
--to=l.stach@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).