Skip to content

Commit

Permalink
PM / shmobile: Make TMU driver use pm_genpd_dev_always_on()
Browse files Browse the repository at this point in the history
Make the TMU clocksource driver mark its device as "always on"
using pm_genpd_dev_always_on() to protect it from surprise power
removals and make sh7372_add_standard_devices() add TMU devices on
sh7372 to the A4R power domain so that their "always on" flags
are taken into account as appropriate.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Tested-by: Simon Horman <horms@verge.net.au>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Cc: stable@vger.kernel.org
  • Loading branch information
Rafael J. Wysocki committed Mar 16, 2012
1 parent 1e78a0c commit 2ee619f
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 0 deletions.
2 changes: 2 additions & 0 deletions arch/arm/mach-shmobile/setup-sh7372.c
Original file line number Diff line number Diff line change
Expand Up @@ -1041,6 +1041,8 @@ void __init sh7372_add_standard_devices(void)
sh7372_add_device_to_domain(&sh7372_a4r, &veu2_device);
sh7372_add_device_to_domain(&sh7372_a4r, &veu3_device);
sh7372_add_device_to_domain(&sh7372_a4r, &jpu_device);
sh7372_add_device_to_domain(&sh7372_a4r, &tmu00_device);
sh7372_add_device_to_domain(&sh7372_a4r, &tmu01_device);
}

void __init sh7372_add_early_devices(void)
Expand Down
4 changes: 4 additions & 0 deletions drivers/clocksource/sh_tmu.c
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
#include <linux/sh_timer.h>
#include <linux/slab.h>
#include <linux/module.h>
#include <linux/pm_domain.h>

struct sh_tmu_priv {
void __iomem *mapbase;
Expand Down Expand Up @@ -410,6 +411,9 @@ static int __devinit sh_tmu_probe(struct platform_device *pdev)
struct sh_tmu_priv *p = platform_get_drvdata(pdev);
int ret;

if (!is_early_platform_device(pdev))
pm_genpd_dev_always_on(&pdev->dev, true);

if (p) {
dev_info(&pdev->dev, "kept as earlytimer\n");
return 0;
Expand Down

0 comments on commit 2ee619f

Please sign in to comment.