summaryrefslogtreecommitdiff
path: root/driver/charger/bd99955.h
diff options
context:
space:
mode:
Diffstat (limited to 'driver/charger/bd99955.h')
-rw-r--r--driver/charger/bd99955.h31
1 files changed, 27 insertions, 4 deletions
diff --git a/driver/charger/bd99955.h b/driver/charger/bd99955.h
index 0dc45b29ae..9b1da4baf2 100644
--- a/driver/charger/bd99955.h
+++ b/driver/charger/bd99955.h
@@ -52,7 +52,21 @@ enum bd99955_charge_port {
#define BD99955_CMD_VBUS_VCC_STATUS 0x02
#define BD99955_CMD_VBUS_VCC_STATUS_VCC_DETECT (1 << 8)
#define BD99955_CMD_VBUS_VCC_STATUS_VBUS_DETECT (1 << 0)
+
#define BD99955_CMD_CHGOP_STATUS 0x03
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP2 (1 << 10)
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP1 (1 << 9)
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP0 (1 << 8)
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_ROOMTEMP 0
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_HOT1 1
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_HOT2 2
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_HOT3 3
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_COLD1 4
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_COLD2 5
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_DISABLE 6
+#define BD99955_CMD_CHGOP_STATUS_BATTEMP_BATOPEN 7
+#define BD99955_CMD_CHGOP_STATUS_RBOOST_UV (1 << 1)
+
#define BD99955_CMD_WDT_STATUS 0x04
#define BD99955_CMD_CUR_ILIM_VAL 0x05
#define BD99955_CMD_SEL_ILIM_VAL 0x06
@@ -64,8 +78,12 @@ enum bd99955_charge_port {
#define BD99955_CMD_VIN_CTRL_SET_VBUS_PRIORITY (1 << 7)
#define BD99955_CMD_VIN_CTRL_SET_VBUS_EN (1 << 6)
#define BD99955_CMD_VIN_CTRL_SET_VCC_EN (1 << 5)
+
#define BD99955_CMD_CHGOP_SET1 0x0B
#define BD99955_CMD_CHGOP_SET2 0x0C
+#define BD99955_CMD_CHGOP_SET2_BATT_LEARN (1 << 8)
+#define BD99955_CMD_CHGOP_SET2_CHG_EN (1 << 7)
+
#define BD99955_CMD_VBUSCLPS_TH_SET 0x0D
#define BD99955_CMD_VCCCLPS_TH_SET 0x0E
#define BD99955_CMD_CHGWDT_SET 0x0F
@@ -86,6 +104,12 @@ enum bd99955_charge_port {
#define BD99955_CMD_VBATOVP_SET 0x1E
#define BD99955_CMD_IBATSHORT_SET 0x1F
#define BD99955_CMD_PROCHOT_CTRL_SET 0x20
+#define BD99955_CMD_PROCHOT_CTRL_SET_PROCHOT_EN4 (1 << 4)
+#define BD99955_CMD_PROCHOT_CTRL_SET_PROCHOT_EN3 (1 << 3)
+#define BD99955_CMD_PROCHOT_CTRL_SET_PROCHOT_EN2 (1 << 2)
+#define BD99955_CMD_PROCHOT_CTRL_SET_PROCHOT_EN1 (1 << 1)
+#define BD99955_CMD_PROCHOT_CTRL_SET_PROCHOT_EN0 (1 << 0)
+
#define BD99955_CMD_PROCHOT_ICRIT_SET 0x21
#define BD99955_CMD_PROCHOT_INORM_SET 0x22
#define BD99955_CMD_PROCHOT_IDCHG_SET 0x23
@@ -109,6 +133,9 @@ enum bd99955_charge_port {
#define BD99955_CMD_IC_SET2 0x3B
#define BD99955_CMD_SYSTEM_STATUS 0x3C
#define BD99955_CMD_SYSTEM_CTRL_SET 0x3D
+#define BD99955_CMD_SYSTEM_CTRL_SET_OTPLD (1 << 1)
+#define BD99955_CMD_SYSTEM_CTRL_SET_ALLRST (1 << 0)
+
#define BD99955_CMD_EXT_PROTECT_SET 0x3E
#define BD99955_CMD_EXT_MAP_SET 0x3F
#define BD99955_CMD_VM_CTRL_SET 0x40
@@ -171,10 +198,6 @@ enum bd99955_charge_port {
#define BD99955_CMD_SMBREG 0x7C
#define BD99955_CMD_DEBUG_MODE_SET 0x7F
-/* Charger operation control setting 2 */
-#define BD99955_CHGOP_SET2_CHG_EN (1 << 7)
-#define BD99955_CHGOP_SET2_BATT_LEARN (1 << 8)
-
/*
* Non-standard interface functions - bd99955 integrates additional
* functionality not part of the standard charger interface.