From cea823361588bd0582715d8cfc9a07e8ebb868ce Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E9=82=93=E8=AE=AD=E9=87=91?= Date: Mon, 23 Aug 2010 20:25:40 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9=E5=85=85=E7=94=B5=E6=BB=A1?= =?utf8?q?=E7=9A=84=E7=94=B5=E5=B9=B3=E4=B9=9F=E7=94=B1board=E8=BF=9B?= =?utf8?q?=E8=A1=8C=E4=BC=A0=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- arch/arm/mach-rk2818/board-raho.c | 1 + arch/arm/mach-rk2818/include/mach/board.h | 1 + drivers/power/rk2818_battery.c | 4 +++- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-rk2818/board-raho.c b/arch/arm/mach-rk2818/board-raho.c index bfda466f196b..b302c9ecce80 100755 --- a/arch/arm/mach-rk2818/board-raho.c +++ b/arch/arm/mach-rk2818/board-raho.c @@ -863,6 +863,7 @@ struct soc_camera_link rk2818_iclink = { #define CHARGEOK_PIN SPI_GPIO_P6_06//RK2818_PIN_PB1 struct rk2818_battery_platform_data rk2818_battery_platdata = { .charge_ok_pin = CHARGEOK_PIN, + .charge_ok_level = 0, }; diff --git a/arch/arm/mach-rk2818/include/mach/board.h b/arch/arm/mach-rk2818/include/mach/board.h index e191c3a4d710..01562fac964d 100755 --- a/arch/arm/mach-rk2818/include/mach/board.h +++ b/arch/arm/mach-rk2818/include/mach/board.h @@ -152,6 +152,7 @@ struct rk2818_battery_platform_data { int (*io_init)(void); int (*io_deinit)(void); int charge_ok_pin; + int charge_ok_level; }; /*g_sensor*/ diff --git a/drivers/power/rk2818_battery.c b/drivers/power/rk2818_battery.c index 2c19ac375050..84191d6a6d4c 100755 --- a/drivers/power/rk2818_battery.c +++ b/drivers/power/rk2818_battery.c @@ -113,6 +113,7 @@ struct rk2818_battery_data { struct power_supply ac; int charge_ok_pin; + int charge_ok_level; int adc_bat_divider; int bat_max; @@ -156,7 +157,7 @@ static void rk2818_get_bat_status(struct rk2818_battery_data *bat) { if(rk2818_get_charge_status() == 1) { - if(gpio_get_value (bat->charge_ok_pin) == 1) //CHG_OK ==0 + if(gpio_get_value (bat->charge_ok_pin) == bat->charge_ok_level) { gBatStatus = POWER_SUPPLY_STATUS_FULL; DBG("Battery is Full!\n"); @@ -602,6 +603,7 @@ static int rk2818_battery_probe(struct platform_device *pdev) data->ac.type = POWER_SUPPLY_TYPE_MAINS; data->charge_ok_pin = pdata->charge_ok_pin; + data->charge_ok_level = pdata->charge_ok_level; ret = power_supply_register(&pdev->dev, &data->ac); if (ret) -- 2.34.1