summaryrefslogtreecommitdiff
path: root/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603
diff options
context:
space:
mode:
authorSrikant Patnaik2015-01-11 12:28:04 +0530
committerSrikant Patnaik2015-01-11 12:28:04 +0530
commit871480933a1c28f8a9fed4c4d34d06c439a7a422 (patch)
tree8718f573808810c2a1e8cb8fb6ac469093ca2784 /ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603
parent9d40ac5867b9aefe0722bc1f110b965ff294d30d (diff)
downloadFOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.tar.gz
FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.tar.bz2
FOSSEE-netbook-kernel-source-871480933a1c28f8a9fed4c4d34d06c439a7a422.zip
Moved, renamed, and deleted files
The original directory structure was scattered and unorganized. Changes are basically to make it look like kernel structure.
Diffstat (limited to 'ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603')
-rwxr-xr-xANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/Makefile5
-rwxr-xr-xANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.c189
-rwxr-xr-xANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.h12
-rwxr-xr-xANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.c513
-rwxr-xr-xANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.h124
5 files changed, 0 insertions, 843 deletions
diff --git a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/Makefile b/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/Makefile
deleted file mode 100755
index c30df937..00000000
--- a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-
-s_wmt_batt_vt1603-objs += vt1603.o batt_leds.o
-
-obj-m += s_wmt_batt_vt1603.o
-
diff --git a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.c b/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.c
deleted file mode 100755
index 108f40f9..00000000
--- a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.c
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * batt_leds.c - WonderMedia Battery LED Driver.
- *
- * Copyright (C) 2013 WonderMedia Technologies, Inc.
- *
- * 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.
- *
- * 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.,
- * 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#include <linux/leds.h>
-#include <linux/rtc.h>
-#include <linux/platform_device.h>
-#include <linux/power_supply.h>
-#include <linux/gpio.h>
-#include <mach/wmt_iomux.h>
-#include <mach/wmt_env.h>
-
-enum {
- LED_GREEN = 0,
- LED_RED,
-};
-
-struct batt_led_trigger {
- char *name;
- struct led_trigger *trigger;
-};
-
-#define RTC_NAME "rtc0"
-static struct rtc_device *rtc_dev = NULL;
-static bool battery_led_registered = false;
-
-static struct batt_led_trigger batt_led_triggers[] = {
- [LED_GREEN] = {
- .name = "bat-green",
- },
- [LED_RED] = {
- .name = "bat-red",
- }
-};
-
-static struct gpio_led batt_leds[] = {
- [LED_GREEN] = {
- .name = "bat-green",
- .default_trigger = "bat-green",
- .retain_state_suspended = 1,
- .active_low = 0,
- },
- [LED_RED] = {
- .name = "bat-red",
- .default_trigger = "bat-red",
- .retain_state_suspended = 1,
- .active_low = 0,
- },
-};
-
-static struct gpio_led_platform_data batt_leds_data = {
- .leds = batt_leds,
- .num_leds = ARRAY_SIZE(batt_leds),
-};
-
-static struct platform_device batt_leds_dev = {
- .name = "leds-gpio",
- .id = -1,
- .dev = {
- .platform_data = &batt_leds_data,
- },
-};
-
-static int parse_battery_led_param(void)
-{
- char env[] = "wmt.charger.led";
- char s[64];
- size_t l = sizeof(s);
- int id, r, g;
-
- if (wmt_getsyspara(env, s, &l))
- return -EINVAL;
-
- if (sscanf(s, "%d:%d:%d", &id, &r, &g) != 3)
- return -EINVAL;
-
- if (id != 1 || !gpio_is_valid(r) || !gpio_is_valid(g))
- return -EINVAL;
-
- batt_leds[LED_GREEN].gpio = g;
- batt_leds[LED_RED].gpio = r;
-
- pr_info("charger-led: charging (gpio%d), full (gpio%d)\n", r, g);
- return 0;
-}
-
-int batt_leds_update(int status)
-{
- struct led_trigger *r = batt_led_triggers[LED_RED].trigger;
- struct led_trigger *g = batt_led_triggers[LED_GREEN].trigger;
-
- if (battery_led_registered == false)
- return 0;
-
- switch (status) {
- case POWER_SUPPLY_STATUS_CHARGING:
- led_trigger_event(r, LED_FULL);
- led_trigger_event(g, LED_OFF);
- gpio_direction_input(batt_leds[LED_GREEN].gpio);
- break;
- case POWER_SUPPLY_STATUS_FULL:
- led_trigger_event(r, LED_OFF);
- led_trigger_event(g, LED_FULL);
- break;
- case POWER_SUPPLY_STATUS_DISCHARGING:
- default:
- led_trigger_event(r, LED_OFF);
- led_trigger_event(g, LED_OFF);
- gpio_direction_input(batt_leds[LED_GREEN].gpio);
- break;
- }
- return 0;
-}
-
-void batt_leds_suspend_prepare(void)
-{
- struct rtc_wkalrm tmp;
- unsigned long time, now;
- //unsigned long add = 30; /* seconds */
- unsigned long add = 120; /* seconds */
-
- if (battery_led_registered == false)
- return;
-
- if (!rtc_dev) {
- rtc_dev = rtc_class_open(RTC_NAME);
- if (IS_ERR_OR_NULL(rtc_dev)) {
- rtc_dev = NULL;
- pr_err("Cannot get RTC %s, %ld.\n", RTC_NAME, PTR_ERR(rtc_dev));
- return;
- }
- }
-
- tmp.enabled = 1;
- rtc_read_time(rtc_dev, &tmp.time);
- rtc_tm_to_time(&tmp.time, &now);
- time = now + add;
-
- rtc_time_to_tm(time, &tmp.time);
- rtc_set_alarm(rtc_dev, &tmp);
-
-}
-
-void batt_leds_resume_complete(void)
-{
- if (rtc_dev) {
- rtc_class_close(rtc_dev);
- rtc_dev = NULL;
- }
-}
-
-int batt_leds_setup(void)
-{
- int i;
-
- if (parse_battery_led_param())
- return -EINVAL;
-
- platform_device_register(&batt_leds_dev);
-
- for (i = 0; i < ARRAY_SIZE(batt_led_triggers); ++i)
- led_trigger_register_simple(batt_led_triggers[i].name,
- &batt_led_triggers[i].trigger);
- battery_led_registered = true;
- return 0;
-}
-
-void batt_leds_cleanup(void)
-{
- int i;
-
- if (battery_led_registered == true) {
- platform_device_unregister(&batt_leds_dev);
- for (i = 0; i < ARRAY_SIZE(batt_led_triggers); ++i)
- led_trigger_unregister_simple(batt_led_triggers[i].trigger);
- battery_led_registered = false;
- }
-}
diff --git a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.h b/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.h
deleted file mode 100755
index dbcaa657..00000000
--- a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/batt_leds.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifndef _BATT_LEDS_H_
-#define _BATT_LEDS_H_
-
-extern int batt_leds_setup(void);
-extern void batt_leds_cleanup(void);
-extern void batt_leds_suspend_prepare(void);
-extern void batt_leds_resume_complete(void);
-extern int batt_leds_update(int status);
-
-#endif /* #ifndef _BATT_LEDS_H_ */
-
-
diff --git a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.c b/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.c
deleted file mode 100755
index e75a99e8..00000000
--- a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.c
+++ /dev/null
@@ -1,513 +0,0 @@
-/*
- * vt1603.c - WonderMedia VT1603 Adc Battery Driver.
- *
- * Copyright (C) 2013 WonderMedia Technologies, Inc.
- *
- * 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.
- *
- * 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.,
- * 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#include <linux/init.h>
-#include <linux/module.h>
-#include <linux/proc_fs.h>
-#include <linux/power_supply.h>
-#include <linux/platform_device.h>
-#include <linux/power/wmt_battery.h>
-#include <mach/wmt_env.h>
-
-#include "vt1603.h"
-#include "batt_leds.h"
-
-enum {
- COMPENSATION_VOLUME = 0,
- COMPENSATION_BRIGHTNESS,
- COMPENSATION_WIFI,
- COMPENSATION_VIDEO,
- COMPENSATION_USB,
- COMPENSATION_HDMI,
- COMPENSATION_COUNT
-};
-
-static const char *compensation_strings[] = {
- "volume",
- "brightness",
- "wifi",
- "video",
- "usb",
- "hdmi"
-};
-
-struct vt1603_device_info {
- struct vt1603 *vt1603;
- struct device *dev;
- struct power_supply ps_bat;
- struct mutex mutex;
- int compensation[COMPENSATION_COUNT];
-
- int capacity;
- int sleeping;
- int debug;
-};
-
-static struct vt1603_device_info *vt1603_dev_info = NULL;
-
-static int vt1603_set_reg8(struct vt1603 *vt1603, u8 reg, u8 val)
-{
- int ret = vt1603->reg_write(vt1603, reg, val);
- if (ret)
- pr_err("vt1603 battery write error, errno%d\n", ret);
- return ret;
-}
-
-static u8 vt1603_get_reg8(struct vt1603 *vt1603, u8 reg)
-{
- u8 val = 0;
- int ret = 0;
-
- ret = vt1603->reg_read(vt1603, reg, &val);
- if (ret < 0){
- pr_err("vt1603 battery read error, errno%d\n", ret);
- return 0;
- }
-
- return val;
-}
-
-static int vt1603_read8(struct vt1603 *vt1603, u8 reg, u8 *data)
-{
- int ret = vt1603->reg_read(vt1603, reg, data);
- if (ret)
- pr_err("vt1603 battery read error, errno%d\n", ret);
- return ret;
-}
-
-static void vt1603_setbits(struct vt1603 *vt1603, u8 reg, u8 mask)
-{
- u8 tmp = vt1603_get_reg8(vt1603, reg) | mask;
- vt1603_set_reg8(vt1603, reg, tmp);
-}
-
-static void vt1603_clrbits(struct vt1603 *vt1603, u8 reg, u8 mask)
-{
- u8 tmp = vt1603_get_reg8(vt1603, reg) & (~mask);
- vt1603_set_reg8(vt1603, reg, tmp);
-}
-
-#define ADC_DATA(low, high) ((((high) & 0x0F) << 8) + (low))
-
-static int vt1603_get_bat_data(struct vt1603 *vt1603,int *data)
-{
- int ret = 0;
- u8 data_l, data_h;
-
- ret |= vt1603_read8(vt1603, VT1603_DATL_REG, &data_l);
- ret |= vt1603_read8(vt1603, VT1603_DATH_REG, &data_h);
-
- *data = ADC_DATA(data_l, data_h);
- return ret;
-}
-
-static void vt1603_switch_to_bat_mode(struct vt1603 *vt1603)
-{
- vt1603_set_reg8(vt1603, VT1603_CR_REG, 0x00);
- vt1603_set_reg8(vt1603, 0xc6, 0x00);
- vt1603_set_reg8(vt1603, VT1603_AMCR_REG, BIT0);
-}
-
-static inline void vt1603_bat_pen_manual(struct vt1603 *vt1603)
-{
- vt1603_setbits(vt1603, VT1603_INTCR_REG, BIT7);
-}
-
-static void vt1603_bat_power_up(struct vt1603 *vt1603)
-{
- if (vt1603_get_reg8(vt1603, VT1603_PWC_REG) != 0x08)
- vt1603_set_reg8(vt1603, VT1603_PWC_REG, 0x08);
-}
-
-static int vt1603_read_volt(struct vt1603 *vt1603)
-{
- int timeout = 2000;
- int ret = 0;
- int value;
-
- // wait for interrupt that adc converted completed.
- do {
- if (vt1603_get_reg8(vt1603, VT1603_INTS_REG) & BIT0)
- break;
- } while (timeout--);
-
- if (!timeout) {
- pr_err("wait adc end timeout ?!\n");
- return -ETIMEDOUT;
- }
-
- ret = vt1603_get_bat_data(vt1603, &value);
- if (ret < 0) {
- pr_err("vt1603 get bat adc data Failed!\n");
- return ret;
- }
-
- return value;
-}
-
-static int vt1603_manual_read_adc(struct vt1603 *vt1603)
-{
- int i;
- int ret = 0;
- uint32_t sum = 0;
-
- /* enable sar-adc power and clock */
- vt1603_bat_power_up(vt1603);
- /* enable pen down/up to avoid miss irq */
- vt1603_bat_pen_manual(vt1603);
- /* switch vt1603 to battery detect mode */
- vt1603_switch_to_bat_mode(vt1603);
- /* do conversion use battery manual mode */
- vt1603_setbits(vt1603, VT1603_INTS_REG, BIT0);
- vt1603_set_reg8(vt1603, VT1603_CR_REG, BIT4);
-
- for (i = 0; i < 4; i++) {
- ret = vt1603_read_volt(vt1603);
- if (ret < 0)
- break;
- sum += ret;
-
- vt1603_setbits(vt1603, VT1603_INTS_REG, BIT0);
- vt1603_set_reg8(vt1603, VT1603_CR_REG, BIT4); //start manual ADC mode
- }
- vt1603_clrbits(vt1603, VT1603_INTCR_REG, BIT7);
- vt1603_setbits(vt1603, VT1603_INTS_REG, BIT0 | BIT3);
- vt1603_set_reg8(vt1603, VT1603_CR_REG, BIT1);
-
- return (ret < 0) ? ret : (sum >> 2);
-}
-
-static inline int volt_reg_to_mV(int value)
-{
- return ((value * 1047) / 1000);
-}
-
-static int vt1603_bat_read_voltage(struct vt1603_device_info *di, int *intval)
-{
- int ret = vt1603_manual_read_adc(di->vt1603);
- if (ret < 0)
- return ret;
-
- *intval = volt_reg_to_mV(ret);
- return 0;
-}
-
-static int vt1603_bat_read_status(struct vt1603_device_info *di, int *intval)
-{
- int status;
-
- status = charger_get_status();
- if (status < 0)
- return status;
-
- if (status == POWER_SUPPLY_STATUS_CHARGING && di->capacity == 100)
- status = POWER_SUPPLY_STATUS_FULL;
-
- batt_leds_update(status);
- *intval = status;
- return 0;
-}
-
-static int vt1603_proc_read(char *buf, char **start, off_t offset, int len,
- int *eof, void *data)
-{
- int l = 0, i;
- int ret, status, dcin, voltage, full;
- struct vt1603_device_info *di = vt1603_dev_info;
-
- mutex_lock(&di->mutex);
-
- ret = vt1603_bat_read_status(di, &status);
- if (ret) {
- pr_err("vt1603_bat_read_status failed\n");
- goto out;
- }
- voltage = vt1603_manual_read_adc(di->vt1603);
- if (voltage < 0) {
- pr_err("vt1603_manual_read_adc failed\n");
- goto out;
- }
-
- dcin = power_supply_is_system_supplied();
- full = charger_is_full();
-
- l += sprintf(buf + l, "status : %d\n", status);
- l += sprintf(buf + l, "dcin : %d\n", dcin);
- l += sprintf(buf + l, "voltage : %d\n", voltage);
- l += sprintf(buf + l, "full : %d\n", full);
- l += sprintf(buf + l, "sleeping : %d\n", di->sleeping);
- l += sprintf(buf + l, "debug : %d\n", di->debug);
-
- for (i = 0; i < COMPENSATION_COUNT; i++) {
- l += sprintf(buf +l, "compensation %10s : %d\n",
- compensation_strings[i], di->compensation[i]);
- }
-
- /* clear after read */
- di->sleeping = 0;
-out:
- mutex_unlock(&di->mutex);
- return l;
-}
-
-static int vt1603_proc_write(struct file *file, const char *buffer,
- unsigned long count, void *data)
-{
- int bm, usage;
- struct vt1603_device_info *di = vt1603_dev_info;
- int capacity;
-
- if (sscanf(buffer, "capacity=%d", &capacity)) {
- di->capacity = capacity;
- power_supply_changed(&di->ps_bat);
- return count;
- }
-
- if (sscanf(buffer, "debug=%d", &di->debug))
- return count;
-
- if (sscanf(buffer, "MODULE_CHANGE:%d-%d", &bm, &usage) < 2)
- return 0;
-
- if (bm < 0 || bm >= COMPENSATION_COUNT) {
- pr_err("bm %d error, [0, %d)\n", bm, COMPENSATION_COUNT);
- return 0;
- }
-
- if (usage > 100 || usage < 0) {
- pr_err("usage %d error\n", usage);
- return 0;
- }
-
- mutex_lock(&di->mutex);
- di->compensation[bm] = usage;
- mutex_unlock(&di->mutex);
- return count;
-}
-
-#define VT1603_PROC_NAME "battery_calibration"
-
-static void vt1603_proc_init(void)
-{
- struct proc_dir_entry *entry;
-
- entry = create_proc_entry(VT1603_PROC_NAME, 0666, NULL);
- if (entry) {
- entry->read_proc = vt1603_proc_read;
- entry->write_proc = vt1603_proc_write;
- }
-}
-
-static void vt1603_proc_cleanup(void)
-{
- remove_proc_entry(VT1603_PROC_NAME, NULL);
-}
-
-#define to_vt1603_device_info(x) container_of((x), \
- struct vt1603_device_info, ps_bat);
-
-static int vt1603_battery_get_property(struct power_supply *psy,
- enum power_supply_property psp,
- union power_supply_propval *val)
-{
- int ret = 0;
- struct vt1603_device_info *di = to_vt1603_device_info(psy);
-
- mutex_lock(&di->mutex);
- switch (psp) {
- case POWER_SUPPLY_PROP_STATUS:
- ret = vt1603_bat_read_status(di, &val->intval);
- break;
- case POWER_SUPPLY_PROP_CAPACITY:
- val->intval = di->capacity;
- break;
- case POWER_SUPPLY_PROP_VOLTAGE_NOW:
- ret = vt1603_bat_read_voltage(di, &val->intval);
- break;
- case POWER_SUPPLY_PROP_TECHNOLOGY:
- val->intval = POWER_SUPPLY_TECHNOLOGY_LION;
- break;
- case POWER_SUPPLY_PROP_PRESENT:
- val->intval = 1;
- break;
- case POWER_SUPPLY_PROP_HEALTH:
- val->intval = POWER_SUPPLY_HEALTH_GOOD;
- break;
- case POWER_SUPPLY_PROP_TEMP:
- val->intval = 250;
- break;
- case POWER_SUPPLY_PROP_ONLINE:
- val->intval = 1;
- break;
- default:
- ret = -EINVAL;
- break;
- }
- mutex_unlock(&di->mutex);
- return ret;
-}
-
-static void vt1603_external_power_changed(struct power_supply *psy)
-{
- power_supply_changed(psy);
-}
-
-static enum power_supply_property vt1603_battery_props[] = {
- POWER_SUPPLY_PROP_STATUS,
- POWER_SUPPLY_PROP_HEALTH,
- POWER_SUPPLY_PROP_PRESENT,
- POWER_SUPPLY_PROP_TEMP,
- POWER_SUPPLY_PROP_ONLINE,
- POWER_SUPPLY_PROP_CAPACITY,
- POWER_SUPPLY_PROP_VOLTAGE_NOW,
- POWER_SUPPLY_PROP_TECHNOLOGY,
-};
-
-static int __devinit vt1603_batt_probe(struct platform_device *pdev)
-{
- struct vt1603_device_info *di;
- int ret;
-
- di = kzalloc(sizeof(*di), GFP_KERNEL);
- if (!di) {
- dev_err(&pdev->dev, "no memery\n");
- return -ENOMEM;
- }
-
- di->dev = &pdev->dev;
- di->vt1603 = dev_get_platdata(&pdev->dev);
- di->capacity = 50;
-
- mutex_init(&di->mutex);
-
- di->ps_bat.name = "battery";
- di->ps_bat.type = POWER_SUPPLY_TYPE_BATTERY;
- di->ps_bat.properties = vt1603_battery_props;
- di->ps_bat.num_properties = ARRAY_SIZE(vt1603_battery_props);
- di->ps_bat.get_property = vt1603_battery_get_property;
- di->ps_bat.external_power_changed = vt1603_external_power_changed;
-
- ret = power_supply_register(di->dev, &di->ps_bat);
- if (ret) {
- dev_err(di->dev, "failed to register battery: %d\n", ret);
- kfree(di);
- return ret;
- }
-
- platform_set_drvdata(pdev, di);
- vt1603_dev_info = di;
-
- vt1603_proc_init();
-
- pr_info("VT1603 Battery Driver Installed!\n");
- return 0;
-}
-
-static int __devexit vt1603_batt_remove(struct platform_device *pdev)
-{
- struct vt1603_device_info *di = platform_get_drvdata(pdev);
- vt1603_proc_cleanup();
- power_supply_unregister(&di->ps_bat);
- kfree(di);
- vt1603_dev_info = NULL;
- pr_info("VT1603 Battery Driver Removed!\n");
- return 0;
-}
-
-static int vt1603_batt_suspend_prepare(struct device *dev)
-{
- struct vt1603_device_info *di = dev_get_drvdata(dev);
- int status, ret;
-
- ret = vt1603_bat_read_status(di, &status);
- if (ret) {
- pr_err("vt1603_bat_read_status failed\n");
- return 0;
- }
-
- if (status == POWER_SUPPLY_STATUS_CHARGING)
- batt_leds_suspend_prepare();
-
- return 0;
-}
-
-static int vt1603_batt_suspend(struct device *dev)
-{
- return 0;
-}
-
-static int vt1603_batt_resume(struct device *dev)
-{
- struct vt1603_device_info *di = dev_get_drvdata(dev);
- di->sleeping = 1;
- return 0;
-}
-
-static void vt1603_batt_resume_complete(struct device *dev)
-{
- return batt_leds_resume_complete();
-}
-
-static const struct dev_pm_ops vt1603_batt_manager_pm = {
- .prepare = vt1603_batt_suspend_prepare,
- .suspend = vt1603_batt_suspend,
- .resume = vt1603_batt_resume,
- .complete = vt1603_batt_resume_complete,
-};
-
-static struct platform_driver vt1603_batt_driver = {
- .driver = {
- .name = "vt1603-batt",
- .owner = THIS_MODULE,
- .pm = &vt1603_batt_manager_pm,
- },
- .probe = vt1603_batt_probe,
- .remove = __devexit_p(vt1603_batt_remove),
-};
-
-static int parse_battery_param(void)
-{
- char env[] = "wmt.battery.param";
- char buf[64];
- size_t l = sizeof(buf);
-
- if (wmt_getsyspara(env, buf, &l))
- return -EINVAL;
-
- return prefixcmp(buf, "vt1603") ? -ENODEV : 0;
-}
-
-static int __init vt1603_batt_init(void)
-{
- if (parse_battery_param())
- return -EINVAL;
-
- batt_leds_setup();
- return platform_driver_register(&vt1603_batt_driver);
-}
-
-static void __exit vt1603_batt_exit(void)
-{
- platform_driver_unregister(&vt1603_batt_driver);
- batt_leds_cleanup();
-}
-
-module_init(vt1603_batt_init);
-module_exit(vt1603_batt_exit);
-
-MODULE_AUTHOR("WonderMedia");
-MODULE_DESCRIPTION("WonderMedia VT1603 Adc Battery Driver");
-MODULE_LICENSE("GPL");
-
diff --git a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.h b/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.h
deleted file mode 100755
index 24471226..00000000
--- a/ANDROID_3.4.5/drivers/power/wmt_battery/gauge/vt1603/vt1603.h
+++ /dev/null
@@ -1,124 +0,0 @@
-/*++
- Copyright (c) 2008 WonderMedia Technologies, Inc.
-
- 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, see <http://www.gnu.org/licenses/>.
-
- WonderMedia Technologies, Inc.
- 10F, 529, Chung-Cheng Road, Hsin-Tien, Taipei 231, R.O.C.
---*/
-
-#ifndef __VT1603_BAT_H__
-#define __VT1603_BAT_H__
-#include <linux/mfd/vt1603/core.h>
-
-#define BIT0 0x00000001
-#define BIT1 0x00000002
-#define BIT2 0x00000004
-#define BIT3 0x00000008
-#define BIT4 0x00000010
-#define BIT5 0x00000020
-#define BIT6 0x00000040
-#define BIT7 0x00000080
-#define BIT8 0x00000100
-
-/* VT1603 touch panel state */
-#define TS_PENDOWN_STATE 0x00
-#define TS_PENUP_STATE 0x01
-
-/* vt1603 bus type config */
-#define VT1603_MAX_SPI_CLK (20*1000*1000)
-#define SPI_DEFAULT_CLK (12*1000*1000)
-#define IDLE_DATA_NUM 5
-#define VT1603_SPI_FIX_CS 0x00
-#define VT1603_SPI_FAKE_CS 3 //(0x7F - 1)
-#define VT1603_SPI_BUS_0 0x00
-#define VT1603_SPI_BUS_1 0x01
-#define VT1603_REG_OP_R 0x00
-#define VT1603_REG_OP_W 0x01
-
-
-#define VT1603_I2C_FIX_ADDR 0x1A
-#define VT1603_I2C_FAKE_ADDR 0xEE
-#define VT1603_I2C_WCMD 0x00
-#define VT1603_I2C_RCMD 0x01
-#define VT1603_I2C_RWCMD 0x02
-#define VT1603_I2C_BUS_0 0x00
-#define VT1603_I2C_BUS_1 0x01
-
-
-#define BA_WAKEUP_SRC_0 BIT0
-#define BA_WAKEUP_SRC_1 BIT1
-#define BA_WAKEUP_SRC_2 BIT2
-#define BA_WAKEUP_SRC_3 BIT3
-
-#define I2C_BUS 0
-#define SPI_BUS 1
-#define VT1603_FIFO_LEN 3
-
-/* VT1603 Register address */
-#define VT1603_BTHD_REG 0x78
-#define VT1603_BCLK_REG 0x88
-#define VT1603_BAEN_REG 0x04
-
-#define VT1603_PWC_REG 0xC0
-#define VT1603_CR_REG 0xC1
-#define VT1603_CCCR_REG 0xC2
-#define VT1603_CDPR_REG 0xC3
-#define VT1603_TSPC_REG 0xC4
-#define VT1603_AMCR_REG 0xC7
-#define VT1603_INTCR_REG 0xC8
-#define VT1603_INTEN_REG 0xC9
-#define VT1603_INTS_REG 0xCA
-#define VT1603_DCR_REG 0xCB
-
-#define VT1603_TODCL_REG 0xCC
-#define VT1603_TODCH_REG 0xCD
-
-#define VT1603_DATL_REG 0xCE
-#define VT1603_DATH_REG 0xCF
-
-#define VT1603_XPL_REG 0xD0
-#define VT1603_XPH_REG 0xD1
-#define VT1603_YPL_REG 0xD2
-#define VT1603_YPH_REG 0xD3
-
-#define VT1603_BATL_REG 0xD4
-#define VT1603_BATH_REG 0xD5
-
-#define VT1603_TEMPL_REG 0xD6
-#define VT1603_TEMPH_REG 0xD7
-
-#define VT1603_ERR8_REG 0xD8
-#define VT1603_ERR7_REG 0xD9
-#define VT1603_ERR6_REG 0xDA
-#define VT1603_ERR5_REG 0xDB
-#define VT1603_ERR4_REG 0xDC
-#define VT1603_ERR3_REG 0xDD
-#define VT1603_ERR2_REG 0xDE
-#define VT1603_ERR1_REG 0xDF
-
-#define VT1603_DBG8_REG 0xE0
-#define VT1603_DBG7_REG 0xE1
-#define VT1603_DBG6_REG 0xE2
-#define VT1603_DBG5_REG 0xE3
-#define VT1603_DBG4_REG 0xE4
-#define VT1603_DBG3_REG 0xE5
-#define VT1603_DBG2_REG 0xE6
-#define VT1603_DBG1_REG 0xE7
-
-/* for VT1603 GPIO1 interrupt setting */
-#define VT1603_IMASK_REG27 27
-#define VT1603_IMASK_REG28 28
-#define VT1603_IMASK_REG29 29
-#define VT1603_IPOL_REG33 33
-#define VT1603_ISEL_REG36 36
-
-#endif /* __VT1603_TS_H__ */