brintos

brintos / linux-shallow public Read only

0
0
Text · 34.5 KiB · f588979 Raw
1076 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/* Copyright (C) 2020 ROHM Semiconductors */3#ifndef BD99954_CHARGER_H4#define BD99954_CHARGER_H5 6#include <linux/regmap.h>7 8#define BD9995X_MANUFACTURER "Rohm Semiconductor"9#define BD9995X_IRQ_PIN      "bd9995x_irq"10 11#define BD9995X_VSYS_PRECHARGE_OFFSET_MV 20012 13#define BD99954_ID            0x34614#define BD99955_ID            0x22115#define BD99956_ID            0x33116 17/* Battery Charger Commands */18#define    CHARGING_CURRENT   0x1419#define    CHARGING_VOLTAGE   0x1520#define    PROTECT_SET        0x3E21#define    MAP_SET            0x3F22 23/* Extended commands */24#define    CHGSTM_STATUS       0x10025#define    VBAT_VSYS_STATUS    0x10126#define    VBUS_VCC_STATUS     0x10227#define    CHGOP_STATUS        0x10328#define    WDT_STATUS          0x10429#define    CUR_ILIM_VAL        0x10530#define    SEL_ILIM_VAL        0x10631#define    IBUS_LIM_SET        0x10732#define    ICC_LIM_SET         0x10833#define    IOTG_LIM_SET        0x10934#define    VIN_CTRL_SET        0x10A35#define    CHGOP_SET1          0x10B36#define    CHGOP_SET2          0x10C37#define    VBUSCLPS_TH_SET     0x10D38#define    VCCCLPS_TH_SET      0x10E39#define    CHGWDT_SET          0x10F40#define    BATTWDT_SET         0x11041#define    VSYSREG_SET         0x11142#define    VSYSVAL_THH_SET     0x11243#define    VSYSVAL_THL_SET     0x11344#define    ITRICH_SET          0x11445#define    IPRECH_SET          0x11546#define    ICHG_SET            0x11647#define    ITERM_SET           0x11748#define    VPRECHG_TH_SET      0x11849#define    VRBOOST_SET         0x11950#define    VFASTCHG_REG_SET1   0x11A51#define    VFASTCHG_REG_SET2   0x11B52#define    VFASTCHG_REG_SET3   0x11C53#define    VRECHG_SET          0x11D54#define    VBATOVP_SET         0x11E55#define    IBATSHORT_SET       0x11F56#define    PROCHOT_CTRL_SET    0x12057#define    PROCHOT_ICRIT_SET   0x12158#define    PROCHOT_INORM_SET   0x12259#define    PROCHOT_IDCHG_SET   0x12360#define    PROCHOT_VSYS_SET    0x12461#define    PMON_IOUT_CTRL_SET  0x12562#define    PMON_DACIN_VAL      0x12663#define    IOUT_DACIN_VAL      0x12764#define    VCC_UCD_SET         0x12865#define    VCC_UCD_STATUS      0x12966#define    VCC_IDD_STATUS      0x12A67#define    VCC_UCD_FCTRL_SET   0x12B68#define    VCC_UCD_FCTRL_EN    0x12C69#define    VBUS_UCD_SET        0x13070#define    VBUS_UCD_STATUS     0x13171#define    VBUS_IDD_STATUS     0x13272#define    VBUS_UCD_FCTRL_SET  0x13373#define    VBUS_UCD_FCTRL_EN   0x13474#define    CHIP_ID             0x13875#define    CHIP_REV            0x13976#define    IC_SET1             0x13A77#define    IC_SET2             0x13B78#define    SYSTEM_STATUS       0x13C79#define    SYSTEM_CTRL_SET     0x13D80#define    VM_CTRL_SET         0x14081#define    THERM_WINDOW_SET1   0x14182#define    THERM_WINDOW_SET2   0x14283#define    THERM_WINDOW_SET3   0x14384#define    THERM_WINDOW_SET4   0x14485#define    THERM_WINDOW_SET5   0x14586#define    IBATP_TH_SET        0x14687#define    IBATM_TH_SET        0x14788#define    VBAT_TH_SET         0x14889#define    THERM_TH_SET        0x14990#define    IACP_TH_SET         0x14A91#define    VACP_TH_SET         0x14B92#define    VBUS_TH_SET         0x14C93#define    VCC_TH_SET          0x14D94#define    VSYS_TH_SET         0x14E95#define    EXTIADP_TH_SET      0x14F96#define    IBATP_VAL           0x15097#define    IBATP_AVE_VAL       0x15198#define    IBATM_VAL           0x15299#define    IBATM_AVE_VAL       0x153100#define    VBAT_VAL            0x154101#define    VBAT_AVE_VAL        0x155102#define    THERM_VAL           0x156103#define    VTH_VAL             0x157104#define    IACP_VAL            0x158105#define    IACP_AVE_VAL        0x159106#define    VACP_VAL            0x15A107#define    VACP_AVE_VAL        0x15B108#define    VBUS_VAL            0x15C109#define    VBUS_AVE_VAL        0x15D110#define    VCC_VAL             0x15E111#define    VCC_AVE_VAL         0x15F112#define    VSYS_VAL            0x160113#define    VSYS_AVE_VAL        0x161114#define    EXTIADP_VAL         0x162115#define    EXTIADP_AVE_VAL     0x163116#define    VACPCLPS_TH_SET     0x164117#define    INT0_SET            0x168118#define    INT1_SET            0x169119#define    INT2_SET            0x16A120#define    INT3_SET            0x16B121#define    INT4_SET            0x16C122#define    INT5_SET            0x16D123#define    INT6_SET            0x16E124#define    INT7_SET            0x16F125#define    INT0_STATUS         0x170126#define    INT1_STATUS         0x171127#define    INT2_STATUS         0x172128#define    INT3_STATUS         0x173129#define    INT4_STATUS         0x174130#define    INT5_STATUS         0x175131#define    INT6_STATUS         0x176132#define    INT7_STATUS         0x177133#define    OTPREG0             0x17A134#define    OTPREG1             0x17B135#define    SMBREG              0x17C136#define    DEBUG_MODE_SET      0x17F137#define    DEBUG0x14           0x214138#define    DEBUG0x1A           0x21A139 140enum bd9995x_fields {141	F_PREV_CHGSTM_STATE, F_CHGSTM_STATE,142	F_VBAT_VSYS_STATUS,143	F_VBUS_VCC_STATUS,144	F_BATTEMP, F_VRECHG_DET, F_RBOOST_UV, F_RBOOSTS,145	F_THERMWDT_VAL, F_CHGWDT_VAL,146	F_CUR_ILIM_VAL,147	F_SEL_ILIM_VAL,148	F_IBUS_LIM_SET,149	F_ICC_LIM_SET,150	F_IOTG_LIM_SET,151	F_OTG_BOTH_EN,152	F_VRBOOST_TRIG,153	F_VRBOOST_EN,154	F_PP_BOTH_THRU,155	F_VIN_ORD,156	F_VBUS_EN,157	F_VCC_EN,158	F_VSYS_PRIORITY,159	F_PPC_SUB_CAP,160	F_PPC_CAP,161	F_DCP_2500_SEL,162	F_SDP_500_SEL,163	F_ILIM_AUTO_DISEN,164	F_VCC_BC_DISEN,165	F_VBUS_BC_DISEN,166	F_SDP_CHG_TRIG_EN,167	F_SDP_CHG_TRIG,168	F_AUTO_TOF,169	F_AUTO_FST,170	F_AUTO_RECH,171	F_ILIM_RESET_EN,172	F_DCDC_1MS_SEL,173	F_SEL_ILIM_DIV,174	F_BATT_LEARN,175	F_CHG_EN,176	F_USB_SUS,177	F_CHOP_SS_INIT,178	F_CHOP_ALL_INIT,179	F_DCDC_CLK_SEL,180	F_CHOP_SS,181	F_CHOP_ALL,182	F_VBUSCLPS_TH_SET,183	F_VCCCLPS_TH_SET,184	F_WDT_FST,185	F_WDT_PRE,186	F_WDT_IBAT_SHORT,187	F_WDT_THERM,188	F_VSYSREG_SET,189	F_VSYSVAL_THH_SET,190	F_VSYSVAL_THL_SET,191	F_ITRICH_SET,192	F_IPRECH_SET,193	F_ICHG_SET,194	F_ITERM_SET,195	F_VPRECHG_TH_SET,196	F_VRBOOST_SET,197	F_VFASTCHG_REG_SET1,198	F_VFASTCHG_REG_SET2,199	F_VFASTCHG_REG_SET3,200	F_VRECHG_SET,201	F_VBATOVP_SET,202	F_IBATM_SHORT_SET,203	F_PROCHOT_DG_SET,204	F_PROCHOT_ICRIT_DG_SET,205	F_PROCHOT_IDCHG_DG_SET,206	F_PROCHOT_EN,207	F_PROCHOT_ICRIT_SET,208	F_PROCHOT_INORM_SET,209	F_PROCHOT_IDCHG_SET,210	F_PROCHOT_VSYS_SET,211	F_IMON_INSEL,212	F_PMON_INSEL,213	F_IOUT_OUT_EN,214	F_IOUT_SOURCE_SEL,215	F_IOUT_GAIN_SET,216	F_PMON_OUT_EN,217	F_PMON_GAIN_SET,218	F_PMON_DACIN_VAL,219	F_IOUT_DACIN_VAL,220	F_VCC_BCSRETRY,221	F_VCC_ADCRTRY,222	F_VCC_USBDETEN,223	F_VCC_IDRDETEN,224	F_VCC_ENUMRDY,225	F_VCC_ADCPOLEN,226	F_VCC_DCDMODE,227	F_VCC_USB_SW_EN,228	F_VCC_USB_SW,229	F_VCC_DCDFAIL,230	F_VCC_CHGPORT,231	F_VCC_PUPDET,232	F_VCC_VBUS_VLD,233	F_VCC_CHGDET,234	F_VCC_OTGDET,235	F_VCC_VBINOP,236	F_VCC_EXTID,237	F_VCC_IDRDET,238	F_VCC_INDO,239	F_VCC_UCDSWEN,240	F_VCC_RREF_EN,241	F_VCC_DPPU_EN,242	F_VCC_DPREF_EN,243	F_VCC_DMREF_EN,244	F_VCC_DPDET_EN,245	F_VCC_DMDET_EN,246	F_VCC_DPSINK_EN,247	F_VCC_DMSINK_EN,248	F_VCC_DP_BUFF_EN,249	F_VCC_DM_BUFF_EN,250	F_VCC_EXTCLKENBL,251	F_VCC_PLSTESTEN,252	F_VCC_UCDSWEN_TSTENB,253	F_VCC_RREF_EN_TSTENB,254	F_VCC_DPPU_EN_TSTENB,255	F_VCC_DPREF_EN_TSTENB,256	F_VCC_DMREF_EN_TSTENB,257	F_VCC_DPDET_EN_TSTENB,258	F_VCC_DMDET_EN_TSTENB,259	F_VCC_DPSINK_EN_TSTENB,260	F_VCC_DMSINK_EN_TSTENB,261	F_VCC_DP_BUFF_EN_TSTENB,262	F_VCC_DM_BUFF_EN_TSTENB,263	F_VBUS_BCSRETRY,264	F_VBUS_ADCRTRY,265	F_VBUS_USBDETEN,266	F_VBUS_IDRDETEN,267	F_VBUS_ENUMRDY,268	F_VBUS_ADCPOLEN,269	F_VBUS_DCDMODE,270	F_VBUS_USB_SW_EN,271	F_VBUS_USB_SW,272	F_VBUS_DCDFAIL,273	F_VBUS_CHGPORT,274	F_VBUS_PUPDET,275	F_VBUS_VBUS_VLD,276	F_VBUS_CHGDET,277	F_VBUS_OTGDET,278	F_VBUS_VBINOP,279	F_VBUS_EXTID,280	F_VBUS_IDRDET,281	F_VBUS_INDO,282	F_VBUS_UCDSWEN,283	F_VBUS_RREF_EN,284	F_VBUS_DPPU_EN,285	F_VBUS_DPREF_EN,286	F_VBUS_DMREF_EN,287	F_VBUS_DPDET_EN,288	F_VBUS_DMDET_EN,289	F_VBUS_DPSINK_EN,290	F_VBUS_DMSINK_EN,291	F_VBUS_DP_BUFF_EN,292	F_VBUS_DM_BUFF_EN,293	F_VBUS_EXTCLKENBL,294	F_VBUS_PLSTESTEN,295	F_VBUS_UCDSWEN_TSTENB,296	F_VBUS_RREF_EN_TSTENB,297	F_VBUS_DPPU_EN_TSTENB,298	F_VBUS_DPREF_EN_TSTENB,299	F_VBUS_DMREF_EN_TSTENB,300	F_VBUS_DPDET_EN_TSTENB,301	F_VBUS_DMDET_EN_TSTENB,302	F_VBUS_DPSINK_EN_TSTENB,303	F_VBUS_DMSINK_EN_TSTENB,304	F_VBUS_DP_BUFF_EN_TSTENB,305	F_VBUS_DM_BUFF_EN_TSTENB,306	F_CHIP_ID,307	F_CHIP_REV,308	F_ONE_CELL_MODE,309	F_cell,310	F_VACP_AUTO_DISCHG,311	F_VACP_LOAD,312	F_ACOK_POL,313	F_ACOK_DISEN,314	F_DEBUG_SET1,315	F_DEBUG_SET0,316	F_MONRST_STATE,317	F_ALMRST_STATE,318	F_CHGRST_STATE,319	F_OTPLD_STATE,320	F_ALLRST_STATE,321	F_PROTECT_SET,322	F_MAP_SET,323	F_ADCINTERVAL,324	F_ADCMOD,325	F_ADCTMOD,326	F_EXTIADPEN,327	F_VSYSENB,328	F_VCCENB,329	F_VBUSENB,330	F_VACPENB,331	F_IACPENB,332	F_THERMENB,333	F_VBATENB,334	F_IBATMENB,335	F_IBATPENB,336	F_TMPTHR1B,337	F_TMPTHR1A,338	F_TMPTHR2B,339	F_TMPTHR2A,340	F_TMPTHR3B,341	F_TMPTHR3A,342	F_TMPTHR4B,343	F_TMPTHR4A,344	F_TMPTHR5B,345	F_TMPTHR5A,346	F_IBATP_TH_SET,347	F_IBATM_TH_SET,348	F_VBAT_TH_SET,349	F_THERM_TH_SET,350	F_IACP_TH_SET,351	F_VACP_TH_SET,352	F_VBUS_TH_SET,353	F_VCC_TH_SET,354	F_VSYS_TH_SET,355	F_EXTIADP_TH_SET,356	F_IBATP_VAL,357	F_IBATP_AVE_VAL,358	F_IBATM_VAL,359	F_IBATM_AVE_VAL,360	F_VBAT_VAL,361	F_VBAT_AVE_VAL,362	F_THERM_VAL,363	F_VTH_VAL,364	F_IACP_VAL,365	F_IACP_AVE_VAL,366	F_VACP_VAL,367	F_VACP_AVE_VAL,368	F_VBUS_VAL,369	F_VBUS_AVE_VAL,370	F_VCC_VAL,371	F_VCC_AVE_VAL,372	F_VSYS_VAL,373	F_VSYS_AVE_VAL,374	F_EXTIADP_VAL,375	F_EXTIADP_AVE_VAL,376	F_VACPCLPS_TH_SET,377	F_INT7_SET,378	F_INT6_SET,379	F_INT5_SET,380	F_INT4_SET,381	F_INT3_SET,382	F_INT2_SET,383	F_INT1_SET,384	F_INT0_SET,385	F_VBUS_RBUV_DET,386	F_VBUS_RBUV_RES,387	F_VBUS_TH_DET,388	F_VBUS_TH_RES,389	F_VBUS_IIN_MOD,390	F_VBUS_OV_DET,391	F_VBUS_OV_RES,392	F_VBUS_CLPS_DET,393	F_VBUS_CLPS,394	F_VBUS_DET,395	F_VBUS_RES,396	F_VCC_RBUV_DET,397	F_VCC_RBUV_RES,398	F_VCC_TH_DET,399	F_VCC_TH_RES,400	F_VCC_IIN_MOD,401	F_VCC_OVP_DET,402	F_VCC_OVP_RES,403	F_VCC_CLPS_DET,404	F_VCC_CLPS_RES,405	F_VCC_DET,406	F_VCC_RES,407	F_TH_DET,408	F_TH_RMV,409	F_TMP_OUT_DET,410	F_TMP_OUT_RES,411	F_VBAT_TH_DET,412	F_VBAT_TH_RES,413	F_IBAT_SHORT_DET,414	F_IBAT_SHORT_RES,415	F_VBAT_OV_DET,416	F_VBAT_OV_RES,417	F_BAT_ASSIST_DET,418	F_BAT_ASSIST_RES,419	F_VSYS_TH_DET,420	F_VSYS_TH_RES,421	F_VSYS_OV_DET,422	F_VSYS_OV_RES,423	F_VSYS_SHT_DET,424	F_VSYS_SHT_RES,425	F_VSYS_UV_DET,426	F_VSYS_UV_RES,427	F_OTP_LOAD_DONE,428	F_PWR_ON,429	F_EXTIADP_TRNS,430	F_EXTIADP_TH_DET,431	F_EXIADP_TH_RES,432	F_BAT_MNT_DET,433	F_BAT_MNT_RES,434	F_TSD_DET,435	F_TSD_RES,436	F_CHGWDT_EXP,437	F_THERMWDT_EXP,438	F_TMP_TRNS,439	F_CHG_TRNS,440	F_VBUS_UCD_PORT_DET,441	F_VBUS_UCD_UCHG_DET,442	F_VBUS_UCD_URID_RMV,443	F_VBUS_UCD_OTG_DET,444	F_VBUS_UCD_URID_MOD,445	F_VCC_UCD_PORT_DET,446	F_VCC_UCD_UCHG_DET,447	F_VCC_UCD_URID_RMV,448	F_VCC_UCD_OTG_DET,449	F_VCC_UCD_URID_MOD,450	F_PROCHOT_DET,451	F_PROCHOT_RES,452	F_VACP_DET,453	F_VACP_RES,454	F_VACP_TH_DET,455	F_VACP_TH_RES,456	F_IACP_TH_DET,457	F_IACP_THE_RES,458	F_THERM_TH_DET,459	F_THERM_TH_RES,460	F_IBATM_TH_DET,461	F_IBATM_TH_RES,462	F_IBATP_TH_DET,463	F_IBATP_TH_RES,464	F_INT7_STATUS,465	F_INT6_STATUS,466	F_INT5_STATUS,467	F_INT4_STATUS,468	F_INT3_STATUS,469	F_INT2_STATUS,470	F_INT1_STATUS,471	F_INT0_STATUS,472	F_ILIM_DECREASE,473	F_RESERVE_OTPREG1,474	F_POWER_SAVE_MODE,475	F_DEBUG_MODE_SET,476	F_DEBUG0x14,477	F_DEBUG0x1A,478	F_MAX_FIELDS479};480 481static const struct reg_field bd9995x_reg_fields[] = {482	    [F_PREV_CHGSTM_STATE] = REG_FIELD(CHGSTM_STATUS, 8, 14),483	    [F_CHGSTM_STATE] = REG_FIELD(CHGSTM_STATUS, 0, 6),484	    [F_VBAT_VSYS_STATUS] = REG_FIELD(VBAT_VSYS_STATUS, 0, 15),485	    [F_VBUS_VCC_STATUS] = REG_FIELD(VBUS_VCC_STATUS, 0, 12),486	    [F_BATTEMP] = REG_FIELD(CHGOP_STATUS, 8, 10),487	    [F_VRECHG_DET] = REG_FIELD(CHGOP_STATUS, 6, 6),488	    [F_RBOOST_UV] = REG_FIELD(CHGOP_STATUS, 1, 1),489	    [F_RBOOSTS] = REG_FIELD(CHGOP_STATUS, 0, 0),490	    [F_THERMWDT_VAL] = REG_FIELD(WDT_STATUS, 8, 15),491	    [F_CHGWDT_VAL] = REG_FIELD(WDT_STATUS, 0, 7),492	    [F_CUR_ILIM_VAL] = REG_FIELD(CUR_ILIM_VAL, 0, 13),493	    [F_SEL_ILIM_VAL] = REG_FIELD(SEL_ILIM_VAL, 0, 13),494	    [F_IBUS_LIM_SET] = REG_FIELD(IBUS_LIM_SET, 5, 13),495	    [F_ICC_LIM_SET] = REG_FIELD(ICC_LIM_SET, 5, 13),496	    [F_IOTG_LIM_SET] = REG_FIELD(IOTG_LIM_SET, 5, 13),497	    [F_OTG_BOTH_EN] = REG_FIELD(VIN_CTRL_SET, 15, 15),498	    [F_VRBOOST_TRIG] = REG_FIELD(VIN_CTRL_SET, 14, 14),499	    [F_VRBOOST_EN] = REG_FIELD(VIN_CTRL_SET, 12, 13),500	    [F_PP_BOTH_THRU] = REG_FIELD(VIN_CTRL_SET, 11, 11),501	    [F_VIN_ORD] = REG_FIELD(VIN_CTRL_SET, 7, 7),502	    [F_VBUS_EN] = REG_FIELD(VIN_CTRL_SET, 6, 6),503	    [F_VCC_EN] = REG_FIELD(VIN_CTRL_SET, 5, 5),504	    [F_VSYS_PRIORITY] = REG_FIELD(VIN_CTRL_SET, 4, 4),505	    [F_PPC_SUB_CAP] = REG_FIELD(VIN_CTRL_SET, 2, 3),506	    [F_PPC_CAP] = REG_FIELD(VIN_CTRL_SET, 0, 1),507	    [F_DCP_2500_SEL] = REG_FIELD(CHGOP_SET1, 15, 15),508	    [F_SDP_500_SEL] = REG_FIELD(CHGOP_SET1, 14, 14),509	    [F_ILIM_AUTO_DISEN] = REG_FIELD(CHGOP_SET1, 13, 13),510	    [F_VCC_BC_DISEN] = REG_FIELD(CHGOP_SET1, 11, 11),511	    [F_VBUS_BC_DISEN] = REG_FIELD(CHGOP_SET1, 10, 10),512	    [F_SDP_CHG_TRIG_EN] = REG_FIELD(CHGOP_SET1, 9, 9),513	    [F_SDP_CHG_TRIG] = REG_FIELD(CHGOP_SET1, 8, 8),514	    [F_AUTO_TOF] = REG_FIELD(CHGOP_SET1, 6, 6),515	    [F_AUTO_FST] = REG_FIELD(CHGOP_SET1, 5, 5),516	    [F_AUTO_RECH] = REG_FIELD(CHGOP_SET1, 3, 3),517	    [F_ILIM_RESET_EN] = REG_FIELD(CHGOP_SET2, 14, 14),518	    [F_DCDC_1MS_SEL] = REG_FIELD(CHGOP_SET2, 12, 13),519	    [F_SEL_ILIM_DIV] = REG_FIELD(CHGOP_SET2, 10, 10),520	    [F_BATT_LEARN] = REG_FIELD(CHGOP_SET2, 8, 8),521	    [F_CHG_EN] = REG_FIELD(CHGOP_SET2, 7, 7),522	    [F_USB_SUS] = REG_FIELD(CHGOP_SET2, 6, 6),523	    [F_CHOP_SS_INIT] = REG_FIELD(CHGOP_SET2, 5, 5),524	    [F_CHOP_ALL_INIT] = REG_FIELD(CHGOP_SET2, 4, 4),525	    [F_DCDC_CLK_SEL] = REG_FIELD(CHGOP_SET2, 2, 3),526	    [F_CHOP_SS] = REG_FIELD(CHGOP_SET2, 1, 1),527	    [F_CHOP_ALL] = REG_FIELD(CHGOP_SET2, 0, 0),528	    [F_VBUSCLPS_TH_SET] = REG_FIELD(VBUSCLPS_TH_SET, 7, 14),529	    [F_VCCCLPS_TH_SET] = REG_FIELD(VCCCLPS_TH_SET, 7, 14),530	    [F_WDT_FST] = REG_FIELD(CHGWDT_SET, 8, 15),531	    [F_WDT_PRE] = REG_FIELD(CHGWDT_SET, 0, 7),532	    [F_WDT_IBAT_SHORT] = REG_FIELD(BATTWDT_SET, 8, 15),533	    [F_WDT_THERM] = REG_FIELD(BATTWDT_SET, 0, 7),534	    [F_VSYSREG_SET] = REG_FIELD(VSYSREG_SET, 6, 14),535	    [F_VSYSVAL_THH_SET] = REG_FIELD(VSYSVAL_THH_SET, 6, 14),536	    [F_VSYSVAL_THL_SET] = REG_FIELD(VSYSVAL_THL_SET, 6, 14),537	    [F_ITRICH_SET] = REG_FIELD(ITRICH_SET, 6, 10),538	    [F_IPRECH_SET] = REG_FIELD(IPRECH_SET, 6, 10),539	    [F_ICHG_SET] = REG_FIELD(ICHG_SET, 6, 13),540	    [F_ITERM_SET] = REG_FIELD(ITERM_SET, 6, 10),541	    [F_VPRECHG_TH_SET] = REG_FIELD(VPRECHG_TH_SET, 6, 14),542	    [F_VRBOOST_SET] = REG_FIELD(VRBOOST_SET, 6, 14),543	    [F_VFASTCHG_REG_SET1] = REG_FIELD(VFASTCHG_REG_SET1, 4, 14),544	    [F_VFASTCHG_REG_SET2] = REG_FIELD(VFASTCHG_REG_SET2, 4, 14),545	    [F_VFASTCHG_REG_SET3] = REG_FIELD(VFASTCHG_REG_SET3, 4, 14),546	    [F_VRECHG_SET] = REG_FIELD(VRECHG_SET, 4, 14),547	    [F_VBATOVP_SET] = REG_FIELD(VBATOVP_SET, 4, 14),548	    [F_IBATM_SHORT_SET] = REG_FIELD(IBATSHORT_SET, 0, 14),549	    [F_PROCHOT_DG_SET] = REG_FIELD(PROCHOT_CTRL_SET, 14, 15),550	    [F_PROCHOT_ICRIT_DG_SET] = REG_FIELD(PROCHOT_CTRL_SET, 10, 11),551	    [F_PROCHOT_IDCHG_DG_SET] = REG_FIELD(PROCHOT_CTRL_SET, 8, 9),552	    [F_PROCHOT_EN] = REG_FIELD(PROCHOT_CTRL_SET, 0, 4),553	    [F_PROCHOT_ICRIT_SET] = REG_FIELD(PROCHOT_ICRIT_SET, 0, 14),554	    [F_PROCHOT_INORM_SET] = REG_FIELD(PROCHOT_INORM_SET, 0, 14),555	    [F_PROCHOT_IDCHG_SET] = REG_FIELD(PROCHOT_IDCHG_SET, 0, 14),556	    [F_PROCHOT_VSYS_SET] = REG_FIELD(PROCHOT_VSYS_SET, 0, 14),557	    [F_IMON_INSEL] = REG_FIELD(PMON_IOUT_CTRL_SET, 9, 9),558	    [F_PMON_INSEL] = REG_FIELD(PMON_IOUT_CTRL_SET, 8, 8),559	    [F_IOUT_OUT_EN] = REG_FIELD(PMON_IOUT_CTRL_SET, 7, 7),560	    [F_IOUT_SOURCE_SEL] = REG_FIELD(PMON_IOUT_CTRL_SET, 6, 6),561	    [F_IOUT_GAIN_SET] = REG_FIELD(PMON_IOUT_CTRL_SET, 4, 5),562	    [F_PMON_OUT_EN] = REG_FIELD(PMON_IOUT_CTRL_SET, 3, 3),563	    [F_PMON_GAIN_SET] = REG_FIELD(PMON_IOUT_CTRL_SET, 0, 2),564	    [F_PMON_DACIN_VAL] = REG_FIELD(PMON_DACIN_VAL, 0, 9),565	    [F_IOUT_DACIN_VAL] = REG_FIELD(IOUT_DACIN_VAL, 0, 11),566	    [F_VCC_BCSRETRY] = REG_FIELD(VCC_UCD_SET, 12, 12),567	    [F_VCC_ADCRTRY] = REG_FIELD(VCC_UCD_SET, 8, 8),568	    [F_VCC_USBDETEN] = REG_FIELD(VCC_UCD_SET, 7, 7),569	    [F_VCC_IDRDETEN] = REG_FIELD(VCC_UCD_SET, 6, 6),570	    [F_VCC_ENUMRDY] = REG_FIELD(VCC_UCD_SET, 5, 5),571	    [F_VCC_ADCPOLEN] = REG_FIELD(VCC_UCD_SET, 4, 4),572	    [F_VCC_DCDMODE] = REG_FIELD(VCC_UCD_SET, 3, 3),573	    [F_VCC_USB_SW_EN] = REG_FIELD(VCC_UCD_SET, 1, 1),574	    [F_VCC_USB_SW] = REG_FIELD(VCC_UCD_SET, 0, 0),575	    [F_VCC_DCDFAIL] = REG_FIELD(VCC_UCD_STATUS, 15, 15),576	    [F_VCC_CHGPORT] = REG_FIELD(VCC_UCD_STATUS, 12, 13),577	    [F_VCC_PUPDET] = REG_FIELD(VCC_UCD_STATUS, 11, 11),578	    [F_VCC_VBUS_VLD] = REG_FIELD(VCC_UCD_STATUS, 7, 7),579	    [F_VCC_CHGDET] = REG_FIELD(VCC_UCD_STATUS, 6, 6),580	    [F_VCC_OTGDET] = REG_FIELD(VCC_UCD_STATUS, 3, 3),581	    [F_VCC_VBINOP] = REG_FIELD(VCC_IDD_STATUS, 6, 6),582	    [F_VCC_EXTID] = REG_FIELD(VCC_IDD_STATUS, 5, 5),583	    [F_VCC_IDRDET] = REG_FIELD(VCC_IDD_STATUS, 4, 4),584	    [F_VCC_INDO] = REG_FIELD(VCC_IDD_STATUS, 0, 3),585	    [F_VCC_UCDSWEN] = REG_FIELD(VCC_UCD_FCTRL_SET, 10, 10),586	    [F_VCC_RREF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 9, 9),587	    [F_VCC_DPPU_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 8, 8),588	    [F_VCC_DPREF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 7, 7),589	    [F_VCC_DMREF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 6, 6),590	    [F_VCC_DPDET_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 5, 5),591	    [F_VCC_DMDET_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 4, 4),592	    [F_VCC_DPSINK_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 3, 3),593	    [F_VCC_DMSINK_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 2, 2),594	    [F_VCC_DP_BUFF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 1, 1),595	    [F_VCC_DM_BUFF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 0, 0),596	    [F_VCC_EXTCLKENBL] = REG_FIELD(VCC_UCD_FCTRL_EN, 15, 15),597	    [F_VCC_PLSTESTEN] = REG_FIELD(VCC_UCD_FCTRL_EN, 14, 14),598	    [F_VCC_UCDSWEN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 10, 10),599	    [F_VCC_RREF_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 9, 9),600	    [F_VCC_DPPU_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 8, 8),601	    [F_VCC_DPREF_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 7, 7),602	    [F_VCC_DMREF_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 6, 6),603	    [F_VCC_DPDET_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 5, 5),604	    [F_VCC_DMDET_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 4, 4),605	    [F_VCC_DPSINK_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 3, 3),606	    [F_VCC_DMSINK_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 2, 2),607	    [F_VCC_DP_BUFF_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 1, 1),608	    [F_VCC_DM_BUFF_EN_TSTENB] = REG_FIELD(VCC_UCD_FCTRL_EN, 0, 0),609 610	    [F_VBUS_BCSRETRY] = REG_FIELD(VBUS_UCD_SET, 12, 12),611	    [F_VBUS_ADCRTRY] = REG_FIELD(VBUS_UCD_SET, 8, 8),612	    [F_VBUS_USBDETEN] = REG_FIELD(VBUS_UCD_SET, 7, 7),613	    [F_VBUS_IDRDETEN] = REG_FIELD(VBUS_UCD_SET, 6, 6),614	    [F_VBUS_ENUMRDY] = REG_FIELD(VBUS_UCD_SET, 5, 5),615	    [F_VBUS_ADCPOLEN] = REG_FIELD(VBUS_UCD_SET, 4, 4),616	    [F_VBUS_DCDMODE] = REG_FIELD(VBUS_UCD_SET, 3, 3),617	    [F_VBUS_USB_SW_EN] = REG_FIELD(VBUS_UCD_SET, 1, 1),618	    [F_VBUS_USB_SW] = REG_FIELD(VBUS_UCD_SET, 0, 0),619	    [F_VBUS_DCDFAIL] = REG_FIELD(VBUS_UCD_STATUS, 15, 15),620	    [F_VBUS_CHGPORT] = REG_FIELD(VBUS_UCD_STATUS, 12, 13),621	    [F_VBUS_PUPDET] = REG_FIELD(VBUS_UCD_STATUS, 11, 11),622	    [F_VBUS_VBUS_VLD] = REG_FIELD(VBUS_UCD_STATUS, 7, 7),623	    [F_VBUS_CHGDET] = REG_FIELD(VBUS_UCD_STATUS, 6, 6),624	    [F_VBUS_OTGDET] = REG_FIELD(VBUS_UCD_STATUS, 3, 3),625	    [F_VBUS_VBINOP] = REG_FIELD(VBUS_IDD_STATUS, 6, 6),626	    [F_VBUS_EXTID] = REG_FIELD(VBUS_IDD_STATUS, 5, 5),627	    [F_VBUS_IDRDET] = REG_FIELD(VBUS_IDD_STATUS, 4, 4),628	    [F_VBUS_INDO] = REG_FIELD(VBUS_IDD_STATUS, 0, 3),629	    [F_VBUS_UCDSWEN] = REG_FIELD(VCC_UCD_FCTRL_SET, 10, 10),630	    [F_VBUS_RREF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 9, 9),631	    [F_VBUS_DPPU_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 8, 8),632	    [F_VBUS_DPREF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 7, 7),633	    [F_VBUS_DMREF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 6, 6),634	    [F_VBUS_DPDET_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 5, 5),635	    [F_VBUS_DMDET_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 4, 4),636	    [F_VBUS_DPSINK_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 3, 3),637	    [F_VBUS_DMSINK_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 2, 2),638	    [F_VBUS_DP_BUFF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 1, 1),639	    [F_VBUS_DM_BUFF_EN] = REG_FIELD(VCC_UCD_FCTRL_SET, 0, 0),640 641	    [F_VBUS_EXTCLKENBL] = REG_FIELD(VBUS_UCD_FCTRL_EN, 15, 15),642	    [F_VBUS_PLSTESTEN] = REG_FIELD(VBUS_UCD_FCTRL_EN, 14, 14),643	    [F_VBUS_UCDSWEN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 10, 10),644	    [F_VBUS_RREF_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 9, 9),645	    [F_VBUS_DPPU_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 8, 8),646	    [F_VBUS_DPREF_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 7, 7),647	    [F_VBUS_DMREF_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 6, 6),648	    [F_VBUS_DPDET_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 5, 5),649	    [F_VBUS_DMDET_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 4, 4),650	    [F_VBUS_DPSINK_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 3, 3),651	    [F_VBUS_DMSINK_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 2, 2),652	    [F_VBUS_DP_BUFF_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 1, 1),653	    [F_VBUS_DM_BUFF_EN_TSTENB] = REG_FIELD(VBUS_UCD_FCTRL_EN, 0, 0),654 655	    [F_CHIP_ID] = REG_FIELD(CHIP_ID, 0, 15),656	    [F_CHIP_REV] = REG_FIELD(CHIP_REV, 0, 15),657	    [F_ONE_CELL_MODE] = REG_FIELD(IC_SET1, 11, 11),658	    [F_cell] = REG_FIELD(IC_SET1, 1, 1),659	    [F_VACP_AUTO_DISCHG] = REG_FIELD(IC_SET1, 9, 9),660	    [F_VACP_LOAD] = REG_FIELD(IC_SET1, 8, 8),661	    [F_ACOK_POL] = REG_FIELD(IC_SET1, 1, 1),662	    [F_ACOK_DISEN] = REG_FIELD(IC_SET1, 0, 0),663	    [F_DEBUG_SET1] = REG_FIELD(IC_SET2, 4, 8),664	    [F_DEBUG_SET0] = REG_FIELD(IC_SET2, 0, 0),665	    [F_MONRST_STATE] = REG_FIELD(SYSTEM_STATUS, 6, 6),666	    [F_ALMRST_STATE] = REG_FIELD(SYSTEM_STATUS, 5, 5),667	    [F_CHGRST_STATE] = REG_FIELD(SYSTEM_STATUS, 4, 4),668	    [F_OTPLD_STATE] = REG_FIELD(SYSTEM_STATUS, 1, 1),669	    [F_ALLRST_STATE] = REG_FIELD(SYSTEM_STATUS, 0, 0),670	    [F_PROTECT_SET] = REG_FIELD(PROTECT_SET, 0, 15),671	    [F_MAP_SET] = REG_FIELD(MAP_SET, 0, 15),672	    [F_ADCINTERVAL] = REG_FIELD(VM_CTRL_SET, 14, 15),673	    [F_ADCMOD] = REG_FIELD(VM_CTRL_SET, 12, 13),674	    [F_ADCTMOD] = REG_FIELD(VM_CTRL_SET, 10, 11),675	    [F_EXTIADPEN] = REG_FIELD(VM_CTRL_SET, 9, 9),676	    [F_VSYSENB] = REG_FIELD(VM_CTRL_SET, 8, 8),677	    [F_VCCENB] = REG_FIELD(VM_CTRL_SET, 7, 7),678	    [F_VBUSENB] = REG_FIELD(VM_CTRL_SET, 6, 6),679	    [F_VACPENB] = REG_FIELD(VM_CTRL_SET, 5, 5),680	    [F_IACPENB] = REG_FIELD(VM_CTRL_SET, 4, 4),681	    [F_THERMENB] = REG_FIELD(VM_CTRL_SET, 3, 3),682	    [F_VBATENB] = REG_FIELD(VM_CTRL_SET, 2, 2),683	    [F_IBATMENB] = REG_FIELD(VM_CTRL_SET, 1, 1),684	    [F_IBATPENB] = REG_FIELD(VM_CTRL_SET, 0, 0),685	    [F_TMPTHR1B] = REG_FIELD(THERM_WINDOW_SET1, 8, 15),686	    [F_TMPTHR1A] = REG_FIELD(THERM_WINDOW_SET1, 0, 7),687	    [F_TMPTHR2B] = REG_FIELD(THERM_WINDOW_SET2, 8, 15),688	    [F_TMPTHR2A] = REG_FIELD(THERM_WINDOW_SET2, 0, 7),689	    [F_TMPTHR3B] = REG_FIELD(THERM_WINDOW_SET3, 8, 15),690	    [F_TMPTHR3A] = REG_FIELD(THERM_WINDOW_SET3, 0, 7),691	    [F_TMPTHR4B] = REG_FIELD(THERM_WINDOW_SET4, 8, 15),692	    [F_TMPTHR4A] = REG_FIELD(THERM_WINDOW_SET4, 0, 7),693	    [F_TMPTHR5B] = REG_FIELD(THERM_WINDOW_SET5, 8, 15),694	    [F_TMPTHR5A] = REG_FIELD(THERM_WINDOW_SET5, 0, 7),695	    [F_IBATP_TH_SET] = REG_FIELD(IBATP_TH_SET, 0, 14),696	    [F_IBATM_TH_SET] = REG_FIELD(IBATM_TH_SET, 0, 14),697	    [F_VBAT_TH_SET] = REG_FIELD(VBAT_TH_SET, 0, 14),698	    [F_THERM_TH_SET] = REG_FIELD(THERM_TH_SET, 0, 7),699	    [F_IACP_TH_SET] = REG_FIELD(IACP_TH_SET, 0, 14),700	    [F_VACP_TH_SET] = REG_FIELD(VACP_TH_SET, 0, 14),701	    [F_VBUS_TH_SET] = REG_FIELD(VBUS_TH_SET, 0, 14),702	    [F_VCC_TH_SET] = REG_FIELD(VCC_TH_SET, 0, 14),703	    [F_VSYS_TH_SET] = REG_FIELD(VSYS_TH_SET, 0, 14),704	    [F_EXTIADP_TH_SET] = REG_FIELD(EXTIADP_TH_SET, 0, 11),705	    [F_IBATP_VAL] = REG_FIELD(IBATP_VAL, 0, 14),706	    [F_IBATP_AVE_VAL] = REG_FIELD(IBATP_AVE_VAL, 0, 14),707	    [F_IBATM_VAL] = REG_FIELD(IBATM_VAL, 0, 14),708	    [F_IBATM_AVE_VAL] = REG_FIELD(IBATM_AVE_VAL, 0, 14),709	    [F_VBAT_VAL] = REG_FIELD(VBAT_VAL, 0, 14),710	    [F_VBAT_AVE_VAL] = REG_FIELD(VBAT_AVE_VAL, 0, 14),711	    [F_THERM_VAL] = REG_FIELD(THERM_VAL, 0, 7),712	    [F_VTH_VAL] = REG_FIELD(VTH_VAL, 0, 11),713	    [F_IACP_VAL] = REG_FIELD(IACP_VAL, 0, 14),714	    [F_IACP_AVE_VAL] = REG_FIELD(IACP_AVE_VAL, 0, 14),715	    [F_VACP_VAL] = REG_FIELD(VACP_VAL, 0, 14),716	    [F_VACP_AVE_VAL] = REG_FIELD(VACP_AVE_VAL, 0, 14),717	    [F_VBUS_VAL] = REG_FIELD(VBUS_VAL, 0, 14),718	    [F_VBUS_AVE_VAL] = REG_FIELD(VBUS_AVE_VAL, 0, 14),719	    [F_VCC_VAL] = REG_FIELD(VCC_VAL, 0, 14),720	    [F_VCC_AVE_VAL] = REG_FIELD(VCC_AVE_VAL, 0, 14),721	    [F_VSYS_VAL] = REG_FIELD(VSYS_VAL, 0, 14),722	    [F_VSYS_AVE_VAL] = REG_FIELD(VSYS_AVE_VAL, 0, 14),723	    [F_EXTIADP_VAL] = REG_FIELD(EXTIADP_VAL, 0, 11),724	    [F_EXTIADP_AVE_VAL] = REG_FIELD(EXTIADP_AVE_VAL, 0, 11),725	    [F_VACPCLPS_TH_SET] = REG_FIELD(VACPCLPS_TH_SET, 7, 14),726	    [F_INT7_SET] = REG_FIELD(INT7_SET, 0, 15),727	    [F_INT6_SET] = REG_FIELD(INT6_SET, 0, 13),728	    [F_INT5_SET] = REG_FIELD(INT5_SET, 0, 13),729	    [F_INT4_SET] = REG_FIELD(INT4_SET, 0, 9),730	    [F_INT3_SET] = REG_FIELD(INT3_SET, 0, 15),731	    [F_INT2_SET] = REG_FIELD(INT2_SET, 0, 15),732	    [F_INT1_SET] = REG_FIELD(INT1_SET, 0, 15),733	    [F_INT0_SET] = REG_FIELD(INT0_SET, 0, 7),734	    [F_VBUS_RBUV_DET] = REG_FIELD(INT1_SET, 15, 15),735	    [F_VBUS_RBUV_RES] = REG_FIELD(INT1_SET, 14, 14),736	    [F_VBUS_TH_DET] = REG_FIELD(INT1_SET, 9, 9),737	    [F_VBUS_TH_RES] = REG_FIELD(INT1_SET, 8, 8),738	    [F_VBUS_IIN_MOD] = REG_FIELD(INT1_SET, 6, 6),739	    [F_VBUS_OV_DET] = REG_FIELD(INT1_SET, 5, 5),740	    [F_VBUS_OV_RES] = REG_FIELD(INT1_SET, 4, 4),741	    [F_VBUS_CLPS_DET] = REG_FIELD(INT1_SET, 3, 3),742	    [F_VBUS_CLPS] = REG_FIELD(INT1_SET, 2, 2),743	    [F_VBUS_DET] = REG_FIELD(INT1_SET, 1, 1),744	    [F_VBUS_RES] = REG_FIELD(INT1_SET, 0, 0),745	    [F_VCC_RBUV_DET] = REG_FIELD(INT2_SET, 15, 15),746	    [F_VCC_RBUV_RES] = REG_FIELD(INT2_SET, 14, 14),747	    [F_VCC_TH_DET] = REG_FIELD(INT2_SET, 9, 9),748	    [F_VCC_TH_RES] = REG_FIELD(INT2_SET, 8, 8),749	    [F_VCC_IIN_MOD] = REG_FIELD(INT2_SET, 6, 6),750	    [F_VCC_OVP_DET] = REG_FIELD(INT2_SET, 5, 5),751	    [F_VCC_OVP_RES] = REG_FIELD(INT2_SET, 4, 4),752	    [F_VCC_CLPS_DET] = REG_FIELD(INT2_SET, 3, 3),753	    [F_VCC_CLPS_RES] = REG_FIELD(INT2_SET, 2, 2),754	    [F_VCC_DET] = REG_FIELD(INT2_SET, 1, 1),755	    [F_VCC_RES] = REG_FIELD(INT2_SET, 0, 0),756	    [F_TH_DET] = REG_FIELD(INT3_SET, 15, 15),757	    [F_TH_RMV] = REG_FIELD(INT3_SET, 14, 14),758	    [F_TMP_OUT_DET] = REG_FIELD(INT3_SET, 11, 11),759	    [F_TMP_OUT_RES] = REG_FIELD(INT3_SET, 10, 10),760	    [F_VBAT_TH_DET] = REG_FIELD(INT3_SET, 9, 9),761	    [F_VBAT_TH_RES] = REG_FIELD(INT3_SET, 8, 8),762	    [F_IBAT_SHORT_DET] = REG_FIELD(INT3_SET, 7, 7),763	    [F_IBAT_SHORT_RES] = REG_FIELD(INT3_SET, 6, 6),764	    [F_VBAT_OV_DET] = REG_FIELD(INT3_SET, 5, 5),765	    [F_VBAT_OV_RES] = REG_FIELD(INT3_SET, 4, 4),766	    [F_BAT_ASSIST_DET] = REG_FIELD(INT3_SET, 3, 3),767	    [F_BAT_ASSIST_RES] = REG_FIELD(INT3_SET, 2, 2),768	    [F_VSYS_TH_DET] = REG_FIELD(INT4_SET, 9, 9),769	    [F_VSYS_TH_RES] = REG_FIELD(INT4_SET, 8, 8),770	    [F_VSYS_OV_DET] = REG_FIELD(INT4_SET, 5, 5),771	    [F_VSYS_OV_RES] = REG_FIELD(INT4_SET, 4, 4),772	    [F_VSYS_SHT_DET] = REG_FIELD(INT4_SET, 3, 3),773	    [F_VSYS_SHT_RES] = REG_FIELD(INT4_SET, 2, 2),774	    [F_VSYS_UV_DET] = REG_FIELD(INT4_SET, 1, 1),775	    [F_VSYS_UV_RES] = REG_FIELD(INT4_SET, 0, 0),776	    [F_OTP_LOAD_DONE] = REG_FIELD(INT5_SET, 13, 13),777	    [F_PWR_ON] = REG_FIELD(INT5_SET, 12, 12),778	    [F_EXTIADP_TRNS] = REG_FIELD(INT5_SET, 11, 11),779	    [F_EXTIADP_TH_DET] = REG_FIELD(INT5_SET, 9, 9),780	    [F_EXIADP_TH_RES] = REG_FIELD(INT5_SET, 8, 8),781	    [F_BAT_MNT_DET] = REG_FIELD(INT5_SET, 7, 7),782	    [F_BAT_MNT_RES] = REG_FIELD(INT5_SET, 6, 6),783	    [F_TSD_DET] = REG_FIELD(INT5_SET, 5, 5),784	    [F_TSD_RES] = REG_FIELD(INT5_SET, 4, 4),785	    [F_CHGWDT_EXP] = REG_FIELD(INT5_SET, 3, 3),786	    [F_THERMWDT_EXP] = REG_FIELD(INT5_SET, 2, 2),787	    [F_TMP_TRNS] = REG_FIELD(INT5_SET, 1, 1),788	    [F_CHG_TRNS] = REG_FIELD(INT5_SET, 0, 0),789	    [F_VBUS_UCD_PORT_DET] = REG_FIELD(INT6_SET, 13, 13),790	    [F_VBUS_UCD_UCHG_DET] = REG_FIELD(INT6_SET, 12, 12),791	    [F_VBUS_UCD_URID_RMV] = REG_FIELD(INT6_SET, 11, 11),792	    [F_VBUS_UCD_OTG_DET] = REG_FIELD(INT6_SET, 10, 10),793	    [F_VBUS_UCD_URID_MOD] = REG_FIELD(INT6_SET, 8, 8),794	    [F_VCC_UCD_PORT_DET] = REG_FIELD(INT6_SET, 5, 5),795	    [F_VCC_UCD_UCHG_DET] = REG_FIELD(INT6_SET, 4, 4),796	    [F_VCC_UCD_URID_RMV] = REG_FIELD(INT6_SET, 3, 3),797	    [F_VCC_UCD_OTG_DET] = REG_FIELD(INT6_SET, 2, 2),798	    [F_VCC_UCD_URID_MOD] = REG_FIELD(INT6_SET, 0, 0),799	    [F_PROCHOT_DET] = REG_FIELD(INT7_SET, 15, 15),800	    [F_PROCHOT_RES] = REG_FIELD(INT7_SET, 14, 14),801	    [F_VACP_DET] = REG_FIELD(INT7_SET, 11, 11),802	    [F_VACP_RES] = REG_FIELD(INT7_SET, 10, 10),803	    [F_VACP_TH_DET] = REG_FIELD(INT7_SET, 9, 9),804	    [F_VACP_TH_RES] = REG_FIELD(INT7_SET, 8, 8),805	    [F_IACP_TH_DET] = REG_FIELD(INT7_SET, 7, 7),806	    [F_IACP_THE_RES] = REG_FIELD(INT7_SET, 6, 6),807	    [F_THERM_TH_DET] = REG_FIELD(INT7_SET, 5, 5),808	    [F_THERM_TH_RES] = REG_FIELD(INT7_SET, 4, 4),809	    [F_IBATM_TH_DET] = REG_FIELD(INT7_SET, 3, 3),810	    [F_IBATM_TH_RES] = REG_FIELD(INT7_SET, 2, 2),811	    [F_IBATP_TH_DET] = REG_FIELD(INT7_SET, 1, 1),812	    [F_IBATP_TH_RES] = REG_FIELD(INT7_SET, 0, 0),813	    [F_INT7_STATUS] = REG_FIELD(INT7_STATUS, 0, 15),814	    [F_INT6_STATUS] = REG_FIELD(INT6_STATUS, 0, 13),815	    [F_INT5_STATUS] = REG_FIELD(INT5_STATUS, 0, 13),816	    [F_INT4_STATUS] = REG_FIELD(INT4_STATUS, 0, 9),817	    [F_INT3_STATUS] = REG_FIELD(INT3_STATUS, 0, 15),818	    [F_INT2_STATUS] = REG_FIELD(INT2_STATUS, 0, 15),819	    [F_INT1_STATUS] = REG_FIELD(INT1_STATUS, 0, 15),820	    [F_INT0_STATUS] = REG_FIELD(INT0_STATUS, 0, 7),821	    [F_ILIM_DECREASE] = REG_FIELD(OTPREG0, 0, 15),822	    [F_RESERVE_OTPREG1] = REG_FIELD(OTPREG1, 0, 15),823	    [F_POWER_SAVE_MODE] = REG_FIELD(SMBREG, 0, 15),824	    [F_DEBUG_MODE_SET] = REG_FIELD(DEBUG_MODE_SET, 0, 15),825	    [F_DEBUG0x14] = REG_FIELD(DEBUG0x14, 0, 15),826	    [F_DEBUG0x1A] = REG_FIELD(DEBUG0x1A, 0, 15),827};828 829/* CHGSTM_STATEs */830#define CHGSTM_SUSPEND 0x00831#define CHGSTM_TRICKLE_CHARGE 0x01832#define CHGSTM_PRE_CHARGE 0x02833#define CHGSTM_FAST_CHARGE 0x03834#define CHGSTM_TOP_OFF 0x04835#define CHGSTM_DONE 0x05836#define CHGSTM_OTG 0x08837#define CHGSTM_OTG_DONE 0x09838#define CHGSTM_TEMPERATURE_ERROR_1 0x10839#define CHGSTM_TEMPERATURE_ERROR_2 0x11840#define CHGSTM_TEMPERATURE_ERROR_3 0x12841#define CHGSTM_TEMPERATURE_ERROR_4 0x13842#define CHGSTM_TEMPERATURE_ERROR_5 0x14843#define CHGSTM_TEMPERATURE_ERROR_6 0x15844#define CHGSTM_TEMPERATURE_ERROR_7 0x18845#define CHGSTM_THERMAL_SHUT_DOWN_1 0x20846#define CHGSTM_THERMAL_SHUT_DOWN_2 0x21847#define CHGSTM_THERMAL_SHUT_DOWN_3 0x22848#define CHGSTM_THERMAL_SHUT_DOWN_4 0x23849#define CHGSTM_THERMAL_SHUT_DOWN_5 0x24850#define CHGSTM_THERMAL_SHUT_DOWN_6 0x25851#define CHGSTM_THERMAL_SHUT_DOWN_7 0x28852#define CHGSTM_BATTERY_ERROR 0x40853 854/* VBAT_VSYS_STATUS */855#define STATUS_VSYS_OV BIT(15)856#define STATUS_VSYS_SSD BIT(14)857#define STATUS_VSYS_SCP BIT(13)858#define STATUS_VSYS_UVN BIT(12)859#define STATUS_IBAT_SHORT BIT(6)860#define STATUS_VBAT_OV BIT(3)861#define STATUS_DEAD_BAT BIT(0)862 863/* VBUS_VCC_STATUS */864#define STATUS_VACP_DET BIT(12)865#define STATUS_VCC_OVP BIT(11)866#define STATUS_ILIM_VCC_MOD BIT(10)867#define STATUS_VCC_CLPS BIT(9)868#define STATUS_VCC_DET BIT(8)869#define STATUS_VBUS_OVP BIT(3)870#define STATUS_ILIM_VBUS_MOD BIT(2)871#define STATUS_VBUS_CLPS BIT(1)872#define STATUS_VBUS_DET BIT(0)873 874/* Interrupt set/status definitions */875 876/* INT 0 */877#define INT0_INT7_STATUS BIT(7)878#define INT0_INT6_STATUS BIT(6)879#define INT0_INT5_STATUS BIT(5)880#define INT0_INT4_STATUS BIT(4)881#define INT0_INT3_STATUS BIT(3)882#define INT0_INT2_STATUS BIT(2)883#define INT0_INT1_STATUS BIT(1)884#define INT0_INT0_STATUS BIT(0)885#define INT0_ALL 0xff886 887/* INT 1 */888#define VBUS_RBUV_DET BIT(15)889#define VBUS_RBUV_RES BIT(14)890#define VBUS_TH_DET BIT(9)891#define VBUS_TH_RES BIT(8)892#define VBUS_IIN_MOD BIT(6)893#define VBUS_OV_DET BIT(5)894#define VBUS_OV_RES BIT(4)895#define VBUS_CLPS_DET BIT(3)896#define VBUS_CLPS BIT(2)897#define VBUS_DET BIT(1)898#define VBUS_RES BIT(0)899#define INT1_ALL (VBUS_RBUV_DET|\900		 VBUS_RBUV_RES|\901		 VBUS_TH_DET |\902		 VBUS_TH_RES |\903		 VBUS_IIN_MOD|\904		 VBUS_OV_DET |\905		 VBUS_OV_RES |\906		 VBUS_CLPS_DET |\907		 VBUS_CLPS |\908		 VBUS_DET |\909		 VBUS_RES)910 911/* INT 2 */912#define VCC_RBUV_DET BIT(15)913#define VCC_RBUV_RES BIT(14)914#define VCC_TH_DET BIT(9)915#define VCC_TH_RES BIT(8)916#define VCC_IIN_MOD BIT(6)917#define VCC_OVP_DET BIT(5)918#define VCC_OVP_RES BIT(4)919#define VCC_CLPS_DET BIT(3)920#define VCC_CLPS_RES BIT(2)921#define VCC_DET BIT(1)922#define VCC_RES BIT(0)923#define INT2_ALL (VCC_RBUV_DET |\924		 VCC_RBUV_RES |\925		 VCC_TH_DET |\926		 VCC_TH_RES |\927		 VCC_IIN_MOD |\928		 VCC_OVP_DET |\929		 VCC_OVP_RES |\930		 VCC_CLPS_DET |\931		 VCC_CLPS_RES |\932		 VCC_DET |\933		 VCC_RES)934/* INT 3 */935#define TH_DET BIT(15)936#define TH_RMV BIT(14)937#define TMP_OUT_DET BIT(11)938#define TMP_OUT_RES BIT(10)939#define VBAT_TH_DET BIT(9)940#define VBAT_TH_RES BIT(8)941#define IBAT_SHORT_DET BIT(7)942#define IBAT_SHORT_RES BIT(6)943#define VBAT_OV_DET BIT(5)944#define VBAT_OV_RES BIT(4)945#define BAT_ASSIST_DET BIT(3)946#define BAT_ASSIST_RES BIT(2)947#define INT3_ALL (TH_DET |\948		 TH_RMV |\949		 TMP_OUT_DET |\950		 TMP_OUT_RES |\951		 VBAT_TH_DET |\952		 VBAT_TH_RES |\953		 IBAT_SHORT_DET |\954		 IBAT_SHORT_RES |\955		 VBAT_OV_DET |\956		 VBAT_OV_RES |\957		 BAT_ASSIST_DET |\958		 BAT_ASSIST_RES)959 960/* INT 4 */961#define VSYS_TH_DET BIT(9)962#define VSYS_TH_RES BIT(8)963#define VSYS_OV_DET BIT(5)964#define VSYS_OV_RES BIT(4)965#define VSYS_SHT_DET BIT(3)966#define VSYS_SHT_RES BIT(2)967#define VSYS_UV_DET BIT(1)968#define VSYS_UV_RES BIT(0)969#define INT4_ALL (VSYS_TH_DET |\970		 VSYS_TH_RES |\971		 VSYS_OV_DET |\972		 VSYS_OV_RES |\973		 VSYS_SHT_DET |\974		 VSYS_SHT_RES |\975		 VSYS_UV_DET |\976		 VSYS_UV_RES)977 978/* INT 5*/979#define OTP_LOAD_DONE BIT(13)980#define PWR_ON BIT(12)981#define EXTIADP_TRNS BIT(11)982#define EXTIADP_TH_DET BIT(9)983#define EXIADP_TH_RES BIT(8)984#define BAT_MNT_DET BIT(7)985#define BAT_MNT_RES BIT(6)986#define TSD_DET BIT(5)987#define TSD_RES BIT(4)988#define CHGWDT_EXP BIT(3)989#define THERMWDT_EXP BIT(2)990#define TMP_TRNS BIT(1)991#define CHG_TRNS BIT(0)992#define INT5_ALL (OTP_LOAD_DONE |\993		 PWR_ON |\994		 EXTIADP_TRNS |\995		 EXTIADP_TH_DET |\996		 EXIADP_TH_RES |\997		 BAT_MNT_DET |\998		 BAT_MNT_RES |\999		 TSD_DET |\1000		 TSD_RES |\1001		 CHGWDT_EXP |\1002		 THERMWDT_EXP |\1003		 TMP_TRNS |\1004		 CHG_TRNS)1005 1006/* INT 6*/1007#define VBUS_UCD_PORT_DET BIT(13)1008#define VBUS_UCD_UCHG_DET BIT(12)1009#define VBUS_UCD_URID_RMV BIT(11)1010#define VBUS_UCD_OTG_DET BIT(10)1011#define VBUS_UCD_URID_MOD BIT(8)1012#define VCC_UCD_PORT_DET BIT(5)1013#define VCC_UCD_UCHG_DET BIT(4)1014#define VCC_UCD_URID_RMV BIT(3)1015#define VCC_UCD_OTG_DET BIT(2)1016#define VCC_UCD_URID_MOD BIT(0)1017#define INT6_ALL (VBUS_UCD_PORT_DET |\1018		 VBUS_UCD_UCHG_DET |\1019		 VBUS_UCD_URID_RMV |\1020		 VBUS_UCD_OTG_DET |\1021		 VBUS_UCD_URID_MOD |\1022		 VCC_UCD_PORT_DET |\1023		 VCC_UCD_UCHG_DET |\1024		 VCC_UCD_URID_RMV |\1025		 VCC_UCD_OTG_DET |\1026		 VCC_UCD_URID_MOD)1027 1028/* INT 7 */1029#define PROCHOT_DET BIT(15)1030#define PROCHOT_RES BIT(14)1031#define VACP_DET BIT(11)1032#define VACP_RES BIT(10)1033#define VACP_TH_DET BIT(9)1034#define VACP_TH_RES BIT(8)1035#define IACP_TH_DET BIT(7)1036#define IACP_THE_RES BIT(6)1037#define THERM_TH_DET BIT(5)1038#define THERM_TH_RES BIT(4)1039#define IBATM_TH_DET BIT(3)1040#define IBATM_TH_RES BIT(2)1041#define IBATP_TH_DET BIT(1)1042#define IBATP_TH_RES BIT(0)1043#define INT7_ALL (PROCHOT_DET |\1044		 PROCHOT_RES |\1045		 VACP_DET |\1046		 VACP_RES |\1047		 VACP_TH_DET |\1048		 VACP_TH_RES |\1049		 IACP_TH_DET |\1050		 IACP_THE_RES |\1051		 THERM_TH_DET |\1052		 THERM_TH_RES |\1053		 IBATM_TH_DET |\1054		 IBATM_TH_RES |\1055		 IBATP_TH_DET |\1056		 IBATP_TH_RES)1057 1058/* SYSTEM_CTRL_SET*/1059#define MONRST BIT(6)1060#define ALMRST BIT(5)1061#define CHGRST BIT(4)1062#define OTPLD  BIT(1)1063#define ALLRST BIT(0)1064 1065/* F_BATTEMP */1066#define ROOM		0x01067#define HOT1		0x11068#define HOT2		0x21069#define HOT3		0x31070#define COLD1		0x41071#define COLD2		0x51072#define TEMP_DIS	0x61073#define BATT_OPEN	0x71074 1075#endif1076