-#ifndef RK818_BATTERY
-#define RK818_BATTERY
-
-#define VB_MOD_REG 0x21
-#define THERMAL_REG 0x22
-#define DCDC_EN_REG 0x23
-#define NT_STS_MSK_REG2 0x4f
-#define DCDC_ILMAX_REG 0x90
-#define CHRG_COMP_REG1 0x99
-#define CHRG_COMP_REG2 0x9A
-#define SUP_STS_REG 0xA0
-#define USB_CTRL_REG 0xA1
-#define CHRG_CTRL_REG1 0xA3
-#define CHRG_CTRL_REG2 0xA4
-#define CHRG_CTRL_REG3 0xA5
-#define BAT_CTRL_REG 0xA6
-#define BAT_HTS_TS1_REG 0xA8
-#define BAT_LTS_TS1_REG 0xA9
-#define BAT_HTS_TS2_REG 0xAA
-#define BAT_LTS_TS2_REG 0xAB
-
-
-#define TS_CTRL_REG 0xAC
-#define ADC_CTRL_REG 0xAD
-
-#define ON_SOURCE 0xAE
-#define OFF_SOURCE 0xAF
-
-#define GGCON 0xB0
-#define GGSTS 0xB1
-#define FRAME_SMP_INTERV_REG 0xB2
-#define AUTO_SLP_CUR_THR_REG 0xB3
-
-#define GASCNT_CAL_REG3 0xB4
-#define GASCNT_CAL_REG2 0xB5
-#define GASCNT_CAL_REG1 0xB6
-#define GASCNT_CAL_REG0 0xB7
-#define GASCNT3 0xB8
-#define GASCNT2 0xB9
-#define GASCNT1 0xBA
-#define GASCNT0 0xBB
-
-#define BAT_CUR_AVG_REGH 0xBC
-#define BAT_CUR_AVG_REGL 0xBD
-
-#define TS1_ADC_REGH 0xBE
-#define TS1_ADC_REGL 0xBF
-#define TS2_ADC_REGH 0xC0
-#define TS2_ADC_REGL 0xC1
-
-#define BAT_OCV_REGH 0xC2
-#define BAT_OCV_REGL 0xC3
-#define BAT_VOL_REGH 0xC4
-#define BAT_VOL_REGL 0xC5
-
-#define RELAX_ENTRY_THRES_REGH 0xC6
-#define RELAX_ENTRY_THRES_REGL 0xC7
-#define RELAX_EXIT_THRES_REGH 0xC8
-#define RELAX_EXIT_THRES_REGL 0xC9
-
-#define RELAX_VOL1_REGH 0xCA
-#define RELAX_VOL1_REGL 0xCB
-#define RELAX_VOL2_REGH 0xCC
-#define RELAX_VOL2_REGL 0xCD
-
-#define BAT_CUR_R_CALC_REGH 0xCE
-#define BAT_CUR_R_CALC_REGL 0xCF
-#define BAT_VOL_R_CALC_REGH 0xD0
-#define BAT_VOL_R_CALC_REGL 0xD1
-
-#define CAL_OFFSET_REGH 0xD2
-#define CAL_OFFSET_REGL 0xD3
-
-#define NON_ACT_TIMER_CNT_REG 0xD4
-
-#define VCALIB0_REGH 0xD5
-#define VCALIB0_REGL 0xD6
-#define VCALIB1_REGH 0xD7
-#define VCALIB1_REGL 0xD8
-
-#define IOFFSET_REGH 0xDD
-#define IOFFSET_REGL 0xDE
-
-
-/*0xE0 ~0xF2 data register,*/
-#define SOC_REG 0xE0
-
-#define REMAIN_CAP_REG3 0xE1
-#define REMAIN_CAP_REG2 0xE2
-#define REMAIN_CAP_REG1 0xE3
-#define REMAIN_CAP_REG0 0xE4
-
-#define UPDAT_LEVE_REG 0xE5
-
-#define NEW_FCC_REG3 0xE6
-#define NEW_FCC_REG2 0xE7
-#define NEW_FCC_REG1 0xE8
-#define NEW_FCC_REG0 0xE9
-
-#define NON_ACT_TIMER_CNT_REG_SAVE 0xEA
-#define OCV_VOL_VALID_REG 0xEB
-#define REBOOT_CNT_REG 0xEC
-#define PCB_IOFFSET_REG 0xED
-#define MISC_MARK_REG 0xEE
-
-#define PLUG_IN_INT (0)
-#define PLUG_OUT_INT (1)
-#define CHRG_CVTLMT_INT (6)
-
-#define CHRG_EN_MASK (1 << 7)
-#define CHRG_EN (1 << 7)
-#define CHRG_DIS (0 << 7)
-
-#define OTG_EN_MASK (1 << 7)
-#define OTG_EN (1 << 7)
-#define OTG_DIS (0 << 7)
-
-/* gasgauge module enable bit 0: disable 1:enabsle
-TS_CTRL_REG 0xAC*/
-#define GG_EN (1<<7)
-
-/*ADC_CTRL_REG*/
-/*
-if GG_EN = 0 , then the ADC of BAT voltage controlled by the
-bit 0:diabsle 1:enable
-*/
-#define ADC_VOL_EN (1<<7)
-/*
-if GG_EN = 0, then the ADC of BAT current controlled by the
-bit 0: disable 1: enable
-*/
-#define ADC_CUR_EN (1<<6)
-/*the ADC of TS1 controlled by the bit 0:disabsle 1:enable */
-#define ADC_TS1_EN (1<<5)
-/*the ADC of TS2 controlled by the bit 0:disabsle 1:enable */
-#define ADC_TS2_EN (1<<4)
-/*ADC colock phase 0:normal 1:inverted*/
-#define ADC_PHASE (1<<3)
-#define ADC_CLK_SEL 7
-/*****************************************************
-#define ADC_CLK_SEL_2M 0x000
-#define ADC_CLK_SEL_1M 0x001
-#define ADC_CLK_SEL_500K 0x002
-#define ADC_CLK_SEL_250K 0x003
-#define ADC_CLK_SEL_125K 0x004
-******************************************************/
-/*GGCON*/
-/* ADC bat current continue sample times 00:8 01:16 10:32 11:64*/
-#define CUR_SAMPL_CON_TIMES (3<<6)
-/*ADC offset calibreation interval time 00:8min 01:16min 10:32min 11:48min*/
-#define ADC_OFF_CAL_INTERV (3<<4)
-/*OCV sampling interval time 00:8min 01:16min 10:32min :11:48min*/
-#define OCV_SAMPL_INTERV (3<<2)
-
-/*ADC working in current voltage collection mode*/
-#define ADC_CUR_VOL_MODE (1<<1)
-/*ADC working in resistor calculation mode 0:disable 1:enable*/
-#define ADC_RES_MODE 1
-
-/*GGSTS*/
-/*average current filter times 00:1/2 01:1/4 10:1/8 11:1/16*/
-#define RES_CUR_AVG_SEL (3<<5)
-/*battery first connection,edge trigger 0:NOT 1:YES*/
-#define BAT_CON (1<<4)
-/*battery voltage1 update in relax status 0: NOT 1:YE*/
-#define RELAX_VOL1_UPD (1<<3)
-/*battery voltage2 update in relax status 0: NOT 1:YE*/
-#define RELAX_VOL2_UPD (1<<2)
-/*battery coming into relax status 0: NOT 1:YE*/
-#define RELAX_STS (1<<1)
-/*battery average voltage and current updated status 0: NOT 1:YES*/
-#define IV_AVG_UPD_STS (1<<0)
-
-/*FRAME_SMP_INTERV_REG*/
-#define AUTO_SLP_EN (1<<5)
-/* auto sleep mode 0:disable 1:enable*/
-#define FRAME_SMP_INTERV_TIME 0x1F
-
-/*VB_MOD_REG*/
-#define PLUG_IN_STS (1<<6)
-
-/*SUP_STS_REG*/
-#define BAT_EXS (1<<7)
-#define CHARGE_OFF (0x00<<4)
-#define DEAD_CHARGE (0x01<<4)
-#define TRICKLE_CHARGE (0x02<<4)
-#define CC_OR_CV (0x03<<4)
-#define CHARGE_FINISH (0x04<<4)
-#define USB_OVER_VOL (0x05<<4)
-#define BAT_TMP_ERR (0x06<<4)
-#define TIMER_ERR (0x07<<4)
-/* usb is exists*/
-#define USB_EXIST (1<<1)
-/* usb is effective*/
-#define USB_EFF (1<<0)
-
-/*USB_CTRL_REG*/
-#define CHRG_CT_EN (1<<7)
-/* USB_VLIM_SEL*/
-/*
-#define VLIM_4000MV (0x00<<4)
-#define VLIM_4100MV (0x01<<4)
-#define VLIM_4200MV (0x02<<4)
-#define VLIM_4300MV (0x03<<4)
-#define VLIM_4400MV (0x04<<4)
-#define VLIM_4500MV (0x05<<4)
-#define VLIM_4600MV (0x06<<4)
-#define VLIM_4700MV (0x07<<4)
-*/
-
-/*USB_ILIM_SEL*/
-#define ILIM_450MA (0x00)
-#define ILIM_800MA (0x01)
-#define ILIM_850MA (0x02)
-#define ILIM_1000MA (0x03)
-#define ILIM_1250MA (0x04)
-#define ILIM_1500MA (0x05)
-#define ILIM_1750MA (0x06)
-#define ILIM_2000MA (0x07)
-#define ILIM_2250MA (0x08)
-#define ILIM_2500MA (0x09)
-#define ILIM_2750MA (0x0A)
-#define ILIM_3000MA (0x0B)
-
-/*CHRG_VOL_SEL*/
-#define CHRG_VOL4050 (0x00<<4)
-#define CHRG_VOL4100 (0x01<<4)
-#define CHRG_VOL4150 (0x02<<4)
-#define CHRG_VOL4200 (0x03<<4)
-#define CHRG_VOL4300 (0x04<<4)
-#define CHRG_VOL4350 (0x05<<4)
-
-/*CHRG_CUR_SEL*/
-#define CHRG_CUR1000mA (0x00)
-#define CHRG_CUR1200mA (0x01)
-#define CHRG_CUR1400mA (0x02)
-#define CHRG_CUR1600mA (0x03)
-#define CHRG_CUR1800mA (0x04)
-#define CHRG_CUR2000mA (0x05)
-#define CHRG_CUR2200mA (0x06)
-#define CHRG_CUR2400mA (0x07)
-#define CHRG_CUR2600mA (0x08)
-#define CHRG_CUR2800mA (0x09)
-#define CHRG_CUR3000mA (0x0A)
-
-/*CHRG_CTRL_REG2*/
-#define FINISH_100MA (0x00<<6)
-#define FINISH_150MA (0x01<<6)
-#define FINISH_200MA (0x02<<6)
-#define FINISH_250MA (0x03<<6)
-
-/*temp feed back degree*/
-#define TEMP_85C (0x00 << 2)
-#define TEMP_95C (0x01 << 2)
-#define TEMP_105C (0x02 << 2)
-#define TEMP_115C (0x03 << 2)
-