ab8500_fg
struct ab8500_fg;
struct ab8500_fg;
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);
struct ab8500_fg *fg;
static int ab8500_fg_convert_mah_to_permille(struct ab8500_fg *di, int cap_mah)
static int ab8500_fg_convert_permille_to_mah(struct ab8500_fg *di, int cap_pm)
static int ab8500_fg_convert_mah_to_uwh(struct ab8500_fg *di, int cap_mah)
static int ab8500_fg_calc_cap_charging(struct ab8500_fg *di)
static int ab8500_fg_calc_cap_discharge_voltage(struct ab8500_fg *di)
static int ab8500_fg_calc_cap_discharge_fg(struct ab8500_fg *di)
static int ab8500_fg_capacity_level(struct ab8500_fg *di)
static int ab8500_fg_calculate_scaled_capacity(struct ab8500_fg *di)
static void ab8500_fg_update_cap_scalers(struct ab8500_fg *di)
static void ab8500_fg_check_capacity_limits(struct ab8500_fg *di, bool init)
static void ab8500_fg_charge_state_to(struct ab8500_fg *di,
static void ab8500_fg_discharge_state_to(struct ab8500_fg *di,
static void ab8500_fg_algorithm_charging(struct ab8500_fg *di)
static void force_capacity(struct ab8500_fg *di)
static bool check_sysfs_capacity(struct ab8500_fg *di)
static void ab8500_fg_algorithm_discharging(struct ab8500_fg *di)
static void ab8500_fg_algorithm_calibrate(struct ab8500_fg *di)
static void ab8500_fg_algorithm(struct ab8500_fg *di)
struct ab8500_fg *di = container_of(work, struct ab8500_fg,
struct ab8500_fg *di = container_of(work, struct ab8500_fg,
struct ab8500_fg *di = container_of(work, struct ab8500_fg,
static int ab8500_fg_battok_calc(struct ab8500_fg *di, int target)
static int ab8500_fg_battok_init_hw_register(struct ab8500_fg *di)
struct ab8500_fg *di = container_of(work, struct ab8500_fg, fg_work);
struct ab8500_fg *di = _di;
struct ab8500_fg *di = _di;
struct ab8500_fg *di = _di;
struct ab8500_fg *di = _di;
struct ab8500_fg *di = _di;
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di;
static int ab8500_fg_init_hw_registers(struct ab8500_fg *di)
struct ab8500_fg *di = container_of(work, struct ab8500_fg,
struct ab8500_fg *ab8500_fg_get(void)
ssize_t (*show)(struct ab8500_fg *, char *);
ssize_t (*store)(struct ab8500_fg *, const char *, size_t);
static ssize_t charge_full_show(struct ab8500_fg *di, char *buf)
static ssize_t charge_full_store(struct ab8500_fg *di, const char *buf,
return list_first_entry_or_null(&ab8500_fg_list, struct ab8500_fg,
static ssize_t charge_now_show(struct ab8500_fg *di, char *buf)
static ssize_t charge_now_store(struct ab8500_fg *di, const char *buf,
struct ab8500_fg *di;
di = container_of(kobj, struct ab8500_fg, fg_kobject);
struct ab8500_fg *di;
di = container_of(kobj, struct ab8500_fg, fg_kobject);
ATTRIBUTE_GROUPS(ab8500_fg);
static void ab8500_fg_sysfs_exit(struct ab8500_fg *di)
static int ab8500_fg_sysfs_init(struct ab8500_fg *di)
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
struct ab8500_fg *di = power_supply_get_drvdata(psy);
static int ab8500_fg_sysfs_psy_create_attrs(struct ab8500_fg *di)
static void ab8500_fg_sysfs_psy_remove_attrs(struct ab8500_fg *di)
struct ab8500_fg *di = dev_get_drvdata(dev);
struct ab8500_fg *di = dev_get_drvdata(dev);
struct ab8500_fg *di = dev_get_drvdata(dev);
struct ab8500_fg *di = dev_get_drvdata(dev);
struct ab8500_fg *di;
struct ab8500_fg *di = platform_get_drvdata(pdev);
static int ab8500_fg_is_low_curr(struct ab8500_fg *di, int curr_ua)
static int ab8500_fg_add_cap_sample(struct ab8500_fg *di, int sample)
static void ab8500_fg_clear_cap_samples(struct ab8500_fg *di)
static void ab8500_fg_fill_cap_sample(struct ab8500_fg *di, int sample)
static int ab8500_fg_coulomb_counter(struct ab8500_fg *di, bool enable)
int ab8500_fg_inst_curr_start(struct ab8500_fg *di)
int ab8500_fg_inst_curr_started(struct ab8500_fg *di)
int ab8500_fg_inst_curr_done(struct ab8500_fg *di)
int ab8500_fg_inst_curr_finalize(struct ab8500_fg *di, int *curr_ua)
int ab8500_fg_inst_curr_blocking(struct ab8500_fg *di)
struct ab8500_fg *di = container_of(work,
struct ab8500_fg, fg_acc_cur_work);
static int ab8500_fg_bat_voltage(struct ab8500_fg *di)
static int ab8500_fg_volt_to_capacity(struct ab8500_fg *di, int voltage_uv)
static int ab8500_fg_uncomp_volt_to_capacity(struct ab8500_fg *di)
static int ab8500_fg_battery_resistance(struct ab8500_fg *di, int vbat_uncomp_uv)
static int ab8500_load_comp_fg_bat_voltage(struct ab8500_fg *di, bool always)
static int ab8500_fg_load_comp_volt_to_capacity(struct ab8500_fg *di)