[ARM] 3096/1: Add SharpSL Zaurus power and battery management core driver
authorRichard Purdie <rpurdie@rpsys.net>
Thu, 10 Nov 2005 17:42:29 +0000 (17:42 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 10 Nov 2005 17:42:29 +0000 (17:42 +0000)
commit078abcf95cdb95c78d786dbc61ae3c22ee70fb61
treefec0579ccb61371019248eee68c624734c8533d2
parentb1faebb672edecf48d4745fb05eeca3c704b6823
[ARM] 3096/1: Add SharpSL Zaurus power and battery management core driver

Patch from Richard Purdie

This patch adds a power and battery management core driver which with
the addition of the right device files, supports the c7x0 and cxx00
series of Sharp Zaurus handhelds.

The driver is complex for several reasons. Battery charging is manually
monitored and controlled. When suspended, the device needs to
periodically partially resume, check the charging status and then
re-suspend. It does without bothering the higher linux layers as
a full resume and re-suspend is unnecessary. The code is carefully
written to avoid interrupts or calling code outside the module under
these circumstances. It also vets the various wake up sources and
monitors the device's power situation.

Hooks to limit the backlight intensity and to notify the battery
monitoring code of backlight events are connected/added as the
backlight is one of the biggest users of power on the device.

Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-pxa/sharpsl.h
arch/arm/mach-pxa/sharpsl_pm.c [new file with mode: 0644]
drivers/video/backlight/corgi_bl.c
include/asm-arm/arch-pxa/sharpsl.h