mt_battery.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. /* Copyright Statement:
  2. *
  3. * This software/firmware and related documentation ("MediaTek Software") are
  4. * protected under relevant copyright laws. The information contained herein
  5. * is confidential and proprietary to MediaTek Inc. and/or its licensors.
  6. * Without the prior written permission of MediaTek inc. and/or its licensors,
  7. * any reproduction, modification, use or disclosure of MediaTek Software,
  8. * and information contained herein, in whole or in part, shall be strictly prohibited.
  9. */
  10. /* MediaTek Inc. (C) 2015. All rights reserved.
  11. *
  12. * BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
  13. * THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
  14. * RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER ON
  15. * AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
  16. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
  17. * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
  18. * NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
  19. * SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
  20. * SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES TO LOOK ONLY TO SUCH
  21. * THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. RECEIVER EXPRESSLY ACKNOWLEDGES
  22. * THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES
  23. * CONTAINED IN MEDIATEK SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK
  24. * SOFTWARE RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
  25. * STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND
  26. * CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
  27. * AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
  28. * OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY RECEIVER TO
  29. * MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
  30. */
  31. #ifndef _MT_BATTERY_LK_H_
  32. #define _MT_BATTERY_LK_H_
  33. /* Current related */
  34. #define UNIT_FGCURRENT (610352)
  35. #define CAR_TUNE_VALUE 1000 //1.00
  36. #define R_FG_VALUE 50
  37. #define DEFAULT_R_FG (50)
  38. #define UNIT_CHARGE (85)
  39. #define FG_METER_RESISTANCE 75
  40. /* Gauge 0% related */
  41. #define PMIC_MIN_VOL 34000
  42. #define POWERON_SYSTEM_IBOOT 500 /* mA */
  43. /* BAT TEMP related */
  44. #define BAT_NTC_10 1
  45. #define BAT_NTC_47 0
  46. #define RBAT_PULL_UP_VOLT 2800
  47. #if (BAT_NTC_10 == 1)
  48. #define RBAT_PULL_UP_R 24000
  49. #endif
  50. #if (BAT_NTC_47 == 1)
  51. #define RBAT_PULL_UP_R 61900
  52. #endif
  53. #define BIF_NTC_R 16000
  54. struct FUELGAUGE_TEMPERATURE {
  55. signed int BatteryTemp;
  56. signed int TemperatureR;
  57. };
  58. #if (BAT_NTC_10 == 1)
  59. static struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[21] = {
  60. {-40, 195652},
  61. {-35, 148171},
  62. {-30, 113347},
  63. {-25, 87559},
  64. {-20, 68237},
  65. {-15, 53650},
  66. {-10, 42506},
  67. {-5, 33892},
  68. {0, 27219},
  69. {5, 22021},
  70. {10, 17926},
  71. {15, 14674},
  72. {20, 12081},
  73. {25, 10000},
  74. {30, 8315},
  75. {35, 6948},
  76. {40, 5834},
  77. {45, 4917},
  78. {50, 4161},
  79. {55, 3535},
  80. {60, 3014}
  81. };
  82. #endif
  83. #if (BAT_NTC_47 == 1)
  84. static struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[21] = {
  85. {-40, 1747920},
  86. {-35, 1245428},
  87. {-30, 898485},
  88. {-25, 655802},
  89. {-20, 483954},
  90. {-15, 360850},
  91. {-10, 271697},
  92. {-5, 206463},
  93. {0, 158214},
  94. {5, 122259},
  95. {10, 95227},
  96. {15, 74730},
  97. {20, 59065},
  98. {25, 47000},
  99. {30, 37643},
  100. {35, 30334},
  101. {40, 24591},
  102. {45, 20048},
  103. {50, 16433},
  104. {55, 13539},
  105. {60, 11210}
  106. };
  107. #endif
  108. int fgauge_get_current(bool *fg_is_charging, int *data);
  109. void fgauge_read_IM_current(void *data);
  110. int dis_gm3_src_sel(bool is_dis);
  111. int fgauge_get_dtsi_offset(void);
  112. #endif // _MT_BATTERY_LK_H_