ab8500_fg_c..._to_permille(9)
β¨ ab8500_fg_convert_mah_to_permille β¨
okay so real talk, this is a page straight out of the Kernel API Manual and it's lowkey a tiny little function that just... does one cute thing. converting capacity units. that's her whole job. she's not complicated, she's just β¨necessaryβ¨.
πΈ NAME πΈ
ab8500_fg_convert_mah_to_permille β literally just "Capacity in mAh to permille" π
π¦ SYNOPSIS π¦
int ab8500_fg_convert_mah_to_permille (struct ab8500_fg *di , int
cap_mah );
bestie she takes two things and gives you back an int. that's it. that's the whole vibe check.
π ARGUMENTS π
diβ pointer to theab8500_fgstructure. yes the whole struct. she needs the context okay, don't @ her π«Άcap_mahβ capacity in mAh. the number you're bringing to the party π
π DESCRIPTION π
Converts capacity in mAh to capacity in permille.
that's it. that's the description. i told you she was uncomplicated π converting. mAh. to permille. one direction. one job. main character energy honestly π
π SEE ALSO π
first up, the actual home base β Kernel file ./drivers/power/supply/ab8500_fg.c π and then the whole friend group:
struct ab8500_fg_interrupts(9)struct ab8500_fg(9)ab8500_fg_get(9)ab8500_fg_is_low_curr(9)ab8500_fg_add_cap_sample(9)ab8500_fg_clear_cap_samples(9)ab8500_fg_fill_cap_sample(9)ab8500_fg_coulomb_counter(9)ab8500_fg_inst_curr_start(9)ab8500_fg_inst_curr_started(9)ab8500_fg_inst_curr_done(9)ab8500_fg_inst_curr_finalize(9)ab8500_fg_inst_curr_blocking(9)ab8500_fg_acc_cur_work(9)ab8500_fg_bat_voltage(9)ab8500_fg_volt_to_capacity(9)ab8500_fg_uncomp_volt_to_capacity(9)ab8500_fg_battery_resistance(9)ab8500_load_comp_fg_bat_voltage(9)ab8500_fg_load_comp_volt_to_capacity(9)ab8500_fg_convert_permille_to_mah(9)β the reverse queen, her sister πab8500_fg_convert_mah_to_uwh(9)ab8500_fg_calc_cap_charging(9)ab8500_fg_calc_cap_discharge_voltage(9)ab8500_fg_calc_cap_discharge_fg(9)ab8500_fg_capacity_level(9)ab8500_fg_calculate_scaled_capacity(9)ab8500_fg_update_cap_scalers(9)ab8500_fg_check_capacity_limits(9)ab8500_fg_algorithm_charging(9)ab8500_fg_algorithm_discharging(9)ab8500_fg_algorithm_calibrate(9)ab8500_fg_algorithm(9)ab8500_fg_periodic_work(9)ab8500_fg_check_hw_failure_work(9)ab8500_fg_low_bat_work(9)ab8500_fg_battok_calc(9)ab8500_fg_battok_init_hw_register(9)ab8500_fg_instant_work(9)ab8500_fg_cc_data_end_handler(9)ab8500_fg_cc_int_calib_handler(9)ab8500_fg_cc_convend_handler(9)ab8500_fg_batt_ovv_handler(9)ab8500_fg_lowbatf_handler(9)ab8500_fg_get_property(9)ab8500_fg_init_hw_registers(9)ab8500_fg_external_power_changed(9)ab8500_fg_reinit_work(9)ab8500_fg_sysfs_exit(9)ab8500_fg_sysfs_init(9)
like. that's a whole squad. iykyk π₯
ngl bestie, this page is short but she's part of a big family, so go read the rest of them if you want the full lore π§
and that's the wrap! π
this gem lives over in ./drivers/power/supply, dated October 2026 β go drink some water, charge your phone, and remember: mAh in, permille out, slay πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms