Skip to content

framework: Remove dhowett's driver - #1975

Draft
JohnAZoidberg wants to merge 1 commit into
NixOS:masterfrom
FrameworkComputer:kmod
Draft

framework: Remove dhowett's driver#1975
JohnAZoidberg wants to merge 1 commit into
NixOS:masterfrom
FrameworkComputer:kmod

Conversation

@JohnAZoidberg

Copy link
Copy Markdown
Member
Description of changes

Most of it (Battery Charge Control and LED control) has been upstream for a while. Only fan control and privacy switches hasn't.

The module hasn't been updated in two years.

Things done
  • Tested the changes in your own NixOS Configuration
  • Tested the changes end-to-end by using your fork of nixos-hardware and
    importing it via <nixos-hardware> or Flake input

@JohnAZoidberg

Copy link
Copy Markdown
Member Author

cc @DHowett

Most of it (Battery Charge Control and LED control) has been upstream for a while.
Only fan control and privacy switches hasn't.

The module hasn't been updated in two years.

Signed-off-by: Daniel Schaefer <dhs@frame.work>
@DHowett

DHowett commented Aug 3, 2026

Copy link
Copy Markdown

as the @DHowett in question: yes absolutely, upstream is much more capable now than it was in 2022 when I started work on framework-laptop-kmod.

It has no place in a modern distro :)

Comment thread framework/kmod.nix
};
# Make sure that the charge control driver is loaded
extraModProbeConfig = ''
options cros_charge_control probe-with_fwk_charge_control=1

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@t-8ch this is still needed/recommended, right?

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAIK the upstream interface used by this driver (and therefore the driver itself) is still completely broken on current Framework firmware versions.
And given that the command EC_CMD_CHARGE_LIMIT_CONTROL 0x3E03 is still present in the latest firmware, the module parameter is still necessary.

But this parameter is meant to be set by the end user. As they will need to make sure not to use EC_CMD_CHARGE_LIMIT_CONTROL in any way, as that will also break the driver. Setting the parameter automatically behind their backs defeats its whole purpose.

@t-8ch

t-8ch commented Aug 3, 2026

Copy link
Copy Markdown

Only fan control and privacy switches hasn't.

Fan control is on my todo list.

Privacy switches in its current form would be trivial to do.
But given that there is no update notification implemented,
I am not really sure what the point of it would be.
(Given that it is a Framework-specific interface, personally I don't plan on implementing this)

@JohnAZoidberg
JohnAZoidberg marked this pull request as draft August 4, 2026 08:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants