linux-stable/include/linux/pda_power.h
Dima Zavin 9ad63986c6 pda_power: Add support for using otg transceiver events
If the platform data sets the use_otg_notifier flag,
the driver will now register an otg notifier callback and listen
to transceiver events for AC/USB plug-in events instead. This would
normally be used by not specifying is_xx_online callbacks and
not specifying any irqs so the state machine is completely driven
from OTG xceiver events.

Signed-off-by: Dima Zavin <dima@android.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
2011-08-19 21:03:22 +04:00

42 lines
1.1 KiB
C

/*
* Common power driver for PDAs and phones with one or two external
* power supplies (AC/USB) connected to main and backup batteries,
* and optional builtin charger.
*
* Copyright © 2007 Anton Vorontsov <cbou@mail.ru>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#ifndef __PDA_POWER_H__
#define __PDA_POWER_H__
#define PDA_POWER_CHARGE_AC (1 << 0)
#define PDA_POWER_CHARGE_USB (1 << 1)
struct device;
struct pda_power_pdata {
int (*init)(struct device *dev);
int (*is_ac_online)(void);
int (*is_usb_online)(void);
void (*set_charge)(int flags);
void (*exit)(struct device *dev);
int (*suspend)(pm_message_t state);
int (*resume)(void);
char **supplied_to;
size_t num_supplicants;
unsigned int wait_for_status; /* msecs, default is 500 */
unsigned int wait_for_charger; /* msecs, default is 500 */
unsigned int polling_interval; /* msecs, default is 2000 */
unsigned long ac_max_uA; /* current to draw when on AC */
bool use_otg_notifier;
};
#endif /* __PDA_POWER_H__ */