diff options
author | Rong Dian <b38775@freescale.com> | 2012-05-03 20:08:50 +0800 |
---|---|---|
committer | Jason Liu <r64343@freescale.com> | 2012-07-20 13:37:03 +0800 |
commit | 3e440e5bfbbd8c6a695be9ab37543fdb924453f9 (patch) | |
tree | f21e41d51de1e9d06a02cd6cfa41b7522b0c8107 /include | |
parent | 3b74e1b394c6522888a589da176b5dc7a37a9812 (diff) |
ENGR00181094-4: MAX8903: improve battery charger driver
1.change the battery driver's name to sabresd_battery.c ,it
means this driver is only special for sabersd boards.
2.fix battery charger function bugs and improve driver code.
Signed-off-by: Rong Dian <b38775@freescale.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/power/sabresd_battery.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/include/linux/power/sabresd_battery.h b/include/linux/power/sabresd_battery.h new file mode 100644 index 000000000000..c251a748a0db --- /dev/null +++ b/include/linux/power/sabresd_battery.h @@ -0,0 +1,62 @@ +/* + * sabresd_battery.h - Maxim 8903 USB/Adapter Charger Driver + * + * Copyright (C) 2011 Samsung Electronics + * Copyright (C) 2011-2012 Freescale Semiconductor, Inc. + * Based on max8903_charger.h + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#ifndef __MAX8903_SABRESD_H__ +#define __MAX8903_SABRESD_H__ + +struct max8903_pdata { + /* + * GPIOs + * cen, chg, flt, and usus are optional. + * dok, dcm, and uok are not optional depending on the status of + * dc_valid and usb_valid. + */ + int cen; /* Charger Enable input */ + int dok; /* DC(Adapter) Power OK output */ + int uok; /* USB Power OK output */ + int chg; /* Charger status output */ + int flt; /* Fault output */ + int dcm; /* Current-Limit Mode input (1: DC, 2: USB) */ + int usus; /* USB Suspend Input (1: suspended) */ + + /* DCM wired to Logic High + Set this true when DCM pin connect to Logic high.*/ + bool dcm_always_high; + + /* + * DC(Adapter/TA) is wired + * When dc_valid is true, + * dok and dcm should be valid. + * + * At least one of dc_valid or usb_valid should be true. + */ + bool dc_valid; + /* + * USB is wired + * When usb_valid is true, + * uok should be valid. + */ + bool usb_valid; +}; + +#endif /* __SABRESD_BATTERY_H__ */ |