From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752194AbcF3K4h (ORCPT ); Thu, 30 Jun 2016 06:56:37 -0400 Received: from hqemgate14.nvidia.com ([216.228.121.143]:13083 "EHLO hqemgate14.nvidia.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752062AbcF3K4e (ORCPT ); Thu, 30 Jun 2016 06:56:34 -0400 X-PGP-Universal: processed; by hqnvupgp08.nvidia.com on Thu, 30 Jun 2016 03:55:16 -0700 From: Jon Hunter To: Stephen Warren , Thierry Reding , Alexandre Courbot CC: , , Jon Hunter Subject: [PATCH 1/4] soc/tegra: pmc: Add specific error messages for initialising a powergate Date: Thu, 30 Jun 2016 11:56:24 +0100 Message-ID: <1467284187-13320-2-git-send-email-jonathanh@nvidia.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1467284187-13320-1-git-send-email-jonathanh@nvidia.com> References: <1467284187-13320-1-git-send-email-jonathanh@nvidia.com> X-NVConfidentiality: public MIME-Version: 1.0 Content-Type: text/plain Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When initialising a powergate, only a single error message is shown if the initialisation fails. Add more error messages to give specific details of what failed if the initialisation failed and remove the generic failure message. Signed-off-by: Jon Hunter --- drivers/soc/tegra/pmc.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c index 1f702538f8ec..df61c85e75c7 100644 --- a/drivers/soc/tegra/pmc.c +++ b/drivers/soc/tegra/pmc.c @@ -793,11 +793,13 @@ static void tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np) pg = kzalloc(sizeof(*pg), GFP_KERNEL); if (!pg) - goto error; + return; id = tegra_powergate_lookup(pmc, np->name); - if (id < 0) + if (id < 0) { + dev_err(pmc->dev, "powergate lookup failed for %s\n", np->name); goto free_mem; + } /* * Clear the bit for this powergate so it cannot be managed @@ -813,16 +815,23 @@ static void tegra_powergate_add(struct tegra_pmc *pmc, struct device_node *np) off = !tegra_powergate_is_powered(pg->id); - if (tegra_powergate_of_get_clks(pg, np)) + if (tegra_powergate_of_get_clks(pg, np)) { + dev_err(pmc->dev, "failed to get clocks for %s\n", np->name); goto set_available; + } - if (tegra_powergate_of_get_resets(pg, np, off)) + if (tegra_powergate_of_get_resets(pg, np, off)) { + dev_err(pmc->dev, "failed to get resets for %s\n", np->name); goto remove_clks; + } pm_genpd_init(&pg->genpd, NULL, off); - if (of_genpd_add_provider_simple(np, &pg->genpd)) + if (of_genpd_add_provider_simple(np, &pg->genpd)) { + dev_err(pmc->dev, "failed to add genpd provider for %s\n", + np->name); goto remove_resets; + } dev_dbg(pmc->dev, "added power domain %s\n", pg->genpd.name); @@ -843,9 +852,6 @@ set_available: free_mem: kfree(pg); - -error: - dev_err(pmc->dev, "failed to create power domain for %s\n", np->name); } static void tegra_powergate_init(struct tegra_pmc *pmc) -- 2.1.4