soc/tegra: pmc: Ensure powergate is available when powering on
authorJon Hunter <jonathanh@nvidia.com>
Tue, 28 Jun 2016 10:38:23 +0000 (11:38 +0100)
committerThierry Reding <treding@nvidia.com>
Thu, 30 Jun 2016 09:48:39 +0000 (11:48 +0200)
The function tegra_power_sequence_power_up() is a public function used
to power on a partition. When this function is called, we do not check
to see if the partition being powered up is valid/available. Fix this
by checking to see that the partition is valid/available.

Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/soc/tegra/pmc.c

index 8a421a0b1ecebc0ac32dcb8c4331c3e49fd272df..52a9e970366890191734152aa211d2b46938b23b 100644 (file)
@@ -549,6 +549,9 @@ int tegra_powergate_sequence_power_up(unsigned int id, struct clk *clk,
        struct tegra_powergate pg;
        int err;
 
+       if (!tegra_powergate_is_available(id))
+               return -EINVAL;
+
        pg.id = id;
        pg.clks = &clk;
        pg.num_clks = 1;