0x1949 Team - FAZEMRX - MANAGER
Edit File: rohm-bd71815.h
/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright 2021 ROHM Semiconductors. * * Author: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> * * Copyright 2014 Embest Technology Co. Ltd. Inc. * * Author: yanglsh@embest-tech.com */ #ifndef _MFD_BD71815_H #define _MFD_BD71815_H #include <linux/regmap.h> enum { BD71815_BUCK1 = 0, BD71815_BUCK2, BD71815_BUCK3, BD71815_BUCK4, BD71815_BUCK5, /* General Purpose */ BD71815_LDO1, BD71815_LDO2, BD71815_LDO3, /* LDOs for SD Card and SD Card Interface */ BD71815_LDO4, BD71815_LDO5, /* LDO for DDR Reference Voltage */ BD71815_LDODVREF, /* LDO for Low-Power State Retention */ BD71815_LDOLPSR, BD71815_WLED, BD71815_REGULATOR_CNT, }; #define BD71815_SUPPLY_STATE_ENABLED 0x1 enum { BD71815_REG_DEVICE = 0, BD71815_REG_PWRCTRL, BD71815_REG_BUCK1_MODE, BD71815_REG_BUCK2_MODE, BD71815_REG_BUCK3_MODE, BD71815_REG_BUCK4_MODE, BD71815_REG_BUCK5_MODE, BD71815_REG_BUCK1_VOLT_H, BD71815_REG_BUCK1_VOLT_L, BD71815_REG_BUCK2_VOLT_H, BD71815_REG_BUCK2_VOLT_L, BD71815_REG_BUCK3_VOLT, BD71815_REG_BUCK4_VOLT, BD71815_REG_BUCK5_VOLT, BD71815_REG_LED_CTRL, BD71815_REG_LED_DIMM, BD71815_REG_LDO_MODE1, BD71815_REG_LDO_MODE2, BD71815_REG_LDO_MODE3, BD71815_REG_LDO_MODE4, BD71815_REG_LDO1_VOLT, BD71815_REG_LDO2_VOLT, BD71815_REG_LDO3_VOLT, BD71815_REG_LDO4_VOLT, BD71815_REG_LDO5_VOLT_H, BD71815_REG_LDO5_VOLT_L, BD71815_REG_BUCK_PD_DIS, BD71815_REG_LDO_PD_DIS, BD71815_REG_GPO, BD71815_REG_OUT32K, BD71815_REG_SEC, BD71815_REG_MIN, BD71815_REG_HOUR, BD71815_REG_WEEK, BD71815_REG_DAY, BD71815_REG_MONTH, BD71815_REG_YEAR, BD71815_REG_ALM0_SEC, BD71815_REG_ALM1_SEC = 0x2C, BD71815_REG_ALM0_MASK = 0x33, BD71815_REG_ALM1_MASK, BD71815_REG_ALM2, BD71815_REG_TRIM, BD71815_REG_CONF, BD71815_REG_SYS_INIT, BD71815_REG_CHG_STATE, BD71815_REG_CHG_LAST_STATE, BD71815_REG_BAT_STAT, BD71815_REG_DCIN_STAT, BD71815_REG_VSYS_STAT, BD71815_REG_CHG_STAT, BD71815_REG_CHG_WDT_STAT, BD71815_REG_BAT_TEMP, BD71815_REG_IGNORE_0, BD71815_REG_INHIBIT_0, BD71815_REG_DCIN_CLPS, BD71815_REG_VSYS_REG, BD71815_REG_VSYS_MAX, BD71815_REG_VSYS_MIN, BD71815_REG_CHG_SET1, BD71815_REG_CHG_SET2, BD71815_REG_CHG_WDT_PRE, BD71815_REG_CHG_WDT_FST, BD71815_REG_CHG_IPRE, BD71815_REG_CHG_IFST, BD71815_REG_CHG_IFST_TERM, BD71815_REG_CHG_VPRE, BD71815_REG_CHG_VBAT_1, BD71815_REG_CHG_VBAT_2, BD71815_REG_CHG_VBAT_3, BD71815_REG_CHG_LED_1, BD71815_REG_VF_TH, BD71815_REG_BAT_SET_1, BD71815_REG_BAT_SET_2, BD71815_REG_BAT_SET_3, BD71815_REG_ALM_VBAT_TH_U, BD71815_REG_ALM_VBAT_TH_L, BD71815_REG_ALM_DCIN_TH, BD71815_REG_ALM_VSYS_TH, BD71815_REG_VM_IBAT_U, BD71815_REG_VM_IBAT_L, BD71815_REG_VM_VBAT_U, BD71815_REG_VM_VBAT_L, BD71815_REG_VM_BTMP, BD71815_REG_VM_VTH, BD71815_REG_VM_DCIN_U, BD71815_REG_VM_DCIN_L, BD71815_REG_VM_VSYS, BD71815_REG_VM_VF, BD71815_REG_VM_OCI_PRE_U, BD71815_REG_VM_OCI_PRE_L, BD71815_REG_VM_OCV_PRE_U, BD71815_REG_VM_OCV_PRE_L, BD71815_REG_VM_OCI_PST_U, BD71815_REG_VM_OCI_PST_L, BD71815_REG_VM_OCV_PST_U, BD71815_REG_VM_OCV_PST_L, BD71815_REG_VM_SA_VBAT_U, BD71815_REG_VM_SA_VBAT_L, BD71815_REG_VM_SA_IBAT_U, BD71815_REG_VM_SA_IBAT_L, BD71815_REG_CC_CTRL, BD71815_REG_CC_BATCAP1_TH_U, BD71815_REG_CC_BATCAP1_TH_L, BD71815_REG_CC_BATCAP2_TH_U, BD71815_REG_CC_BATCAP2_TH_L, BD71815_REG_CC_BATCAP3_TH_U, BD71815_REG_CC_BATCAP3_TH_L, BD71815_REG_CC_STAT, BD71815_REG_CC_CCNTD_3, BD71815_REG_CC_CCNTD_2, BD71815_REG_CC_CCNTD_1, BD71815_REG_CC_CCNTD_0, BD71815_REG_CC_CURCD_U, BD71815_REG_CC_CURCD_L, BD71815_REG_VM_OCUR_THR_1, BD71815_REG_VM_OCUR_DUR_1, BD71815_REG_VM_OCUR_THR_2, BD71815_REG_VM_OCUR_DUR_2, BD71815_REG_VM_OCUR_THR_3, BD71815_REG_VM_OCUR_DUR_3, BD71815_REG_VM_OCUR_MON, BD71815_REG_VM_BTMP_OV_THR, BD71815_REG_VM_BTMP_OV_DUR, BD71815_REG_VM_BTMP_LO_THR, BD71815_REG_VM_BTMP_LO_DUR, BD71815_REG_VM_BTMP_MON, BD71815_REG_INT_EN_01, BD71815_REG_INT_EN_11 = 0x95, BD71815_REG_INT_EN_12, BD71815_REG_INT_STAT, BD71815_REG_INT_STAT_01, BD71815_REG_INT_STAT_02, BD71815_REG_INT_STAT_03, BD71815_REG_INT_STAT_04, BD71815_REG_INT_STAT_05, BD71815_REG_INT_STAT_06, BD71815_REG_INT_STAT_07, BD71815_REG_INT_STAT_08, BD71815_REG_INT_STAT_09, BD71815_REG_INT_STAT_10, BD71815_REG_INT_STAT_11, BD71815_REG_INT_STAT_12, BD71815_REG_INT_UPDATE, BD71815_REG_VM_VSYS_U = 0xC0, BD71815_REG_VM_VSYS_L, BD71815_REG_VM_SA_VSYS_U, BD71815_REG_VM_SA_VSYS_L, BD71815_REG_VM_SA_IBAT_MIN_U = 0xD0, BD71815_REG_VM_SA_IBAT_MIN_L, BD71815_REG_VM_SA_IBAT_MAX_U, BD71815_REG_VM_SA_IBAT_MAX_L, BD71815_REG_VM_SA_VBAT_MIN_U, BD71815_REG_VM_SA_VBAT_MIN_L, BD71815_REG_VM_SA_VBAT_MAX_U, BD71815_REG_VM_SA_VBAT_MAX_L, BD71815_REG_VM_SA_VSYS_MIN_U, BD71815_REG_VM_SA_VSYS_MIN_L, BD71815_REG_VM_SA_VSYS_MAX_U, BD71815_REG_VM_SA_VSYS_MAX_L, BD71815_REG_VM_SA_MINMAX_CLR, BD71815_REG_REX_CCNTD_3 = 0xE0, BD71815_REG_REX_CCNTD_2, BD71815_REG_REX_CCNTD_1, BD71815_REG_REX_CCNTD_0, BD71815_REG_REX_SA_VBAT_U, BD71815_REG_REX_SA_VBAT_L, BD71815_REG_REX_CTRL_1, BD71815_REG_REX_CTRL_2, BD71815_REG_FULL_CCNTD_3, BD71815_REG_FULL_CCNTD_2, BD71815_REG_FULL_CCNTD_1, BD71815_REG_FULL_CCNTD_0, BD71815_REG_FULL_CTRL, BD71815_REG_CCNTD_CHG_3 = 0xF0, BD71815_REG_CCNTD_CHG_2, BD71815_REG_TEST_MODE = 0xFE, BD71815_MAX_REGISTER, }; /* BD71815_REG_BUCK1_MODE bits */ #define BD71815_BUCK_RAMPRATE_MASK 0xC0 #define BD71815_BUCK_RAMPRATE_10P00MV 0x0 #define BD71815_BUCK_RAMPRATE_5P00MV 0x01 #define BD71815_BUCK_RAMPRATE_2P50MV 0x02 #define BD71815_BUCK_RAMPRATE_1P25MV 0x03 #define BD71815_BUCK_PWM_FIXED BIT(4) #define BD71815_BUCK_SNVS_ON BIT(3) #define BD71815_BUCK_RUN_ON BIT(2) #define BD71815_BUCK_LPSR_ON BIT(1) #define BD71815_BUCK_SUSP_ON BIT(0) /* BD71815_REG_BUCK1_VOLT_H bits */ #define BD71815_BUCK_DVSSEL BIT(7) #define BD71815_BUCK_STBY_DVS BIT(6) #define BD71815_VOLT_MASK 0x3F #define BD71815_BUCK1_H_DEFAULT 0x14 #define BD71815_BUCK1_L_DEFAULT 0x14 /* BD71815_REG_BUCK2_VOLT_H bits */ #define BD71815_BUCK2_H_DEFAULT 0x14 #define BD71815_BUCK2_L_DEFAULT 0x14 /* WLED output */ /* current register mask */ #define LED_DIMM_MASK 0x3f /* LED enable bits at LED_CTRL reg */ #define LED_CHGDONE_EN BIT(4) #define LED_RUN_ON BIT(2) #define LED_LPSR_ON BIT(1) #define LED_SUSP_ON BIT(0) /* BD71815_REG_LDO1_CTRL bits */ #define LDO1_EN BIT(0) #define LDO2_EN BIT(1) #define LDO3_EN BIT(2) #define DVREF_EN BIT(3) #define VOSNVS_SW_EN BIT(4) /* LDO_MODE1_register */ #define LDO1_SNVS_ON BIT(7) #define LDO1_RUN_ON BIT(6) #define LDO1_LPSR_ON BIT(5) #define LDO1_SUSP_ON BIT(4) /* set => register control, unset => GPIO control */ #define LDO4_MODE_MASK BIT(3) #define LDO4_MODE_I2C BIT(3) #define LDO4_MODE_GPIO 0 /* set => register control, unset => start when DCIN connected */ #define LDO3_MODE_MASK BIT(2) #define LDO3_MODE_I2C BIT(2) #define LDO3_MODE_DCIN 0 /* LDO_MODE2 register */ #define LDO3_SNVS_ON BIT(7) #define LDO3_RUN_ON BIT(6) #define LDO3_LPSR_ON BIT(5) #define LDO3_SUSP_ON BIT(4) #define LDO2_SNVS_ON BIT(3) #define LDO2_RUN_ON BIT(2) #define LDO2_LPSR_ON BIT(1) #define LDO2_SUSP_ON BIT(0) /* LDO_MODE3 register */ #define LDO5_SNVS_ON BIT(7) #define LDO5_RUN_ON BIT(6) #define LDO5_LPSR_ON BIT(5) #define LDO5_SUSP_ON BIT(4) #define LDO4_SNVS_ON BIT(3) #define LDO4_RUN_ON BIT(2) #define LDO4_LPSR_ON BIT(1) #define LDO4_SUSP_ON BIT(0) /* LDO_MODE4 register */ #define DVREF_SNVS_ON BIT(7) #define DVREF_RUN_ON BIT(6) #define DVREF_LPSR_ON BIT(5) #define DVREF_SUSP_ON BIT(4) #define LDO_LPSR_SNVS_ON BIT(3) #define LDO_LPSR_RUN_ON BIT(2) #define LDO_LPSR_LPSR_ON BIT(1) #define LDO_LPSR_SUSP_ON BIT(0) /* BD71815_REG_OUT32K bits */ #define OUT32K_EN BIT(0) #define OUT32K_MODE BIT(1) #define OUT32K_MODE_CMOS BIT(1) #define OUT32K_MODE_OPEN_DRAIN 0 /* BD71815_REG_BAT_STAT bits */ #define BAT_DET BIT(5) #define BAT_DET_OFFSET 5 #define BAT_DET_DONE BIT(4) #define VBAT_OV BIT(3) #define DBAT_DET BIT(0) /* BD71815_REG_VBUS_STAT bits */ #define VBUS_DET BIT(0) #define BD71815_REG_RTC_START BD71815_REG_SEC #define BD71815_REG_RTC_ALM_START BD71815_REG_ALM0_SEC /* BD71815_REG_ALM0_MASK bits */ #define A0_ONESEC BIT(7) /* BD71815_REG_INT_EN_00 bits */ #define ALMALE BIT(0) /* BD71815_REG_INT_STAT_03 bits */ #define DCIN_MON_DET BIT(1) #define DCIN_MON_RES BIT(0) #define POWERON_LONG BIT(2) #define POWERON_MID BIT(3) #define POWERON_SHORT BIT(4) #define POWERON_PRESS BIT(5) /* BD71805_REG_INT_STAT_08 bits */ #define VBAT_MON_DET BIT(1) #define VBAT_MON_RES BIT(0) /* BD71805_REG_INT_STAT_11 bits */ #define INT_STAT_11_VF_DET BIT(7) #define INT_STAT_11_VF_RES BIT(6) #define INT_STAT_11_VF125_DET BIT(5) #define INT_STAT_11_VF125_RES BIT(4) #define INT_STAT_11_OVTMP_DET BIT(3) #define INT_STAT_11_OVTMP_RES BIT(2) #define INT_STAT_11_LOTMP_DET BIT(1) #define INT_STAT_11_LOTMP_RES BIT(0) #define VBAT_MON_DET BIT(1) #define VBAT_MON_RES BIT(0) /* BD71815_REG_PWRCTRL bits */ #define RESTARTEN BIT(0) /* BD71815_REG_GPO bits */ #define READY_FORCE_LOW BIT(2) #define BD71815_GPIO_DRIVE_MASK BIT(4) #define BD71815_GPIO_OPEN_DRAIN 0 #define BD71815_GPIO_CMOS BIT(4) /* BD71815 interrupt masks */ enum { BD71815_INT_EN_01_BUCKAST_MASK = 0x0F, BD71815_INT_EN_02_DCINAST_MASK = 0x3E, BD71815_INT_EN_03_DCINAST_MASK = 0x3F, BD71815_INT_EN_04_VSYSAST_MASK = 0xCF, BD71815_INT_EN_05_CHGAST_MASK = 0xFC, BD71815_INT_EN_06_BATAST_MASK = 0xF3, BD71815_INT_EN_07_BMONAST_MASK = 0xFE, BD71815_INT_EN_08_BMONAST_MASK = 0x03, BD71815_INT_EN_09_BMONAST_MASK = 0x07, BD71815_INT_EN_10_BMONAST_MASK = 0x3F, BD71815_INT_EN_11_TMPAST_MASK = 0xFF, BD71815_INT_EN_12_ALMAST_MASK = 0x07, }; /* BD71815 interrupt irqs */ enum { /* BUCK reg interrupts */ BD71815_INT_BUCK1_OCP, BD71815_INT_BUCK2_OCP, BD71815_INT_BUCK3_OCP, BD71815_INT_BUCK4_OCP, BD71815_INT_BUCK5_OCP, BD71815_INT_LED_OVP, BD71815_INT_LED_OCP, BD71815_INT_LED_SCP, /* DCIN1 interrupts */ BD71815_INT_DCIN_RMV, BD71815_INT_CLPS_OUT, BD71815_INT_CLPS_IN, BD71815_INT_DCIN_OVP_RES, BD71815_INT_DCIN_OVP_DET, /* DCIN2 interrupts */ BD71815_INT_DCIN_MON_RES, BD71815_INT_DCIN_MON_DET, BD71815_INT_WDOG, /* Vsys INT_STAT_04 */ BD71815_INT_VSYS_UV_RES, BD71815_INT_VSYS_UV_DET, BD71815_INT_VSYS_LOW_RES, BD71815_INT_VSYS_LOW_DET, BD71815_INT_VSYS_MON_RES, BD71815_INT_VSYS_MON_DET, /* Charger INT_STAT_05 */ BD71815_INT_CHG_WDG_TEMP, BD71815_INT_CHG_WDG_TIME, BD71815_INT_CHG_RECHARGE_RES, BD71815_INT_CHG_RECHARGE_DET, BD71815_INT_CHG_RANGED_TEMP_TRANSITION, BD71815_INT_CHG_STATE_TRANSITION, /* Battery INT_STAT_06 */ BD71815_INT_BAT_TEMP_NORMAL, BD71815_INT_BAT_TEMP_ERANGE, BD71815_INT_BAT_REMOVED, BD71815_INT_BAT_DETECTED, BD71815_INT_THERM_REMOVED, BD71815_INT_THERM_DETECTED, /* Battery Mon 1 INT_STAT_07 */ BD71815_INT_BAT_DEAD, BD71815_INT_BAT_SHORTC_RES, BD71815_INT_BAT_SHORTC_DET, BD71815_INT_BAT_LOW_VOLT_RES, BD71815_INT_BAT_LOW_VOLT_DET, BD71815_INT_BAT_OVER_VOLT_RES, BD71815_INT_BAT_OVER_VOLT_DET, /* Battery Mon 2 INT_STAT_08 */ BD71815_INT_BAT_MON_RES, BD71815_INT_BAT_MON_DET, /* Battery Mon 3 (Coulomb counter) INT_STAT_09 */ BD71815_INT_BAT_CC_MON1, BD71815_INT_BAT_CC_MON2, BD71815_INT_BAT_CC_MON3, /* Battery Mon 4 INT_STAT_10 */ BD71815_INT_BAT_OVER_CURR_1_RES, BD71815_INT_BAT_OVER_CURR_1_DET, BD71815_INT_BAT_OVER_CURR_2_RES, BD71815_INT_BAT_OVER_CURR_2_DET, BD71815_INT_BAT_OVER_CURR_3_RES, BD71815_INT_BAT_OVER_CURR_3_DET, /* Temperature INT_STAT_11 */ BD71815_INT_TEMP_BAT_LOW_RES, BD71815_INT_TEMP_BAT_LOW_DET, BD71815_INT_TEMP_BAT_HI_RES, BD71815_INT_TEMP_BAT_HI_DET, BD71815_INT_TEMP_CHIP_OVER_125_RES, BD71815_INT_TEMP_CHIP_OVER_125_DET, BD71815_INT_TEMP_CHIP_OVER_VF_RES, BD71815_INT_TEMP_CHIP_OVER_VF_DET, /* RTC Alarm INT_STAT_12 */ BD71815_INT_RTC0, BD71815_INT_RTC1, BD71815_INT_RTC2, }; #define BD71815_INT_BUCK1_OCP_MASK BIT(0) #define BD71815_INT_BUCK2_OCP_MASK BIT(1) #define BD71815_INT_BUCK3_OCP_MASK BIT(2) #define BD71815_INT_BUCK4_OCP_MASK BIT(3) #define BD71815_INT_BUCK5_OCP_MASK BIT(4) #define BD71815_INT_LED_OVP_MASK BIT(5) #define BD71815_INT_LED_OCP_MASK BIT(6) #define BD71815_INT_LED_SCP_MASK BIT(7) #define BD71815_INT_DCIN_RMV_MASK BIT(1) #define BD71815_INT_CLPS_OUT_MASK BIT(2) #define BD71815_INT_CLPS_IN_MASK BIT(3) #define BD71815_INT_DCIN_OVP_RES_MASK BIT(4) #define BD71815_INT_DCIN_OVP_DET_MASK BIT(5) #define BD71815_INT_DCIN_MON_RES_MASK BIT(0) #define BD71815_INT_DCIN_MON_DET_MASK BIT(1) #define BD71815_INT_WDOG_MASK BIT(6) #define BD71815_INT_VSYS_UV_RES_MASK BIT(0) #define BD71815_INT_VSYS_UV_DET_MASK BIT(1) #define BD71815_INT_VSYS_LOW_RES_MASK BIT(2) #define BD71815_INT_VSYS_LOW_DET_MASK BIT(3) #define BD71815_INT_VSYS_MON_RES_MASK BIT(6) #define BD71815_INT_VSYS_MON_DET_MASK BIT(7) #define BD71815_INT_CHG_WDG_TEMP_MASK BIT(2) #define BD71815_INT_CHG_WDG_TIME_MASK BIT(3) #define BD71815_INT_CHG_RECHARGE_RES_MASK BIT(4) #define BD71815_INT_CHG_RECHARGE_DET_MASK BIT(5) #define BD71815_INT_CHG_RANGED_TEMP_TRANSITION_MASK BIT(6) #define BD71815_INT_CHG_STATE_TRANSITION_MASK BIT(7) #define BD71815_INT_BAT_TEMP_NORMAL_MASK BIT(0) #define BD71815_INT_BAT_TEMP_ERANGE_MASK BIT(1) #define BD71815_INT_BAT_REMOVED_MASK BIT(4) #define BD71815_INT_BAT_DETECTED_MASK BIT(5) #define BD71815_INT_THERM_REMOVED_MASK BIT(6) #define BD71815_INT_THERM_DETECTED_MASK BIT(7) #define BD71815_INT_BAT_DEAD_MASK BIT(1) #define BD71815_INT_BAT_SHORTC_RES_MASK BIT(2) #define BD71815_INT_BAT_SHORTC_DET_MASK BIT(3) #define BD71815_INT_BAT_LOW_VOLT_RES_MASK BIT(4) #define BD71815_INT_BAT_LOW_VOLT_DET_MASK BIT(5) #define BD71815_INT_BAT_OVER_VOLT_RES_MASK BIT(6) #define BD71815_INT_BAT_OVER_VOLT_DET_MASK BIT(7) #define BD71815_INT_BAT_MON_RES_MASK BIT(0) #define BD71815_INT_BAT_MON_DET_MASK BIT(1) #define BD71815_INT_BAT_CC_MON1_MASK BIT(0) #define BD71815_INT_BAT_CC_MON2_MASK BIT(1) #define BD71815_INT_BAT_CC_MON3_MASK BIT(2) #define BD71815_INT_BAT_OVER_CURR_1_RES_MASK BIT(0) #define BD71815_INT_BAT_OVER_CURR_1_DET_MASK BIT(1) #define BD71815_INT_BAT_OVER_CURR_2_RES_MASK BIT(2) #define BD71815_INT_BAT_OVER_CURR_2_DET_MASK BIT(3) #define BD71815_INT_BAT_OVER_CURR_3_RES_MASK BIT(4) #define BD71815_INT_BAT_OVER_CURR_3_DET_MASK BIT(5) #define BD71815_INT_TEMP_BAT_LOW_RES_MASK BIT(0) #define BD71815_INT_TEMP_BAT_LOW_DET_MASK BIT(1) #define BD71815_INT_TEMP_BAT_HI_RES_MASK BIT(2) #define BD71815_INT_TEMP_BAT_HI_DET_MASK BIT(3) #define BD71815_INT_TEMP_CHIP_OVER_125_RES_MASK BIT(4) #define BD71815_INT_TEMP_CHIP_OVER_125_DET_MASK BIT(5) #define BD71815_INT_TEMP_CHIP_OVER_VF_RES_MASK BIT(6) #define BD71815_INT_TEMP_CHIP_OVER_VF_DET_MASK BIT(7) #define BD71815_INT_RTC0_MASK BIT(0) #define BD71815_INT_RTC1_MASK BIT(1) #define BD71815_INT_RTC2_MASK BIT(2) /* BD71815_REG_CC_CTRL bits */ #define CCNTRST 0x80 #define CCNTENB 0x40 #define CCCALIB 0x20 /* BD71815_REG_CC_CURCD */ #define CURDIR_Discharging 0x8000 /* BD71815_REG_VM_SA_IBAT */ #define IBAT_SA_DIR_Discharging 0x8000 /* BD71815_REG_REX_CTRL_1 bits */ #define REX_CLR BIT(4) /* BD71815_REG_REX_CTRL_1 bits */ #define REX_PMU_STATE_MASK BIT(2) /* BD71815_REG_LED_CTRL bits */ #define CHGDONE_LED_EN BIT(4) #endif /* __LINUX_MFD_BD71815_H */