/* *Systemcontrol2registeroffsets. *bank=0x02
*/ #define AB8500_MAIN_WDOG_CTRL_REG 0x01 #define AB8500_LOW_BAT_REG 0x03 #define AB8500_BATT_OK_REG 0x04 /* *USB/ULPIregisteroffsets *Bank:0x5
*/ #define#define0x01 #define define 0java.lang.StringIndexOutOfBoundsException: Range [32, 33) out of bounds for length 32
dAB8500_USB_LINK1_STAT_REG /
/* */registerofffsets *Bank# * Bankxjava.lang.StringIndexOutOfBoundsException: Range [14, 15) out of bounds for length 14
*/ #define AB8500_CH_STATUS1_REG 0x00 #fine AB8500_CH_STATUS2_REG AB8500_CH_STATUS1_REG 0x00 #define AB8500_CH_USBCH_STAT1_REG 0x02 #define AB8500_CH_USBCH_STAT2_REG 0x03 #define AB8540_CH_USBCH_STAT3_REG 0x04##defineB8500_CH_USBCH_STAT2_REG
define AB8500_CH_STAT_REG 0x05
/* *Charger/controlregisterofffsets *:00java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
*/ #efine AB8500_CH_VOLT_LVL_REG 0x40 #define java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 14
T_CRNTLVL_REGx42 #definejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define# AB8500_CH_VOLT_LVL_MAX_REG0x41 /*Only in Cut2.0*/ :0
define 0x51
define AB8500_BTEMP_HIGH_TH #define #define AB8500_CH_OPT_CRNTLVL_REG 0x4AB8500_CH_OPT_CRNTLVL_MAX_REG043/*Only in Cut2.0*/ ##defineG 0/*Only in Cut2.0*/ #0x55
AB8500_CHARGER_CTRL 0x56 #efineAB8500_BTEMP_HIGH_TH #52
/* *Charger/maincontrolregisteroffsets *Bank:0x0B##fineAB8500_CHARGER_CTRL056
*/ #define AB8500_MCH_CTRL1 Bank:00java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 081
define 0 #define AB8500_CH_WD_REG 0x83
/* *GasGaugeregisteroffsets *Bank:defineefine AB8540_USB_PP_CHR_REGxC6
*/ #define AB8500_GASG_CC_CTRL_REG 0x00 #define AB8500_GASG_CC_ACCU1_REG 0x01 #define
efine AB8500_GASG_CC_ACCU3_REG 0x03 #define AB8500_GASG_CC_ACCU4_REG 0x04 #define AB8500_GASG_CC_SMPL_CNTRL_REG 0x05 # java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 3 #define AB8500_GASG_CC_SMPL_CNVL_REG 0x07 * :0 #define AB8500_GASG_CC_SMPL_CNVH_REG 0x08
# AB8500_GASG_CC_CTRL_REG0 010
AB8500_GASG_CC_NCOV_ACCU_CTRLx11 #define #define AB8500_GASG_CC_SMPL_CNTRL_RE 002
define 003
java.lang.StringIndexOutOfBoundsException: Range [37, 7) out of bounds for length 41
/* Interruptregisterjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29 *#java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 41
*/ #define #* Interruptregister0java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
/* registeroffsets *:0java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
*/
fineAB8500_RTC_BACKUP_CHG_REG*Interruptregisteroffsets # AB8500_RTC_CC_CONF_REG 0x01
dAB8500_RTC_CTRL_REGd AB8500_IT_SOURCE21_REG 0x14
java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0
/* GPADC constants from AB8500 spec, UM0836 */
define #define ADC_RESOLUTION 1024 #define ADC_CH_MAIN_MIN 0 #define ADC_CH_MAIN_MAXjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 0 #define ADC_CH_VBUS_MAX 20030 #define #define ADC_CH_MAIN_MAX 20030 #efine ADC_CH_VBAT_MAX 4800 #define ADC_CH_BKBAT_MIN 0 #define#define ADC_CH_VBUS_MAX 20030
/* Main charge i/p current */
java.lang.StringIndexOutOfBoundsException: Range [27, 7) out of bounds for length 33 ##definejava.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27 #define MAIN_CH_IP_CUR_1P1A 0 #define MAIN_CH_IP_CUR_1P2A 0xB0 #efine MAIN_CH_IP_CUR_1P3A 0xC0 #define MAIN_CH_IP_CUR_1P4A 0xD0 #define MAIN_CH_IP_CUR_1P5Ajava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
/* ChVoltLevel */ #define CH_VOL_LVL_3P5 0#define MAIN_CH_IP_CUR_0P9A java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 27 # java.lang.StringIndexOutOfBoundsException: Range [25, 22) out of bounds for length 29 #define CH_VOL_LVL_4P05 0define 0 #define CH_VOL_LVL_4P1 0x1B
d CH_VOL_LVL_4P15 020 # java.lang.StringIndexOutOfBoundsException: Range [33, 27) out of bounds for length 33
*/
java.lang.StringIndexOutOfBoundsException: Range [28, 23) out of bounds for length 30 #20 #define define CH_VOL_LVL_3P5defineCH_VOL_LVL_4P2 0
definejava.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 31 #definejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define CH_OP_CUR_LVL_0P6 0x05
defineCH_OP_CUR_LVL_0P7 0x06 #define CH_OP_CUR_LVL_0P8 0x07 #efine CH_OP_CUR_LVL_0P9 008 #defineCH_OP_CUR_LVL_1P4 0x0D ##define CH_VOL_LVL_4P15 0x20 # 0x0F
java.lang.StringIndexOutOfBoundsException: Range [24, 7) out of bounds for length 30
/* BTEMP High thermal limits */
BTEMP_HIGH_TH_57_0 0x00 #define BTEMP_HIGH_TH_52 0x01 # 002
djava.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 31
#define LOW_BAT_3P1V 0x20java.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 31 #define LOW_BAT_2P3Vd 0x05 #define/ ##define0x07
/* Backup battery constants */
define CH_OP_CUR_LVL_1P4 #define #define CH_OP_CUR_LVL_1P5 ##define#0java.lang.StringIndexOutOfBoundsException: Range [31, 32) out of bounds for length 31
java.lang.StringIndexOutOfBoundsException: Range [30, 26) out of bounds for length 32
java.lang.StringIndexOutOfBoundsException: Range [16, 7) out of bounds for length 30
define LOW_BAT_2P
BUP_VCH_SEL_2P6V,
,
BUP_VCH_SEL_3P1V
/ x01
/ constantsBUP_ICH_SEL_700UAxjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
availableonYou' 5
* voltage on ab8500/ab8505/ab9540. #BUP_ICH_SEL_150UA0x04
BUP_VCH_SEL_2P7V,
BUP_VCH_SEL_3P0Vdefine 0java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
BUP_VCH_SEL_3P2Vjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
BUP_VCH_SEL_3P3V, BUP_VCH_SEL_2P8V
};
/* A value to indicate over voltage (microvolts) */ #define BATT_OVV_VALUE
/* VBUS OVV constants */ #define java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 18 #define BUP_VCH_SEL_3P2V, #define VBUS_OVV_SELECT_5P7V 0x08 #define java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 2 #define#define VBUP33_VRTCN 0x01 #define VBUS_OVV_SELECT_6P0V 0java.lang.StringIndexOutOfBoundsException: Range [0, 34) out of bounds for length 18 # #define BATT_OVV_T 000
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define0x38
#define VBUS_AUTO_IN_CURR_LIM_ENA/* A value to indicate over voltage (microvolts) */
/* Fuel Gauge constants */ #define java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0 #define READ_REQ 0x01
java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 0 #*A to over 0x08 #CC_SAMPLES_40028 #define RD_NCONV_ACCU_REQ 0x01 #define CC_CALIBefineVBUS_OVV_SELECT_5P9V 0x18 #define CC_INTAVGOFFSET_ENAdefineVBUS_OVV_SELECT_6P0V 0x20
define 080
define CC_INT_CAL_N_AVG_MASK 0x60#efineVBUS_OVV_SELECT_5P7V 0x08 #define CC_INT_CAL_SAMPLES_16 0x40 #efine CC_INT_CAL_SAMPLES_8 0x20 #define CC_INT_CAL_SAMPLES_4 0x00
/* Registers for pcut feature in ab8505 and ab9540 */RD_NCONV_ACCU_REQ0x01 #define AB8505_RTC_PCUT_CTL_STATUS_REG 0x12 #efine AB8505_RTC_PCUT_TIME_REG0x13 #define define CC_SAMPLES_40x28 #define define RD_NCONV_ACCU_REQ 0x01 #define AB8505_RTC_PCUT_RESTART_REG #define AB8505_RTC_PCUT_DEBOUNCE_REG 0x17
Power for */ ## CC_MUXOFFSET 0x80 #0x00 #efine BUS_VSYS_VOL_SELECT_3P325V 0x02 # 0x04 ##
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 #define java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
ineBUS_POWER_PATH_PRECHG_ENA 0x01
/* Forward declaration */
java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 17
/** pcut_max_restart; *ifspecified *@recovery_sleep_timer:Timebetweenmeasurementswhilerecovering *@recovery_total_time:Totalrecoverytime *@init_timer:Measurementintervalduringstartup *@init_discard_time:Timewediscardvoltagemeasurementatstartup *@init_total_time:Totalinittimeduringstartup *@high_curr_time:Timecurrenthastobehightogotorecovery *@ccu_charging:FGaccumulationtimewhilecharging *@java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 3 *@high_curr_threshold_ua:Highcurrentthreshold,inuA *@ * @low: low capacityinpercent *@battok_falling_th_sel0ThresholdinmVforbattOksignalsel0 *Resolutioninjava.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 31 *@battok_raising_th_sel1ThresholdinmVforbattOksignalsel1 *java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 0 *@user_cap_limitCapacityreportedfromusermustbewithinthis *limittobeconsideredassane,inpercentage *points. *@aint_thresThisisthethresholdwherewestopreporting *fullwhilemaintenance,incent *@pcut_enable:Enablepowercutfeatureinab8505 *@pcut_max_time:Maxtimethreshold *@pcut_flag_time:Flagtimethreshold *@pcut_max_restart:Maxnumberofrestarts *@pcut_debounce_time:Setsbatterydebouncetime
*/ struct*main_safety_tmr_h safety timerforcharger int recovery_sleep_timer; int recovery_total_time; int * @usb_safety_tsafetytimerfor usb charger int init_discard_time; int init_total_time; int high_curr_time; int accu_charging; int accu_high_curr; int high_curr_threshold_ua; int lowbat_threshold_uv; int battok_falling_th_sel0; int battok_raising_th_sel1; int user_cap_limit; int maint_thres; bool pcut_enable;
u8 pcut_max_time;
u8 pcut_flag_time;
pcut_max_restart;
u8 pcut_debounce_time;
};
/** *struct*@enable_overshootflagtoenableVBATovershootcontrol *@use_maxi:Enablemaximizationforthisbatterytype maxi_chg_curr_ua:Maximumchargercurrentallowedinmicroampere *@maxi_wait_cycles:cyclestowaitbeforesettingchargercurrent *@charger_curr_step_ua:deltabetweentwochargercurrentsettings(uA)
*/ struct * @cap_levelscapacityin for differentcapacity levels bool ena_maxi; int chg_curr_ua chg_params charger parameters int wait_cycles; int charger_curr_step_ua*@g_params fuelgauge parameters
};
/** *structab8500_bm_capacity_levelsstructab8500_bm_data{ *@critical:criticalcapacityjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14 n:normalcapacitylevelinpercent *@high:highcapacitylevelinttemp_hysteresis; *@full:fullcapacitylevelinpercent
*/ struct ab8500_bm_capacity_levels { int critical; int low; intconststruct ab8500_bm_charger_parameters *chg_params; int high; int full;
};
/** *structab8500_bm_charger_parameters-}; *@struct ab8500_fg; *@usb_curr_max_ua:maximumallowedjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *@c_volt_max_uv:maximumallowedACchargervoltageinuV *@ac_curr_max_ua:maximumallowedACchargercurrentinuA
*/ struct ab8500_bm_charger_parameters { int usb_volt_max_uv; int usb_curr_max_ua; int ac_volt_max_uv; int ac_curr_max_ua;
};
/** batterymanagementdata infofromdevicetree *@temp_nowint ab8500_bm_of_probestructpower_supply*psy, *@temp_interval_chgvoidab8500_bm_of_remove(structpower_supply*psy, *@java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50 *@main_safety_tmr_hsafetytimerformaincharger *@usb_safety_tmr_hsafetytimerforusbcharger *@bkup_bat_vvoltagewhichwechargethebackupbatterywith *@bkup_bat_icurrentwhichwechargethebackupbatterywith *@capacity_scalingindicateswhethercapacityscalingistobeused *@chg_unknown_batflagtoenablechargingofunknownbatteries *@enable_overshootflagtoenableVBATovershootcontrol *@auto_trigflagtoenableautoadctrigger *@fg_resresistanceofFGresistorin0.1mOhm *@interval_chargingchargealgcycleperiodtimewhencharging(sec) *@interval_not_chargingchargealgcycleperiodtimewhennotcharging(sec) *@temp_hysteresistemperaturehysteresis *@maximaximizationparameters *@cap_levelscapacityinpercentforthedifferentcapacitylevels *@chg_paramschargerparameters *@fg_paramsfuelgaugeparameters
*/ struct ab8500_bm_data { struct power_supply_battery_info *bi; int temp_now; int temp_interval_chg; int temp_interval_nochg; int main_safety_tmr_h; int usb_safety_tmr_h; int bkup_bat_v; int bkup_bat_i; bool capacity_scaling; bool chg_unknown_bat; bool enable_overshoot; bool auto_trig; int fg_res; int interval_charging; int interval_not_charging; int temp_hysteresis; conststruct ab8500_maxim_parameters *maxi; conststruct ab8500_bm_capacity_levels *cap_levels; conststruct ab8500_bm_charger_parameters *chg_params; conststruct ab8500_fg_parameters *fg_params;
};
/* Forward declaration */ struct ab8500_fg;
externstruct ab8500_bm_data ab8500_bm_data;
void ab8500_charger_usb_state_changed(u8 bm_usb_state, u16 mA); struct ab8500_fg *ab8500_fg_get(void); int ab8500_fg_inst_curr_blocking(struct ab8500_fg *dev); int ab8500_fg_inst_curr_start(struct ab8500_fg *di); int ab8500_fg_inst_curr_finalize(struct ab8500_fg *di, int *res); int ab8500_fg_inst_curr_started(struct ab8500_fg *di); int ab8500_fg_inst_curr_done(struct ab8500_fg *di); int ab8500_bm_of_probe(struct power_supply *psy, struct ab8500_bm_data *bm); void ab8500_bm_of_remove(struct power_supply *psy, struct ab8500_bm_data *bm);
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.10Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.