myriadrf / xtrx_linux_pcie_drv

XTRX PCI driver for linux
Apache License 2.0
16 stars 22 forks source link

DKMS build fails on Linux 6.10.3 with uart_state and circ_buf related errors #19

Open nilclass opened 2 months ago

nilclass commented 2 months ago

The module build fails on a recent kernel update. My previous kernel was 6.9.9, which works fine

Here's the build log:

DKMS make.log for xtrx-0.0.1+git20190320.5ae3a3e-3.5 for kernel 6.10.3-amd64 (x86_64)
Tue Aug 13 09:59:06 AM CEST 2024
make: Entering directory '/usr/src/linux-headers-6.10.3-amd64'
  CC [M]  /var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.o
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c: In function ‘xtrx_uart_do_tx’:
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:472:28: error: ‘struct uart_state’ has no member named ‘xmit’
  472 |         xmit = &port->state->xmit;
      |                            ^~
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:473:13: error: implicit declaration of function ‘uart_circ_empty’; did you mean ‘uart_lsr_tx_empty’? [-Werror=implicit-function-declaration]
  473 |         if (uart_circ_empty(xmit))
      |             ^~~~~~~~~~~~~~~
      |             uart_lsr_tx_empty
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:480:25: error: invalid use of undefined type ‘struct circ_buf’
  480 |                 c = xmit->buf[xmit->tail] & 0xff;
      |                         ^~
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:480:35: error: invalid use of undefined type ‘struct circ_buf’
  480 |                 c = xmit->buf[xmit->tail] & 0xff;
      |                                   ^~
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:484:21: error: invalid use of undefined type ‘struct circ_buf’
  484 |                 xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
      |                     ^~
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:484:35: error: invalid use of undefined type ‘struct circ_buf’
  484 |                 xmit->tail = (xmit->tail + 1) & (UART_XMIT_SIZE - 1);
      |                                   ^~
/var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.c:490:13: error: implicit declaration of function ‘uart_circ_chars_pending’ [-Werror=implicit-function-declaration]
  490 |         if (uart_circ_chars_pending(xmit) < WAKEUP_CHARS)
      |             ^~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [/usr/src/linux-headers-6.10.3-common/scripts/Makefile.build:249: /var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build/xtrx.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.10.3-common/Makefile:1959: /var/lib/dkms/xtrx/0.0.1+git20190320.5ae3a3e-3.5/build] Error 2
make: *** [/usr/src/linux-headers-6.10.3-common/Makefile:252: __sub-make] Error 2
make: Leaving directory '/usr/src/linux-headers-6.10.3-amd64'
nilclass commented 2 months ago

This change looks like the culprit: https://github.com/torvalds/linux/commit/1788cf6a91d9fa9aa61fc2917afe192c23d67f6a

TousifAhmed101 commented 1 month ago

it's not working Screenshot from 2024-09-24 09-06-52 Screenshot from 2024-09-24 09-07-06