Merge tag 'v3.10.55' into update
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / arm / mach-mt8127 / kr076_nand / power / cust_battery_meter.h
CommitLineData
6fa3eb70
S
1#ifndef _CUST_BATTERY_METER_H
2#define _CUST_BATTERY_METER_H
3
4#include <mach/mt_typedefs.h>
5
6// ============================================================
7// define
8// ============================================================
9//#define SOC_BY_AUXADC
10#ifdef CONFIG_MTK_PMIC_MT6397
11#define SOC_BY_HW_FG //fg auxadc
12#else
13#define SOC_BY_SW_FG //oam
14#endif
15
16//#define CONFIG_DIS_CHECK_BATTERY
17//#define FIXED_TBAT_25
18
19#if defined(CONFIG_MTK_BQ24296_SUPPORT) \
20 || defined(CONFIG_MTK_BQ24196_SUPPORT)
21#define BAT_VOL_USE_ISENSE
22#define SWCHR_POWER_PATH
23#endif
24
25#if defined(CONFIG_MTK_FAN5402_SUPPORT) \
26 || defined(CONFIG_MTK_FAN5405_SUPPORT) \
27 || defined(CONFIG_MTK_BQ24158_SUPPORT) \
28 || defined(CONFIG_MTK_BQ24196_SUPPORT) \
29 || defined(CONFIG_MTK_BQ24296_SUPPORT) \
30 || defined(CONFIG_MTK_NCP1851_SUPPORT) \
31 || defined(CONFIG_MTK_NCP1854_SUPPORT) \
32 || defined(CONFIG_MTK_BQ24160_SUPPORT) \
33 || defined(CONFIG_MTK_BQ24157_SUPPORT) \
34 || defined(CONFIG_MTK_BQ24250_SUPPORT) \
35 || defined(CONFIG_MTK_BQ24261_SUPPORT)
36#define EXTERNAL_SWCHR_SUPPORT
37#endif
38
39/* ADC Channel Number */
40#ifdef CONFIG_MTK_PMIC_MT6397
41#define CUST_TABT_NUMBER 8
42#ifdef BAT_VOL_USE_ISENSE
43#define VBAT_CHANNEL_NUMBER 1 // w/ powerpath, battery voltage is ISENSE(1)
44#define ISENSE_CHANNEL_NUMBER 0 // w/ powerpath, system voltage is VSENSE(0)
45#else
46#define VBAT_CHANNEL_NUMBER 0
47#define ISENSE_CHANNEL_NUMBER 1
48#endif
49#define VCHARGER_CHANNEL_NUMBER 2
50#define VBATTEMP_CHANNEL_NUMBER 3
51
52#else //6323
53
54#define CUST_TABT_NUMBER 17
55#ifdef BAT_VOL_USE_ISENSE
56#define VBAT_CHANNEL_NUMBER 6 // w/ powerpath, battery voltage is ISENSE(1)
57#define ISENSE_CHANNEL_NUMBER 7 // w/ powerpath, system voltage is VSENSE(0)
58#else
59#define VBAT_CHANNEL_NUMBER 7
60#define ISENSE_CHANNEL_NUMBER 6
61#endif
62#define VCHARGER_CHANNEL_NUMBER 4
63#define VBATTEMP_CHANNEL_NUMBER 5
64
65#endif
66
67/* ADC resistor */
68#define R_BAT_SENSE 4
69#define R_I_SENSE 4
70#define R_CHARGER_1 330
71#define R_CHARGER_2 39
72
73#define TEMPERATURE_T0 110
74#define TEMPERATURE_T1 0
75#define TEMPERATURE_T2 25
76#define TEMPERATURE_T3 50
77#define TEMPERATURE_T 255 // This should be fixed, never change the value
78
79#define FG_METER_RESISTANCE 0
80
81/* Qmax for battery */
82#define Q_MAX_POS_50 2834
83#define Q_MAX_POS_25 2834
84#define Q_MAX_POS_0 2834
85#define Q_MAX_NEG_10 2834
86
87#define Q_MAX_POS_50_H_CURRENT 2771
88#define Q_MAX_POS_25_H_CURRENT 2771
89#define Q_MAX_POS_0_H_CURRENT 2771
90#define Q_MAX_NEG_10_H_CURRENT 2771
91
92/*[BUGFIX]-Add-BEGIN by TCTSZ.pingao.yang, 4/15/2015, pr-975290, change fg integration way */
93/* Discharge Percentage */
94#define OAM_D5 0 // 1 : D5, 0: D2
95/*[BUGFIX]-Add-end by TCTSZ.pingao.yang, 4/15/2015*/
96
97/* battery meter parameter */
98#define CUST_TRACKING_POINT 14
99#define CUST_R_SENSE 200
100#define CUST_HW_CC 0
101#define AGING_TUNING_VALUE 100
102#define CUST_R_FG_OFFSET 23
103
104#define OCV_BOARD_COMPESATE 0 //mV
105#define R_FG_BOARD_BASE 1000
106#define R_FG_BOARD_SLOPE 1000 //slope
107#define CAR_TUNE_VALUE 89
108
109
110/* HW Fuel gague */
111#define CURRENT_DETECT_R_FG (-1) //turn off auto detect for auxadc gauge
112#define MinErrorOffset 1000
113#define FG_VBAT_AVERAGE_SIZE 18
114#define R_FG_VALUE 20 // mOhm, base is 20
115
116#define CUST_POWERON_DELTA_CAPACITY_TOLRANCE 40
117#define CUST_POWERON_LOW_CAPACITY_TOLRANCE 5
118#define CUST_POWERON_MAX_VBAT_TOLRANCE 90
119#define CUST_POWERON_DELTA_VBAT_TOLRANCE 30
120
121/* Disable Battery check for HQA */
122#ifdef MTK_DISABLE_POWER_ON_OFF_VOLTAGE_LIMITATION
123#define FIXED_TBAT_25
124#endif
125
126/* Dynamic change wake up period of battery thread when suspend*/
127#define VBAT_NORMAL_WAKEUP 3600 //3.6V
128#define VBAT_LOW_POWER_WAKEUP 3500 //3.5v
129#define NORMAL_WAKEUP_PERIOD 1800 //30 * 60 = 30 min
130#define LOW_POWER_WAKEUP_PERIOD 300 //5 * 60 = 5 min
131#define CLOSE_POWEROFF_WAKEUP_PERIOD 30 //30 s
132
133/*[BUGFIX]-Add-BEGIN by TCTSZ.pingao.yang, 4/15/2015, */
134#define MAX_SUSPEND_CURRENT 420 // 42 mA
4b9e9796 135#define MIN_SUSPEND_CURRENT 0 // 0 mA
6fa3eb70
S
136#define DEFAUL_SUSPEND_CURRENT 120 //12mA
137#define SUSPEND_CURRENT_SETP 30 //3mA
138#define SLEEP_AFTER_FG_DIFF 3 // diff about 3%
139#define UI_REDUCE_CURRENT 180 //18mA
140#define SLEEP_REDUCE_CURRENT 60 //6mA
141/*[BUGFIX]-Add-END by TCTSZ.pingao.yang */
142
143#endif //#ifndef _CUST_BATTERY_METER_H