m701: battery use factory config and board add factory table.
authorzhengxing <zhengxing@rock-chips.com>
Wed, 31 Oct 2012 04:29:49 +0000 (12:29 +0800)
committerzhengxing <zhengxing@rock-chips.com>
Wed, 31 Oct 2012 04:30:15 +0000 (12:30 +0800)
arch/arm/configs/rk3066b_m701_defconfig [changed mode: 0644->0755]
arch/arm/mach-rk30/board-rk3066b-m701.c

old mode 100644 (file)
new mode 100755 (executable)
index d3c80d4..c4978ab
@@ -267,7 +267,7 @@ CONFIG_EXPANDED_GPIO_IRQ_NUM=0
 CONFIG_SPI_FPGA_GPIO_NUM=0
 CONFIG_SPI_FPGA_GPIO_IRQ_NUM=0
 CONFIG_POWER_SUPPLY=y
-CONFIG_BATTERY_RK30_ADC=y
+CONFIG_BATTERY_RK30_ADC_FAC=y
 CONFIG_BATTERY_RK30_AC_CHARGE=y
 CONFIG_BATTERY_RK30_VOL3V8=y
 CONFIG_POWER_ON_CHARGER_DISPLAY=y
index db71e894b4241076a81a43d2efbebb1f258abcef..f044176a3b720f823d51b11a08024e71229bac6e 100755 (executable)
@@ -1110,7 +1110,7 @@ struct rk29_sdmmc_platform_data default_sdmmc1_data = {
  * the end of setting for SDMMC devices
 **************************************************************************************************/
 
-#ifdef CONFIG_BATTERY_RK30_ADC
+#if defined(CONFIG_BATTERY_RK30_ADC)
 static struct rk30_adc_battery_platform_data rk30_adc_battery_platdata = {
         .dc_det_pin      = RK30_PIN0_PB2,
         .batt_low_pin    = RK30_PIN0_PB1, 
@@ -1122,6 +1122,50 @@ static struct rk30_adc_battery_platform_data rk30_adc_battery_platdata = {
                .save_capacity   = 1,
 };
 
+static struct platform_device rk30_device_adc_battery = {
+        .name   = "rk30-battery",
+        .id     = -1,
+        .dev = {
+                .platform_data = &rk30_adc_battery_platdata,
+        },
+};
+ss
+#elif defined(CONFIG_BATTERY_RK30_ADC_FAC)
+
+#define BOARD_BAT_DEFINE_VALUE          (1800) /* bat_zx: the same with BAT_DEFINE_VALUE in RK3066B */
+#define BOARD_BATT_NUM                  (11)   /* bat_zx: the same with BATT_NUM */
+#define BOARD_BATT_PULLUP_RES           (200)  /* bat_zx: the same with batt_table[4] */
+#define BOARD_BATT_PULLDOWN_RES         (100)  /* bat_zx: the same with batt_table[5] */
+#define BOARD_BATT_DISCHG_OFFSET        (6)
+#define BOARD_BATT_CHG_OFFSET           (BOARD_BATT_DISCHG_OFFSET + BOARD_BATT_NUM)
+
+static const int batt_table[2*BOARD_BATT_NUM+6] =
+{
+       0x4B434F52, 0x7461625F, 0x79726574, 0, 200, 100,
+       3400, 3469, 3566, 3642, 3660, 3680, 3728, 3815, 3878, 3957, 4082,  //discharge
+       3703, 3848, 3931, 3956, 3993, 4074, 4145, 4154, 4159, 4160, 4166   //charge
+};
+
+static struct rk30_adc_battery_platform_data rk30_adc_battery_platdata = {
+        .dc_det_pin      = RK30_PIN0_PB2,
+        .batt_low_pin    = RK30_PIN0_PB1,
+        .charge_set_pin  = RK30_PIN2_PA7,
+        .charge_ok_pin   = RK30_PIN0_PA6,
+        .dc_det_level    = GPIO_LOW,
+        .charge_ok_level = GPIO_HIGH,
+               .charge_set_level = GPIO_HIGH,
+
+               .save_capacity   = 1,
+               .use_board_table = 1,
+               .table_size = BOARD_BATT_NUM,
+               .board_batt_table = batt_table,
+               .discharge_table = &batt_table[BOARD_BATT_DISCHG_OFFSET],
+               .charge_table = &batt_table[BOARD_BATT_CHG_OFFSET],
+               .reference_voltage = BOARD_BAT_DEFINE_VALUE,
+               .pull_up_res = BOARD_BATT_PULLUP_RES,
+               .pull_down_res = BOARD_BATT_PULLDOWN_RES,
+};
+
 static struct platform_device rk30_device_adc_battery = {
         .name   = "rk30-battery",
         .id     = -1,
@@ -1296,7 +1340,7 @@ static struct platform_device *devices[] __initdata = {
 #if defined(CONFIG_SEW868)
        &rk30_device_sew868,
 #endif
-#ifdef CONFIG_BATTERY_RK30_ADC
+#if defined(CONFIG_BATTERY_RK30_ADC) || defined(CONFIG_BATTERY_RK30_ADC_FAC)
        &rk30_device_adc_battery,
 #endif
 #ifdef CONFIG_RFKILL_RK