so far everything is ok:
$ sudo pacman -Syyu
$ sudo pacman -Sy base-devel
$ sudo pacman -S $(pacman -Qsq “^linux” | grep “^linux[0-9][-rt]$” | awk ‘{print $1"-headers"}’ ORS=’ ')
$reboot
$ git clone GitHub - kac89/r8125: Archlinux/Manjaro Ethernet Driver for Odroid H2 Plus RTL8125B chipset
$ cd r8125
in this command (makepkg) the output is as follows:
makepkg ✔
==> Creazione del pacchetto: r8125 9.003.05-0 (dom 14 lug 2024, 12:41:50)
==> Controllo delle dipendenze durante l'avvio in corso...
==> Controllo delle dipendenze durante la compilazione in corso...
==> Download dei sorgenti in corso...
-> Download di 9.003.05.tar.gz in corso...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 88475 0 88475 0 0 106k 0 --:--:-- --:--:-- --:--:-- 106k
-> È stato trovato dkms.conf
==> Validazione di source file con sha256sums...
9.003.05.tar.gz ... Verificato
dkms.conf ... Verificato
==> Estrazione dei sorgenti in corso...
-> Estrazione di 9.003.05.tar.gz usando bsdtar in corso...
==> Avvio di build() in corso...
make: ingresso nella directory «/usr/lib/modules/6.9.5-1-MANJARO/build»
CC [M] /home/davide/r8125/src/r8125-9.003.05/src/r8125_n.o
CC [M] /home/davide/r8125/src/r8125-9.003.05/src/rtl_eeprom.o
/home/davide/r8125/src/r8125-9.003.05/src/rtl_eeprom.c:95:5: warning: no previous prototype for ‘rtl8125_eeprom_cmd_done’ [-Wmissing-prototypes]
95 | int rtl8125_eeprom_cmd_done(struct rtl8125_private *tp)
| ^~~~~~~~~~~~~~~~~~~~~~~
CC [M] /home/davide/r8125/src/r8125-9.003.05/src/rtltool.o
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_proc_open’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1393:50: error: implicit declaration of function ‘PDE_DATA’; did you mean ‘NODE_DATA’? [-Wimplicit-function-declaration]
1393 | int (*show)(struct seq_file *, void *) = PDE_DATA(inode);
| ^~~~~~~~
| NODE_DATA
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1393:50: error: initialization of ‘int (*)(struct seq_file *, void *)’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: At top level:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1756:6: warning: no previous prototype for ‘ClearEthPhyOcpBit’ [-Wmissing-prototypes]
1756 | void ClearEthPhyOcpBit(struct rtl8125_private *tp, u16 addr, u16 mask)
| ^~~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1765:6: warning: no previous prototype for ‘SetEthPhyOcpBit’ [-Wmissing-prototypes]
1765 | void SetEthPhyOcpBit(struct rtl8125_private *tp, u16 addr, u16 mask)
| ^~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1809:1: warning: no previous prototype for ‘ClearAndSetMcuAccessRegBit’ [-Wmissing-prototypes]
1809 | ClearAndSetMcuAccessRegBit(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1825:1: warning: no previous prototype for ‘ClearMcuAccessRegBit’ [-Wmissing-prototypes]
1825 | ClearMcuAccessRegBit(
| ^~~~~~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:1839:1: warning: no previous prototype for ‘SetMcuAccessRegBit’ [-Wmissing-prototypes]
1839 | SetMcuAccessRegBit(
| ^~~~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:4695:20: error: initialization of ‘int (*)(struct net_device *, struct ethtool_keee *)’ from incompatible pointer type ‘int (*)(struct net_device *, struct ethtool_eee *)’ [-Wincompatible-pointer-types]
4695 | .get_eee = rtl_ethtool_get_eee,
| ^~~~~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:4695:20: note: (near initialization for ‘rtl8125_ethtool_ops.get_eee’)
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:4696:20: error: initialization of ‘int (*)(struct net_device *, struct ethtool_keee *)’ from incompatible pointer type ‘int (*)(struct net_device *, struct ethtool_eee *)’ [-Wincompatible-pointer-types]
4696 | .set_eee = rtl_ethtool_set_eee,
| ^~~~~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:4696:20: note: (near initialization for ‘rtl8125_ethtool_ops.set_eee’)
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_get_mac_address’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9130:34: error: assignment of read-only location ‘*(dev->dev_addr + (sizetype)i)’
9130 | dev->dev_addr[i] = RTL_R8(tp, MAC0 + i);
| ^
In file included from ./include/linux/string.h:369,
from ./include/linux/bitmap.h:13,
from ./include/linux/cpumask.h:13,
from ./arch/x86/include/asm/paravirt.h:21,
from ./arch/x86/include/asm/cpuid.h:62,
from ./arch/x86/include/asm/processor.h:19,
from ./arch/x86/include/asm/timex.h:5,
from ./include/linux/timex.h:67,
from ./include/linux/time32.h:13,
from ./include/linux/time.h:60,
from ./include/linux/stat.h:19,
from ./include/linux/module.h:13,
from /home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:38:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_set_mac_address’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9161:19: warning: passing argument 1 of ‘__builtin_memcpy’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
9161 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
| ~~~^~~~~~~~~~
./include/linux/fortify-string.h:633:27: note: in definition of macro ‘__fortify_memcpy_chk’
633 | __underlying_##op(p, q, __fortify_size); \
| ^
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9161:9: note: in expansion of macro ‘memcpy’
9161 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
| ^~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9161:19: note: expected ‘void *’ but argument is of type ‘const unsigned char *’
9161 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
| ~~~^~~~~~~~~~
./include/linux/fortify-string.h:633:27: note: in definition of macro ‘__fortify_memcpy_chk’
633 | __underlying_##op(p, q, __fortify_size); \
| ^
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9161:9: note: in expansion of macro ‘memcpy’
9161 | memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
| ^~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9163:32: warning: passing argument 2 of ‘rtl8125_rar_set’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
9163 | rtl8125_rar_set(tp, dev->dev_addr);
| ~~~^~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:293:66: note: expected ‘uint8_t *’ {aka ‘unsigned char *’} but argument is of type ‘const unsigned char *’
293 | static void rtl8125_rar_set(struct rtl8125_private *tp, uint8_t *addr);
| ~~~~~~~~~^~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_init_board’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:10061:14: error: implicit declaration of function ‘pci_set_dma_mask’ [-Wimplicit-function-declaration]
10061 | !pci_set_dma_mask(pdev, DMA_BIT_MASK(64)) &&
| ^~~~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:10062:14: error: implicit declaration of function ‘pci_set_consistent_dma_mask’ [-Wimplicit-function-declaration]
10062 | !pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(64))) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:82:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_init_one’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125.h:543:57: error: too many arguments to function ‘netif_napi_add’
543 | #define RTL_NAPI_CONFIG(ndev, priv, function, weight) netif_napi_add(ndev, &priv->napi, function, weight)
| ^~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:10427:9: note: in expansion of macro ‘RTL_NAPI_CONFIG’
10427 | RTL_NAPI_CONFIG(dev, tp, rtl8125_poll, R8125_NAPI_WEIGHT);
| ^~~~~~~~~~~~~~~
In file included from /home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:41:
./include/linux/netdevice.h:2631:1: note: declared here
2631 | netif_napi_add(struct net_device *dev, struct napi_struct *napi,
| ^~~~~~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:10458:17: error: implicit declaration of function ‘netif_set_gso_max_size’; did you mean ‘netif_set_tso_max_size’? [-Wimplicit-function-declaration]
10458 | netif_set_gso_max_size(dev, LSO_64K);
| ^~~~~~~~~~~~~~~~~~~~~~
| netif_set_tso_max_size
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘r8125_csum_workaround’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:11844:24: error: implicit declaration of function ‘skb_gso_segment’; did you mean ‘skb_gso_reset’? [-Wimplicit-function-declaration]
11844 | segs = skb_gso_segment(skb, features);
| ^~~~~~~~~~~~~~~
| skb_gso_reset
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:11844:22: error: assignment to ‘struct sk_buff *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
11844 | segs = skb_gso_segment(skb, features);
| ^
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_rx_interrupt’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:12237:57: warning: the comparison will always evaluate as ‘false’ for the address of ‘Rx_skbuff’ will never be NULL [-Waddress]
12237 | if ((tp->RxDescArray == NULL) || (tp->Rx_skbuff == NULL))
| ^~
/home/davide/r8125/src/r8125-9.003.05/src/r8125.h:1506:25: note: ‘Rx_skbuff’ declared here
1506 | struct sk_buff *Rx_skbuff[NUM_RX_DESC]; /* Rx data buffers */
| ^~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c: In function ‘rtl8125_resume’:
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:12717:32: warning: passing argument 2 of ‘rtl8125_rar_set’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
12717 | rtl8125_rar_set(tp, dev->dev_addr);
| ~~~^~~~~~~~~~
/home/davide/r8125/src/r8125-9.003.05/src/r8125_n.c:9178:26: note: expected ‘uint8_t *’ {aka ‘unsigned char *’} but argument is of type ‘const unsigned char *’
9178 | uint8_t *addr)
| ~~~~~~~~~^~~~
make[2]: *** [scripts/Makefile.build:244: /home/davide/r8125/src/r8125-9.003.05/src/r8125_n.o] Error 1
make[2]: *** Attesa per i processi non terminati....
make[1]: *** [/usr/lib/modules/6.9.5-1-MANJARO/build/Makefile:1918: /home/davide/r8125/src/r8125-9.003.05/src] Error 2
make: *** [Makefile:240: __sub-make] Error 2
make: uscita dalla directory «/usr/lib/modules/6.9.5-1-MANJARO/build»
==> ERRORE: Si è verificato un errore in build().
thanks for the help