Skip to content

cros_charge-control unsupported #85

@tlvince

Description

@tlvince

Device Information

System Model or SKU

Please select one of the following

  • Framework Laptop 13 (11th Gen Intel® Core™)
  • Framework Laptop 13 (12th Gen Intel® Core™)
  • Framework Laptop 13 (13th Gen Intel® Core™)
  • Framework Laptop 13 (AMD Ryzen™ 7040 Series)
  • Framework Laptop 13 (Intel® Core™ Ultra Series 1)
  • Framework Laptop 13 (AMD Ryzen™ AI 300 Series)
  • Framework Laptop 16 (AMD Ryzen™ 7040 Series)

BIOS VERSION

3.04

DIY Edition information

Port/Peripheral information

  1. USB-C expansion card: Framework 60W charger
  2. USB-C expansion card (no peripheral)
  3. USB-C expansion card (no peripheral)
  4. USB-C expansion card (no peripheral)

Standalone Operation

  • Yes
  • No

Describe the bug

Loading cros_charge-control with probe_with_fwk_charge_control=1 should provide /sys/class/power_supply/BAT1/charge_control_{start,end}_threshold for userspace charge control e.g. GNOME 48's Preserve Battery Health feature.

This used to work on BIOS 3.03, but regressed in 3.04.

With the BIOS limiter set to 100% and extender disabled and cros_charge-control enabled, in the EC logs, I see:

[238553.413200 Sustainer enabled: 75 ~ 100%]
[238553.423500 Sustainer updated: 75 ~ 80% (from 75 ~ 100%)]
[238553.552500 Sustainer disabled]

... which suggests the limits are being passed through correctly, but then being reset.

This looks like the culprit: FrameworkComputer/EmbeddedController@d2a654b#diff-c97fadb96709544efeb068ef6acb07cc573d36d2b4498033b7d5f84b8a24ae41L85-L141

Connects #70.

Operating System (please complete the following information):

  • OS/Distribution: NixOS
  • Version: 25
  • Linux Kernel Version: 6.14.6

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions