ab8500_charg...hw_registers(9)
β¨ ab8500_charg...hw_registers(9) β¨
okay so this whole thing is a page from the Kernel API Manual, and bestie, it's literally about one function that pokes a bunch of charger registers into shape. buckle up π
πΈ NAME πΈ
ab8500_charger_init_hw_registers β the one that sets up all the charger-related registers π
β‘ SYNOPSIS β‘
int ab8500_charger_init_hw_registers (struct ab8500_charger *di );
like, it takes one thing and gives you back an int. classic.
π¦ ARGUMENTS π¦
diβ pointer to theab8500_chargerstructure. that's it. that's the whole argument list. one (1) pointer, no notes π«Ά
π DESCRIPTION π
so what does it do? it sets up the charger OVV, the watchdog, and the maximum voltage registers β and it also handles charging of the backup battery. iconic multitasking honestly π
ngl bestie, that's the entire description. short, sweet, no cap.
π SEE ALSO π
the kernel file lives at ./drivers/power/supply/ab8500_charger.c β go read it, iykyk π
and here's the whole friend group, fr fr (do NOT lose a single one of these, they all matter):
struct ab8500_charger_interrupts(9)struct ab8500_charger(9)ab8500_power_supply_changed(9)ab8500_charger_get_ac_voltage(9)ab8500_charger_ac_cv(9)ab8500_charger_get_vbus_voltage(9)ab8500_charger_get_usb_current(9)ab8500_charger_get_ac_current(9)ab8500_charger_usb_cv(9)ab8500_charger_detect_chargers(9)ab8500_charger_max_usb_curr(9)ab8500_charger_read_usb_type(9)ab8500_charger_detect_usb_type(9)ab8500_charger_get_usb_cur(9)ab8500_charger_check_continue_stepping(9)ab8500_charger_set_current(9)ab8500_charger_set_vbus_in_curr(9)ab8500_charger_set_main_in_curr(9)ab8500_charger_set_output_curr(9)ab8500_charger_led_en(9)ab8500_charger_ac_en(9)ab8500_charger_usb_en(9)ab8500_charger_usb_check_enable(9)ab8500_charger_ac_check_enable(9)ab8500_charger_watchdog_kick(9)ab8500_charger_update_charger_current(9)ab8500_charger_check_vbat_work(9)ab8500_charger_check_hw_failure_work(9)ab8500_charger_kick_watchdog_work(9)ab8500_charger_ac_work(9)ab8500_charger_detect_usb_type_work(9)ab8500_charger_usb_link_attach_work(9)ab8500_charger_usb_link_status_work(9)ab8500_charger_check_usbchargernotok_work(9)ab8500_charger_check_main_thermal_prot_work(9)ab8500_charger_check_usb_thermal_prot_work(9)ab8500_charger_mainchunplugdet_handler(9)ab8500_charger_mainchplugdet_handler(9)ab8500_charger_mainextchnotok_handler(9)ab8500_charger_mainchthprotr_handler(9)ab8500_charger_mainchthprotf_handler(9)ab8500_charger_vbusdetf_handler(9)ab8500_charger_vbusdetr_handler(9)ab8500_charger_usblinkstatus_handler(9)ab8500_charger_usbchthprotr_handler(9)ab8500_charger_usbchthprotf_handler(9)ab8500_charger_usbchargernotokr_handler(9)ab8500_charger_chwdexp_handler(9)ab8500_charger_vbuschdropend_handler(9)ab8500_charger_vbusovv_handler(9)ab8500_charger_ac_get_property(9)ab8500_charger_usb_get_property(9)
like i said. the whole group chat. π
that's the page, bestie β written down in ./drivers/power/supply, dated October 2026, and logged under ab8500_charg...hw_registers(9). go forth and init those registers, you absolute main character π§ββοΈπ
π¦ 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