aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-05-05Merge branch 'tracking-integration-linux-vexpress' into merge-linux-linaro-lsklsk-20130505.0Andrey Konovalov
2013-05-05Merge branch 'tracking-big-LITTLE-MP-master' into merge-linux-linaro-lskAndrey Konovalov
2013-05-03Merge branch 'tracking-armlt-arm64' into integration-linux-vexpresstracking-integration-linux-vexpress-lsk-20130505.0Jon Medhurst
Conflicts: drivers/clk/versatile/Makefile
2013-05-03Merge branch 'tracking-armlt-tc2-cpufreq' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-tc2-psci' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-tc2-pm' into integration-linux-vexpressJon Medhurst
Conflicts: arch/arm/mach-vexpress/Kconfig arch/arm/mach-vexpress/Makefile
2013-05-03Merge branch 'tracking-armlt-dcscb' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-psci' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-spc' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-cci' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-mcpm' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-tc2-dt' into integration-linux-vexpressJon Medhurst
Conflicts: arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts
2013-05-03Merge branch 'tracking-armlt-misc-fixes' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-clcd' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-hdlcd' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-ve-updates' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-mmc' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-rtsm' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-config' into integration-linux-vexpressJon Medhurst
Conflicts: linaro/configs/vexpress.conf
2013-05-03Merge branch 'tracking-armlt-local-fixes' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-irqchip-reorg' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'tracking-armlt-gator' into integration-linux-vexpressJon Medhurst
2013-05-03Merge branch 'big-LITTLE-MP-master-v16' of ↵Jon Medhurst
git://git.linaro.org/arm/big.LITTLE/mp into integration-linux-vexpress
2013-05-03Merge branch 'config-boards-tracking' of git://git.linaro.org/kernel/configs ↵Jon Medhurst
into integration-linux-vexpress
2013-05-03Merge branch 'config-core-tracking' of git://git.linaro.org/kernel/configs ↵Jon Medhurst
into integration-linux-vexpress
2013-05-03ARM: mcpm_platsmp: no need to call gic_secondary_init anymoreNicolas Pitre
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-05-03ARM: vexpress: Select multi-cluster SMP operation if requiredJon Medhurst
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-05-03ARM: vexpress: Get tc2_pm_psci.c to use common CP15 accessor functionsJon Medhurst
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-05-03ARM: vexpress: Fixup tc2_pm_psci.c for mcpm APIsJon Medhurst
Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-05-03ARM: vexpress: add psci support in TC2 device treeAchin Gupta
This patch adds a psci device node to allow the ospm subsystems on the TC2 to work with a psci backend implemented in the secure firmware. The function offsets start from 1 instead of 0 as thats whats the current secure firmware implements. Signed-off-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
2013-05-03ARM: vexpress: add shim layer for psci backend on TC2Achin Gupta
This patch introduces a shim layer for the TC2 platform which converts 'bL_platform_power_ops' routines to their psci counterparts. The psci counterparts are implemented by the secure firmware. The shim layer is used only when Linux is running in non-secure world and the secure firmware implements psci. It also introduces the use of a reference count to allow a power up call to go ahead of a power down call. Signed-off-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
2013-05-03ARM: vexpress: allow native pm ops backends to probe for psci suppportAchin Gupta
This patch allows the vexpress 'tc2' native backend to probe the dt for presence of the psci backend. If present then the native implementation of the 'bL_platform_power_ops' is not used. Signed-off-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
2013-05-03ARM: TC2: replace hard coded cluster and cpu values with constantsAchin Gupta
This patch adds constants in a tc2 specific header file to prevent use of hard coded values for specifying the number of cpus and clusters. Signed-off-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com>
2013-05-03ARM: TC2: reset CPUs spuriously woken up on cluster power upLorenzo Pieralisi
On TC2, all CPUs in a cluster are woken up when an IRQ event triggers for a CPU in a cluster in shutdown state. This patch puts spuriously woken CPUs back in reset by checking the pending IRQ status in the SPC wake-up interrupt status register; if the CPU has no pending IRQ routed to it, the core reexecutes wfi and it is put in reset by FW straight away. Tested-by: Viresh Kumar <viresh.kumar2@arm.com> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
2013-05-03cpuidle: arm_big_little: fixup for MCPMNicolas Pitre
The low-level layer is now called "mcpm".
2013-05-03Use dts compatible node to init cpuidle-tc2mark hambleton
Change the init code for cpuidle-tc2 to check for a compatible node in the devicetree of "arm,generic" in preparation for moving it to driver/cpuidle. Rename functions / variable from tc2_ to bl_. Signed-off-by: mark hambleton <mahamble@broadcom.com>
2013-05-03ARM: vexpress/tc2: clean up the cpuidle driverNicolas Pitre
Use the bL_cpu_suspend method instead of bL_cpu_power_down. This allows for the driver to become usable on non SPC based platform such as RTSM if vexpress_spc_check_loaded() is removed. Signed-off-by: Nicolas Pitre <nico@linaro.org>
2013-05-03ARM: mcpm: Make all mcpm functions notraceDave Martin
The functions in mcpm_entry.c are mostly intended for use during scary cache and coherency disabling sequences, or do other things which confuse trace ... like powering a CPU down and not returning. Similarly for the backend code. For simplicity, this patch just makes whole files notrace. There should be more than enough traceable points on the paths to these functions, but we can be more fine-grained later if there is a need for it. Signed-off-by: Dave Martin <dave.martin@linaro.org>
2013-05-03ARM: vexpress/tc2: implement PM suspend methodNicolas Pitre
This is simplistic for the moment as the expected residency is used to prevent the shutting down of L2 and the cluster if the residency for the last man is lower than 5 ms. To make this right, the residency end time for each CPU would need to be recorded and taken into account. On a suspend, the firmware mailbox address has to be set prior entering low power mode. Signed-off-by: Nicolas Pitre <nico@linaro.org>
2013-05-03ARM: TC2: disable GIC CPU IF on power downLorenzo Pieralisi
On TC2 testchip the GIC CPU IF must be disabled before powering down a core since a pending IRQ might cause wfi completion and the processor would exit wfi state while power controller is taking action to reset or power up the CPU upon IRQ reception. This patch adds code that disables the GIC CPU IF in TC2 specific power API methods. Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
2013-05-03gic: introduce gic_cpu_if_down()Nicolas Pitre
This should be queued right before 'Revert "ARM: common: add GIC bybass disable on GIC CPU IF save function"'. Signed-off-by: Nicolas Pitre <nico@linaro.org>
2013-05-03ARM: TC2: basic PM supportNicolas Pitre
Signed-off-by: Nicolas Pitre <nico@linaro.org>
2013-05-03ARM: Enable selection of SMP operations at boot timeJon Medhurst
Add a new 'smp_init' hook to machine_desc so platforms can specify a function to be used to setup smp ops instead of having a statically defined value. The hook must return true when smp_ops are initialized. If false the static mdesc->smp_ops will be used by default. Add the definition of "bool" by including the linux/types.h file to asm/mach/arch.h and make it self-contained. Signed-off-by: Jon Medhurst <tixy@linaro.org> Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org> Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2013-05-03ARM: mcpm: Make all mcpm functions notraceDave Martin
The functions in mcpm_entry.c are mostly intended for use during scary cache and coherency disabling sequences, or do other things which confuse trace ... like powering a CPU down and not returning. Similarly for the backend code. For simplicity, this patch just makes whole files notrace. There should be more than enough traceable points on the paths to these functions, but we can be more fine-grained later if there is a need for it. Signed-off-by: Dave Martin <dave.martin@linaro.org>
2013-05-03ARM: vexpress: allow native pm ops backends to probe for psci suppportAchin Gupta
This patch allows the vexpress 'rtsm' native backend to probe the dt for presence of the psci backend. If present then the native implementation of the 'bL_platform_power_ops' is not used. Signed-off-by: Achin Gupta <achin.gupta@arm.com> Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com> Signed-off-by: Jon Medhurst <tixy@linaro.org>
2013-05-03ARM: vexpress/dcscb: handle platform coherency exit/setup and CCIDave Martin
Add the required code to properly handle race free platform coherency exit to the DCSCB power down method. The power_up_setup callback is used to enable the CCI interface for the cluster being brought up. This must be done in assembly before the kernel environment is entered. Thanks to Achin Gupta and Nicolas Pitre for their help and contributions. Signed-off-by: Dave Martin <dave.martin@linaro.org> Signed-off-by: Nicolas Pitre <nico@linaro.org> Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Pawel Moll <pawel.moll@arm.com>
2013-05-03ARM: vexpress/dcscb: do not hardcode number of CPUs per clusterNicolas Pitre
If 4 CPUs are assumed, the A15x1-A7x1 model configuration would never shut down the initial cluster as the 0xf reset bit mask will never be observed. Let's construct this mask based on the provided information in the DCSCB config register for the number of CPUs per cluster. Signed-off-by: Nicolas Pitre <nico@linaro.org> Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Pawel Moll <pawel.moll@arm.com>
2013-05-03ARM: vexpress/dcscb: add CPU use counts to the power up/down API implementationNicolas Pitre
It is possible for a CPU to be told to power up before it managed to power itself down. Solve this race with a usage count as mandated by the API definition. Signed-off-by: nicolas Pitre <nico@linaro.org> Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Pawel Moll <pawel.moll@arm.com>
2013-05-03ARM: vexpress: introduce DCSCB supportNicolas Pitre
This adds basic CPU and cluster reset controls on RTSM for the A15x4-A7x4 model configuration using the Dual Cluster System Configuration Block (DCSCB). The cache coherency interconnect (CCI) is not handled yet. Signed-off-by: Nicolas Pitre <nico@linaro.org> Reviewed-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Pawel Moll <pawel.moll@arm.com>
2013-05-03ARM: introduce a standalone CONFIG_BIG_LITTLE optionNicolas Pitre
The BIG_LITTLE config option is independent from the MCPM one. Semantically, they cover different things. MCPM can be used on non b.L systems for example. Signed-of-by: Nicolas Pitre <nico@linaro.org> Signed-off-by: Jon Medhurst <tixy@linaro.org>