linux/arch/arm
Deepthi Dharwar e978aa7d7d cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state
Cpuidle governor only suggests the state to enter using the
governor->select() interface, but allows the low level driver to
override the recommended state. The actual entered state
may be different because of software or hardware demotion. Software
demotion is done by the back-end cpuidle driver and can be accounted
correctly. Current cpuidle code uses last_state field to capture the
actual state entered and based on that updates the statistics for the
state entered.

Ideally the driver enter routine should update the counters,
and it should return the state actually entered rather than the time
spent there. The generic cpuidle code should simply handle where
the counters live in the sysfs namespace, not updating the counters.

Reference:
https://lkml.org/lkml/2011/3/25/52

Signed-off-by: Deepthi Dharwar <deepthi@linux.vnet.ibm.com>
Signed-off-by: Trinabh Gupta <g.trinabh@gmail.com>
Tested-by: Jean Pihet <j-pihet@ti.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Acked-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Len Brown <len.brown@intel.com>
2011-11-06 21:13:30 -05:00
..
boot arm/dt: Tegra: Update SDHCI nodes to match bindings 2011-09-20 22:56:53 +02:00
common ARM: 7128/1: vic: Don't write to the read-only register VIC_IRQ_STATUS 2011-10-15 11:04:22 +01:00
configs Merge branch 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:41:04 -07:00
include/asm ARM: 7122/1: localtimer: add header linux/errno.h explicitly 2011-10-15 11:04:22 +01:00
kernel ARM: 7117/1: perf: fix HW_CACHE_* events on Cortex-A9 2011-10-15 11:04:22 +01:00
lib arm: remove "optimized" SHA1 routines 2011-08-07 14:07:03 -07:00
mach-at91 cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state 2011-11-06 21:13:30 -05:00
mach-bcmring Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:12:10 -07:00
mach-clps711x
mach-cns3xxx ARM: cns3xxx: Fix newly introduced warnings in the PCIe code 2011-09-09 23:33:34 +04:00
mach-davinci cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state 2011-11-06 21:13:30 -05:00
mach-dove ARM: Dove: fix second SPI initialization call 2011-09-14 14:31:43 +02:00
mach-ebsa110
mach-ep93xx ARM: 6967/1: ep93xx: ts72xx: fix board model detection 2011-08-15 11:58:59 +01:00
mach-exynos4 cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state 2011-11-06 21:13:30 -05:00
mach-footbridge Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm 2011-08-29 16:34:07 -07:00
mach-gemini
mach-h720x Merge branch 'devel-stable' into for-next 2011-07-22 23:09:07 +01:00
mach-imx ARM: 7051/1: cpuimx* boards: fix mach-types errors 2011-08-22 15:57:22 +01:00
mach-integrator mach-integrator: fix VGA base regression 2011-09-20 22:58:41 +02:00
mach-iop13xx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-iop32x Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-iop33x Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-ixp4xx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-ixp23xx Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-ixp2000 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-kirkwood cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state 2011-11-06 21:13:30 -05:00
mach-ks8695 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-l7200/include/mach
mach-lpc32xx Merge branch 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:41:04 -07:00
mach-mmp ARM: mmp: Change the way we use timer 0 as clockevent timer. 2011-08-11 10:10:46 +08:00
mach-msm Merge branch 'msm-move-gpio' of git://codeaurora.org/quic/kernel/davidb/linux-msm into gpio/next 2011-08-01 15:16:05 +01:00
mach-mv78xx0 Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-mx5 ARM: mx5: board-cpuimx51.c fixup irq_to_gpio() usage 2011-08-08 08:24:16 +02:00
mach-mxs Merge branch 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:41:04 -07:00
mach-netx
mach-nomadik ARM: Consolidate the clkdev header files 2011-07-19 18:09:45 +02:00
mach-nuc93x Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:12:10 -07:00
mach-omap1 Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:12:10 -07:00
mach-omap2 cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state 2011-11-06 21:13:30 -05:00
mach-orion5x ARM: mach-orion5x: add missing header file <linux/vga.h> 2011-08-25 09:08:18 -05:00
mach-pnx4008 Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:12:10 -07:00
mach-prima2 ARM: CSR: add missing sentinels to of_device_id tables 2011-09-11 09:11:26 +08:00
mach-pxa Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-realview ARM: realview: ensure visibility of writes during reset 2011-08-12 15:40:57 +01:00
mach-rpc
mach-s3c64xx ARM: S3C64XX: Remove un-used code backlight code on SMDK6410 2011-09-15 13:59:58 +09:00
mach-s3c2400/include/mach ARM: mach-s3c2400: delete 2011-07-18 10:59:26 -04:00
mach-s3c2410 ARM: S3C24XX: Fix s3c24xx build errors if !CONFIG_PM 2011-10-22 04:00:53 +09:00
mach-s3c2412 ARM: S3C24XX: Fix s3c24xx build errors if !CONFIG_PM 2011-10-22 04:00:53 +09:00
mach-s3c2416 ARM: S3C24XX: Fix s3c24xx build errors if !CONFIG_PM 2011-10-22 04:00:53 +09:00
mach-s3c2440 ARM: S3C24XX: Fix s3c24xx build errors if !CONFIG_PM 2011-10-22 04:00:53 +09:00
mach-s3c2443 ARM: S3C2443: Fix bit-reset in setrate of clk_armdiv 2011-09-26 10:30:29 +09:00
mach-s5p64x0 ARM: S5P64X0: Replace irq_gc_ack() with irq_gc_ack_set_bit() 2011-08-19 20:56:17 +09:00
mach-s5pc100 Merge branch 'next-samsung-clkdev-fix' into next-samsung-devel 2011-07-21 17:28:23 +09:00
mach-s5pv210 ARM: S5PV210: Rename sclk_cam clocks for FIMC media driver 2011-09-27 07:00:53 +09:00
mach-sa1100 mach-sa1100: fix PCI build problem 2011-08-10 16:00:48 +00:00
mach-shark Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-shmobile Merge branch 'rmobile-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-3.x 2011-08-29 13:37:17 -07:00
mach-spear3xx ARM: Consolidate the clkdev header files 2011-07-19 18:09:45 +02:00
mach-spear6xx ARM: Consolidate the clkdev header files 2011-07-19 18:09:45 +02:00
mach-tcc8k
mach-tegra ARM: tegra: fix compilation error due to mach/hardware.h removal 2011-10-10 14:46:25 +12:00
mach-u300 Merge branch 'next/devel' of ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:41:04 -07:00
mach-ux500 ARM: mach-ux500: enable fix for ARM errata 754322 2011-10-07 17:38:35 +02:00
mach-versatile Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2011-07-29 23:35:05 -07:00
mach-vexpress ARM: 7003/1: vexpress: Add clock definition for the SP805. 2011-08-24 09:45:21 +01:00
mach-vt8500
mach-w90x900 ARM: Consolidate the clkdev header files 2011-07-19 18:09:45 +02:00
mach-zynq ARM: zynq: remove incorrectly deleted file 2011-07-28 16:02:53 +00:00
mm ARM: 7113/1: mm: Align bank start to MAX_ORDER_NR_PAGES 2011-10-01 17:49:18 +01:00
nwfpe
oprofile
plat-iop ARM: convert PCI defines to variables 2011-07-12 11:19:29 -05:00
plat-mxc iMX: Fix build for iMX53 2011-08-08 08:38:45 +02:00
plat-nomadik
plat-omap OMAP: omap_device: fix !CONFIG_SUSPEND case in _noirq handlers 2011-09-06 13:19:58 -07:00
plat-orion
plat-pxa mmc: sdhci-pxa: move platform data to include/linux/platform_data 2011-07-20 17:20:52 -04:00
plat-s3c24xx Merge branch 'next/deletion' of git+ssh://master.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-25 12:43:28 -07:00
plat-s5p ARM: S5P: fix offset calculation on gpio-interrupt 2011-10-21 18:05:02 +09:00
plat-samsung ARM: SAMSUNG: fix to prevent declaring duplicated 2011-09-15 15:54:15 +09:00
plat-spear Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/linux-arm-soc 2011-07-26 17:12:10 -07:00
plat-tcc ARM: Consolidate the clkdev header files 2011-07-19 18:09:45 +02:00
plat-versatile
tools ARM: 7051/1: cpuimx* boards: fix mach-types errors 2011-08-22 15:57:22 +01:00
vfp Merge branch 'devel-stable' into for-next 2011-07-22 23:09:07 +01:00
Kconfig ARM: 7091/1: errata: D-cache line maintenance operation by MVA may not succeed 2011-09-17 12:47:17 +01:00
Kconfig-nommu
Kconfig.debug
Makefile Merge branch 'imx/dt' into next/dt 2011-07-28 15:25:46 +00:00