diff mbox series

soc/tegra: pmc: Drop SMP dependency from CPU APIs

Message ID 1544694374-21231-1-git-send-email-jonathanh@nvidia.com
State Accepted
Headers show
Series soc/tegra: pmc: Drop SMP dependency from CPU APIs | expand

Commit Message

Jon Hunter Dec. 13, 2018, 9:46 a.m. UTC
When CONFIG_SMP is disabled, the tegra clk driver now fails to build:

drivers/clk/tegra/clk-tegra30.c: In function ‘tegra30_cpu_rail_off_ready’:
drivers/clk/tegra/clk-tegra30.c:1151:2: error: implicit declaration of function ‘tegra_pmc_cpu_is_powered’ [-Werror=implicit-function-declaration]
  cpu_pwr_status = tegra_pmc_cpu_is_powered(1) ||
    ^
Fix the above error by removing the CONFIG_SMP ifdef around the
declaration around the PMC CPU APIs because although these are not
needed for non-SMP configurations, there is no harm in including these
for non-SMP builds either.

Fixes: 61866523ed6e ("clk: tegra30: Use Tegra CPU powergate helper function")
Reported-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
---
 drivers/soc/tegra/pmc.c | 2 --
 include/soc/tegra/pmc.h | 2 --
 2 files changed, 4 deletions(-)

Comments

Stephen Boyd Dec. 13, 2018, 10:09 a.m. UTC | #1
Quoting Jon Hunter (2018-12-13 01:46:14)
> When CONFIG_SMP is disabled, the tegra clk driver now fails to build:
> 
> drivers/clk/tegra/clk-tegra30.c: In function ‘tegra30_cpu_rail_off_ready’:
> drivers/clk/tegra/clk-tegra30.c:1151:2: error: implicit declaration of function ‘tegra_pmc_cpu_is_powered’ [-Werror=implicit-function-declaration]
>   cpu_pwr_status = tegra_pmc_cpu_is_powered(1) ||
>     ^
> Fix the above error by removing the CONFIG_SMP ifdef around the
> declaration around the PMC CPU APIs because although these are not
> needed for non-SMP configurations, there is no harm in including these
> for non-SMP builds either.
> 
> Fixes: 61866523ed6e ("clk: tegra30: Use Tegra CPU powergate helper function")
> Reported-by: Arnd Bergmann <arnd@arndb.de>
> Signed-off-by: Jon Hunter <jonathanh@nvidia.com>

Can I pick this into clk tree? That would make the compilation bisection
hole very small. I could even reorder the clk-tegra branch to have this
before the user so the bisection hole doesn't exist.
Thierry Reding Dec. 13, 2018, 4:07 p.m. UTC | #2
On Thu, Dec 13, 2018 at 02:09:01AM -0800, Stephen Boyd wrote:
> Quoting Jon Hunter (2018-12-13 01:46:14)
> > When CONFIG_SMP is disabled, the tegra clk driver now fails to build:
> > 
> > drivers/clk/tegra/clk-tegra30.c: In function ‘tegra30_cpu_rail_off_ready’:
> > drivers/clk/tegra/clk-tegra30.c:1151:2: error: implicit declaration of function ‘tegra_pmc_cpu_is_powered’ [-Werror=implicit-function-declaration]
> >   cpu_pwr_status = tegra_pmc_cpu_is_powered(1) ||
> >     ^
> > Fix the above error by removing the CONFIG_SMP ifdef around the
> > declaration around the PMC CPU APIs because although these are not
> > needed for non-SMP configurations, there is no harm in including these
> > for non-SMP builds either.
> > 
> > Fixes: 61866523ed6e ("clk: tegra30: Use Tegra CPU powergate helper function")
> > Reported-by: Arnd Bergmann <arnd@arndb.de>
> > Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> 
> Can I pick this into clk tree? That would make the compilation bisection
> hole very small. I could even reorder the clk-tegra branch to have this
> before the user so the bisection hole doesn't exist.

Fine with me:

Acked-by: Thierry Reding <treding@nvidia.com>
Stephen Boyd Dec. 13, 2018, 7:41 p.m. UTC | #3
Quoting Thierry Reding (2018-12-13 08:07:46)
> On Thu, Dec 13, 2018 at 02:09:01AM -0800, Stephen Boyd wrote:
> > Quoting Jon Hunter (2018-12-13 01:46:14)
> > > When CONFIG_SMP is disabled, the tegra clk driver now fails to build:
> > > 
> > > drivers/clk/tegra/clk-tegra30.c: In function ‘tegra30_cpu_rail_off_ready’:
> > > drivers/clk/tegra/clk-tegra30.c:1151:2: error: implicit declaration of function ‘tegra_pmc_cpu_is_powered’ [-Werror=implicit-function-declaration]
> > >   cpu_pwr_status = tegra_pmc_cpu_is_powered(1) ||
> > >     ^
> > > Fix the above error by removing the CONFIG_SMP ifdef around the
> > > declaration around the PMC CPU APIs because although these are not
> > > needed for non-SMP configurations, there is no harm in including these
> > > for non-SMP builds either.
> > > 
> > > Fixes: 61866523ed6e ("clk: tegra30: Use Tegra CPU powergate helper function")
> > > Reported-by: Arnd Bergmann <arnd@arndb.de>
> > > Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
> > 
> > Can I pick this into clk tree? That would make the compilation bisection
> > hole very small. I could even reorder the clk-tegra branch to have this
> > before the user so the bisection hole doesn't exist.
> 
> Fine with me:
> 
> Acked-by: Thierry Reding <treding@nvidia.com>

Ok thanks. I'll reorder things soon, but for now I'll just pick this
atop the tegra branch and merge it up to next.
diff mbox series

Patch

diff --git a/drivers/soc/tegra/pmc.c b/drivers/soc/tegra/pmc.c
index 8c46b0aace0b..7ea3280279ff 100644
--- a/drivers/soc/tegra/pmc.c
+++ b/drivers/soc/tegra/pmc.c
@@ -689,7 +689,6 @@  int tegra_powergate_sequence_power_up(unsigned int id, struct clk *clk,
 }
 EXPORT_SYMBOL(tegra_powergate_sequence_power_up);
 
-#ifdef CONFIG_SMP
 /**
  * tegra_get_cpu_powergate_id() - convert from CPU ID to partition ID
  * @cpuid: CPU partition ID
@@ -749,7 +748,6 @@  int tegra_pmc_cpu_remove_clamping(unsigned int cpuid)
 
 	return tegra_powergate_remove_clamping(id);
 }
-#endif /* CONFIG_SMP */
 
 static int tegra_pmc_restart_notify(struct notifier_block *this,
 				    unsigned long action, void *data)
diff --git a/include/soc/tegra/pmc.h b/include/soc/tegra/pmc.h
index fd816f6aa9cc..a9db1b501de1 100644
--- a/include/soc/tegra/pmc.h
+++ b/include/soc/tegra/pmc.h
@@ -26,11 +26,9 @@ 
 struct clk;
 struct reset_control;
 
-#ifdef CONFIG_SMP
 bool tegra_pmc_cpu_is_powered(unsigned int cpuid);
 int tegra_pmc_cpu_power_on(unsigned int cpuid);
 int tegra_pmc_cpu_remove_clamping(unsigned int cpuid);
-#endif /* CONFIG_SMP */
 
 /*
  * powergate and I/O rail APIs