]> git.baikalelectronics.ru Git - arm-tf.git/commitdiff
Tegra: PMC: check if a CPU is already online
authorVarun Wadekar <vwadekar@nvidia.com>
Thu, 16 Jul 2015 05:05:12 +0000 (10:35 +0530)
committerVarun Wadekar <vwadekar@nvidia.com>
Fri, 17 Jul 2015 13:36:47 +0000 (19:06 +0530)
This patch checks if the target CPU is already online before
proceeding with it's power ON sequence.

Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
plat/nvidia/tegra/common/drivers/pmc/pmc.c

index 5796ac79e45ab125d26323c0c0bb1c1696bfcb08..6e7f23c6cf32adcf6f260bf8d24b2c53fce8d474 100644 (file)
@@ -51,6 +51,13 @@ void tegra_pmc_cpu_on(int cpu)
 {
        uint32_t val;
 
+       /*
+        * Check if CPU is already power ungated
+        */
+       val = tegra_pmc_read_32(PMC_PWRGATE_STATUS);
+       if (val & (1 << pmc_cpu_powergate_id[cpu]))
+               return;
+
        /*
         * The PMC deasserts the START bit when it starts the power
         * ungate process. Loop till no power toggle is in progress.