Error building reform2_lpc on debian stable

Hi!

On reform.debian.net stable, when installing linux-image-6.17.8+1-mnt-reform-arm64, the build of reform2_lpc fails with the following output:

DKMS (dkms-3.2.2) make.log for reform2_lpc/1.76 for kernel 6.17.8+1-mnt-reform-arm64 (aarch64)
mån  1 dec 2025 12:10:13 EET

Building module(s)

command: make -j8 KERNELRELEASE=6.17.8+1-mnt-reform-arm64 -C /lib/modules/6.17.8+1-mnt-reform-arm64/build M=/var/lib/dkms/reform2_lpc/1.76/build

make: Går till katalogen ”/usr/src/linux-headers-6.17.8+1-mnt-reform-arm64”
make[1]: Går till katalogen ”/var/lib/dkms/reform2_lpc/1.76/build”
CC [M]  reform2_lpc.o
reform2_lpc.c: In function ‘lpc_probe’:
reform2_lpc.c:200:17: error: ‘struct power_supply_config’ has no member named ‘of_node’; did you mean ‘fwnode’?
200 |         psy_cfg.of_node = spi->dev.of_node;
|                 ^~~~~~~
|                 fwnode
make[3]: *** [/usr/src/linux-headers-6.17.8+1-common/scripts/Makefile.build:292: reform2_lpc.o] Fel 1
make[2]: *** [/usr/src/linux-headers-6.17.8+1-common/Makefile:2035: .] Fel 2
make[1]: *** [/usr/src/linux-headers-6.17.8+1-common/Makefile:260: __sub-make] Fel 2
make[1]: Lämnar katalogen ”/var/lib/dkms/reform2_lpc/1.76/build”
make: *** [/usr/src/linux-headers-6.17.8+1-common/Makefile:260: __sub-make] Fel 2
make: Lämnar katalogen ”/usr/src/linux-headers-6.17.8+1-mnt-reform-arm64”

exit code: 2

elapsed time: 00:00:03





Cheers!

Sounds like this is related: Update broke battery monitoring

I’m also on Debian stable

I uploaded reform-tools 1.82-2~bpo13+1 to trixie-backports last Saturday. It has been waiting in backports-new since then:

Usually that queue gets processed within a day, so we should be seeing this soon…

1 Like

Could this also explain a flickering display? I’ve been seeing that too since I updated earlier today.

Sorry, I have not noticed that yet and no time to do another kernel bisect right now.

1 Like

Thanks for keeping track of debian stable for us :slight_smile:

I tried to look into this a bit, the offending line is:

186: psy_cfg.of_node = spi->dev.of_node;

power_supply_config has no member of_node since Making sure you're not a bot!

(commit

)

From that commit message, I would like to try just changing of_node to fwnode. I have not compiled a linux kernel since maybe 2005. Is this guide what to follow, or is there something specific to think about on the reform? Chapter 4. Common kernel-related tasks

EDIT: So I didn’t even have to manually compile the kernel, I built my own reform-tools where that line had of_node switched to fwnode and now the kernel compiles just fine. It even boots, but I get a lot of messages like:

[ 48.441875] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 52.429941] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 56.437812] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 60.454065] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 64.457746] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 67.144376] systemd-journald[464]: Time jumped backwards, rotating.
[ 68.457753] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 72.458060] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 76.461604] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 80.461999] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 84.466063] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 88.473931] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 92.469449] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 96.473549] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 100.461847] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 104.457865] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?
[ 108.449814] usb 8-1-port1: Cannot enable. Maybe the USB cable is bad?

But I do not think this should be related to the lpc-driver? A regression in the new kernel? I get the same batterylevel in emacs as in the oled display, so I am happy=)

Yes. The problem is known and fixed in reform-tools by this commit three months ago:

Did you backport that change to reform-tools from stable or did you build reform-tools from unstable?

I think it would make sense for me to do a stable upload of reform-tools with that fix to trixie-updates in addition to backporting the most recent version. The change is minimal and unlikely to break anything for those before kernel 6.17.

1 Like

Ah.

I changed the version installed by apt source reform-tools on stable, so backport I guess.

Again, thanks for working on this!

While we are waiting for NEW processing (other packages have been processed already, no idea what the holdup is for reform-tools…) I think it should be possible to use reform-tools from stable with the kernel from backports, so I opened a bug with release.debian.org to get the fix backported into Debian Trixie proper (will show up with the next point release if this goes through):

The package is no longer on that list since yesterday morning, but it doesn’t show up for installation through apt. I do have the trixie-backports sources set up but I only get reform-tools version 1.71-2:

Package: reform-tools
Version: 1.71-2+reform20250622T103710Z~bpo13+1
Priority: optional
Protected: yes
Section: admin
Maintainer: Debian Reform Team <team+reform@tracker.debian.org>
Installed-Size: 856 kB
Depends: alsa-utils, console-setup, debconf, debianutils (>= 5.21), gpiod, jq, keyboard-configuration, mount, parted, procps, reform2-lpc-dkms, rsync, systemd, tzdata, dconf-gsettings-backend | gsettings-backend
Recommends: bmap-tools, brightnessctl, debian-keyring, fonts-font-awesome, fonts-jetbrains-mono, foot, gir1.2-ayatanaappindicator3-0.1, gir1.2-gdesktopenums-3.0, gir1.2-gdkpixbuf-2.0, gir1.2-glib-2.0, gir1.2-gtk-3.0, gir1.2-gtklayershell-0.1, gir1.2-notify-0.7, gnome-system-monitor, ircii, pavucontrol, pulseaudio-utils, python3, python3-gi, python3-usb1, thunar
Suggests: reform-branding
Homepage: https://source.mnt.re/reform/reform-tools/
Download-Size: 610 kB
APT-Sources: https://reform.debian.net/debian trixie-backports/main arm64 Packages

Am I missing something?

EDIT:
I tried to find the package and it doesn’t seem to be in trixie-backports at all? I don’t understand

https://packages.debian.org/search?suite=trixie-backports&keywords=reform-tools

That is because it was rejected from inclusion in trixie-backports.

During their review, the ftp-master team found that I wrongly included a patch for reform-power-daemon. If anybody is interested I can give more context but it’s not really funny.

Yes, since it was rejected it didn’t enter trixie-backports. I since uploaded a new version which fixes the issue that ftp-master found.

2 Likes

So, I just installed reform-tools 1.82-2 from backports but seemingly with no effect.

I even reinstalled the kernel but it didn’t build the module.

EDIT:

Somehow my kernel headers were missing so reinstalling the kernel skipped building modules. After installing linux-headers-mnt-reform-arm64 and reinstalling linux-image-6.17.8+1-mnt-reform-arm64 things turned out ok.

Running sudo reform-check would’ve told you that. :slight_smile:

Glad it works now!