Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2b20b616 authored by Paul Walmsley's avatar Paul Walmsley Committed by Thierry Reding
Browse files

soc/tegra: pmc: restrict compilation of suspend-related support to ARM



Tegra SoCs with 64-bit ARM support don't currently support deep CPU
low-power states in mainline Linux.  When this support is added in the
future, it will probably look rather different from the existing
32-bit ARM support, since the ARM64 maintainers' strong preference is
to use PSCI to implement it.

So, for the time being, prevent the CPU suspend-related code and data
in the Tegra PMC driver from compiling on ARM64.

Signed-off-by: default avatarPaul Walmsley <paul@pwsan.com>
Signed-off-by: default avatarPaul Walmsley <pwalmsley@nvidia.com>
Cc: Thierry Reding <treding@nvidia.com>
Cc: Allen Martin <amartin@nvidia.com>
Cc: Stephen Warren <swarren@nvidia.com>
Cc: Alexandre Courbot <gnurou@gmail.com>
Signed-off-by: default avatarThierry Reding <treding@nvidia.com>
parent 97bf6af1
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -739,7 +739,7 @@ static int tegra_pmc_probe(struct platform_device *pdev)
	return 0;
}

#ifdef CONFIG_PM_SLEEP
#if defined(CONFIG_PM_SLEEP) && defined(CONFIG_ARM)
static int tegra_pmc_suspend(struct device *dev)
{
	tegra_pmc_writel(virt_to_phys(tegra_resume), PMC_SCRATCH41);
@@ -753,10 +753,11 @@ static int tegra_pmc_resume(struct device *dev)

	return 0;
}
#endif

static SIMPLE_DEV_PM_OPS(tegra_pmc_pm_ops, tegra_pmc_suspend, tegra_pmc_resume);

#endif

static const char * const tegra20_powergates[] = {
	[TEGRA_POWERGATE_CPU] = "cpu",
	[TEGRA_POWERGATE_3D] = "3d",
@@ -894,7 +895,9 @@ static struct platform_driver tegra_pmc_driver = {
		.name = "tegra-pmc",
		.suppress_bind_attrs = true,
		.of_match_table = tegra_pmc_match,
#if defined(CONFIG_PM_SLEEP) && defined(CONFIG_ARM)
		.pm = &tegra_pmc_pm_ops,
#endif
	},
	.probe = tegra_pmc_probe,
};
+1 −1
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@ enum tegra_suspend_mode {
	TEGRA_MAX_SUSPEND_MODE,
};

#ifdef CONFIG_PM_SLEEP
#if defined(CONFIG_PM_SLEEP) && defined(CONFIG_ARM)
enum tegra_suspend_mode
tegra_pm_validate_suspend_mode(enum tegra_suspend_mode mode);