#1151448 librem-ec-acpi-dkms: module fails to build for Linux 7.3: struct acpi_driver has removed several members

#1151448#5
Date:
2026-10-20 18:43:03 UTC
From:
To:
Hi,

librem-ec-acpi-dkms fails to build a module for Linux 7.3 in
experimental:

DKMS (dkms-3.2.2) make.log for librem_ec_acpi/0.9.2 for kernel 7.3-rt-amd64 (x86_64)
Sun Oct 18 18:46:20 UTC 2026

Building module(s)
# command: make -j14 KERNELRELEASE=7.3-rt-amd64 -C /lib/modules/7.3-rt-amd64/build M=/var/lib/dkms/librem_ec_acpi/0.9.2/build
make: Entering directory '/usr/src/linux-headers-7.3-rt-amd64'
make[1]: Entering directory '/var/lib/dkms/librem_ec_acpi/0.9.2/build'
  CC [M]  librem_ec_acpi.o
librem_ec_acpi.c:780:15: error: variable 'librem_ec_driver' has initializer but incomplete type
  780 | static struct acpi_driver librem_ec_driver = {
      |               ^~~~~~~~~~~
librem_ec_acpi.c:781:10: error: 'struct acpi_driver' has no member named 'name'
  781 |         .name = "Librem EC ACPI Driver",
      |          ^~~~
librem_ec_acpi.c:781:17: warning: excess elements in struct initializer
  781 |         .name = "Librem EC ACPI Driver",
      |                 ^~~~~~~~~~~~~~~~~~~~~~~
librem_ec_acpi.c:781:17: note: (near initialization for 'librem_ec_driver')
librem_ec_acpi.c:785:10: error: 'struct acpi_driver' has no member named 'class'
  785 |         .class = "hotkey",
      |          ^~~~~
librem_ec_acpi.c:785:18: warning: excess elements in struct initializer
  785 |         .class = "hotkey",
      |                  ^~~~~~~~
librem_ec_acpi.c:785:18: note: (near initialization for 'librem_ec_driver')
librem_ec_acpi.c:786:10: error: 'struct acpi_driver' has no member named 'ids'
  786 |         .ids = device_ids,
      |          ^~~
librem_ec_acpi.c:786:16: warning: excess elements in struct initializer
  786 |         .ids = device_ids,
      |                ^~~~~~~~~~
librem_ec_acpi.c:786:16: note: (near initialization for 'librem_ec_driver')
librem_ec_acpi.c:788:10: error: 'struct acpi_driver' has no member named 'ops'
  788 |         .ops = {
      |          ^~~
librem_ec_acpi.c:788:16: error: extra brace group at end of initializer
  788 |         .ops = {
      |                ^
librem_ec_acpi.c:788:16: note: (near initialization for 'librem_ec_driver')
librem_ec_acpi.c:788:16: warning: excess elements in struct initializer
librem_ec_acpi.c:788:16: note: (near initialization for 'librem_ec_driver')
librem_ec_acpi.c:793:10: error: 'struct acpi_driver' has no member named 'drv'
  793 |         .drv.pm = &librem_ec_pm,
      |          ^~~
librem_ec_acpi.c:793:19: warning: excess elements in struct initializer
  793 |         .drv.pm = &librem_ec_pm,
      |                   ^
librem_ec_acpi.c:793:19: note: (near initialization for 'librem_ec_driver')
librem_ec_acpi.c:795:1: warning: data definition has no type or storage class
  795 | module_acpi_driver(librem_ec_driver);
      | ^~~~~~~~~~~~~~~~~~
librem_ec_acpi.c:795:1: error: type defaults to 'int' in declaration of 'module_acpi_driver' [-Wimplicit-int]
librem_ec_acpi.c:795:1: error: parameter names (without types) in function declaration [-Wdeclaration-missing-parameter-type]
librem_ec_acpi.c:780:27: error: storage size of 'librem_ec_driver' isn't known
  780 | static struct acpi_driver librem_ec_driver = {
      |                           ^~~~~~~~~~~~~~~~
librem_ec_acpi.c:780:27: warning: 'librem_ec_driver' defined but not used [-Wunused-variable]
make[3]: *** [/usr/src/linux-headers-7.3-common/scripts/Makefile.build:295: librem_ec_acpi.o] Error 1
make[2]: *** [/usr/src/linux-headers-7.3-common/Makefile:2253: .] Error 2
make[1]: *** [/usr/src/linux-headers-7.3-common/Makefile:260: __sub-make] Error 2
make[1]: Leaving directory '/var/lib/dkms/librem_ec_acpi/0.9.2/build'
make: *** [/usr/src/linux-headers-7.3-common/Makefile:260: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-7.3-rt-amd64'

# exit code: 2
# elapsed time: 00:00:02
----------------------------------------------------------------

Andreas