- 24 4月, 2013 2 次提交
-
-
由 Nicolas Pitre 提交于
This is the basic API used to handle the powering up/down of individual CPUs in a (multi-)cluster system. The platform specific backend implementation has the responsibility to also handle the cluster level power as well when the first/last CPU in a cluster is brought up/down. Signed-off-by: NNicolas Pitre <nico@linaro.org> Reviewed-by: NSantosh Shilimkar <santosh.shilimkar@ti.com> Reviewed-by: NWill Deacon <will.deacon@arm.com>
-
由 Nicolas Pitre 提交于
CPUs in cluster based systems, such as big.LITTLE, have special needs when entering the kernel due to a hotplug event, or when resuming from a deep sleep mode. This is vectorized so multiple CPUs can enter the kernel in parallel without serialization. The mcpm prefix stands for "multi cluster power management", however this is usable on single cluster systems as well. Only the basic structure is introduced here. This will be extended with later patches. In order not to complexify things more than they currently have to, the planned work to make runtime adjusted MPIDR based indexing and dynamic memory allocation for cluster states is postponed to a later cycle. The MAX_NR_CLUSTERS and MAX_CPUS_PER_CLUSTER static definitions should be sufficient for those systems expected to be available in the near future. Signed-off-by: NNicolas Pitre <nico@linaro.org> Reviewed-by: NSantosh Shilimkar <santosh.shilimkar@ti.com> Reviewed-by: NWill Deacon <will.deacon@arm.com>
-