Ubuntu 24.10 driver for UE330 (UN) v4 on Linux kernel 6.11.0-18-generic
Ubuntu 24.10 driver for UE330 (UN) v4 on Linux kernel 6.11.0-18-generic
I cannot build the Ubuntu 24.10 driver for Linux kernel 6.11.0-18-generic.
Here is the error I get
```
$ make
make -C /lib/modules/6.11.0-18-generic/build M=/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0 modules
make[1]: Entering directory '/usr/src/linux-headers-6.11.0-18-generic'
warning: the compiler differs from the one used to build the kernel
The kernel was built by: x86_64-linux-gnu-gcc-14 (Ubuntu 14.2.0-4ubuntu2) 14.2.0
You are using: gcc-14 (Ubuntu 14.2.0-4ubuntu2) 14.2.0
CC [M] /home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.o
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:1901:5: warning: no previous prototype for ‘ax_check_ether_addr’ [-Wmissing-prototypes]
1901 | int ax_check_ether_addr(struct ax_device *axdev)
| ^~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c: In function ‘ax_get_mac_address’:
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:1966:41: warning: passing argument 6 of ‘ax_read_cmd’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
1966 | ETH_ALEN, netdev->dev_addr, 0) < 0) {
| ~~~~~~^~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:583:23: note: expected ‘void *’ but argument is of type ‘const unsigned char *’
583 | void *data, int eflag)
| ~~~~~~^~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:1974:38: warning: passing argument 2 of ‘ax_get_mac_pass’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
1974 | ax_get_mac_pass(axdev, netdev->dev_addr);
| ~~~~~~^~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:1866:50: note: expected ‘u8 *’ {aka ‘unsigned char *’} but argument is of type ‘const unsigned char *’
1866 | int ax_get_mac_pass(struct ax_device *axdev, u8 *mac)
| ~~~~^~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:1980:41: warning: passing argument 6 of ‘ax_write_cmd’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
1980 | ETH_ALEN, netdev->dev_addr) < 0) {
| ~~~~~~^~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax_main.c:607:24: note: expected ‘void *’ but argument is of type ‘const unsigned char *’
607 | void *data)
| ~~~~~~^~~~
CC [M] /home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179_178a.o
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179_178a.c:48:5: warning: no previous prototype for ‘ax88179_signature’ [-Wmissing-prototypes]
48 | int ax88179_signature(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179_178a.c:54:5: warning: no previous prototype for ‘ax88179_read_eeprom’ [-Wmissing-prototypes]
54 | int ax88179_read_eeprom(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179_178a.c:133:5: warning: no previous prototype for ‘ax88179_write_eeprom’ [-Wmissing-prototypes]
133 | int ax88179_write_eeprom(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~
CC [M] /home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.o
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:255:27: error: initialization of ‘int (*)(struct net_device *, struct ethtool_keee *)’ from incompatible pointer type ‘int (*)(struct net_device *, struct ethtool_eee *)’ [-Wincompatible-pointer-types]
255 | .get_eee = ax88179a_get_eee,
| ^~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:255:27: note: (near initialization for ‘ax88179a_ethtool_ops.get_eee’)
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:256:27: error: initialization of ‘int (*)(struct net_device *, struct ethtool_keee *)’ from incompatible pointer type ‘int (*)(struct net_device *, struct ethtool_eee *)’ [-Wincompatible-pointer-types]
256 | .set_eee = ax88179a_set_eee,
| ^~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:256:27: note: (near initialization for ‘ax88179a_ethtool_ops.set_eee’)
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:300:6: warning: no previous prototype for ‘ax88179a_get_fw_version’ [-Wmissing-prototypes]
300 | void ax88179a_get_fw_version(struct ax_device *axdev)
| ^~~~~~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:318:5: warning: no previous prototype for ‘ax88179a_signature’ [-Wmissing-prototypes]
318 | int ax88179a_signature(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:324:5: warning: no previous prototype for ‘ax88179a_read_version’ [-Wmissing-prototypes]
324 | int ax88179a_read_version(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:340:5: warning: no previous prototype for ‘ax88179a_write_flash’ [-Wmissing-prototypes]
340 | int ax88179a_write_flash(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:395:5: warning: no previous prototype for ‘ax88179a_read_flash’ [-Wmissing-prototypes]
395 | int ax88179a_read_flash(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:435:5: warning: no previous prototype for ‘ax88179a_program_efuse’ [-Wmissing-prototypes]
435 | int ax88179a_program_efuse(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:462:5: warning: no previous prototype for ‘ax88179a_dump_efuse’ [-Wmissing-prototypes]
462 | int ax88179a_dump_efuse(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:488:5: warning: no previous prototype for ‘ax88179a_boot_to_rom’ [-Wmissing-prototypes]
488 | int ax88179a_boot_to_rom(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:511:5: warning: no previous prototype for ‘ax88179a_erase_flash’ [-Wmissing-prototypes]
511 | int ax88179a_erase_flash(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:545:5: warning: no previous prototype for ‘ax88179a_sw_reset’ [-Wmissing-prototypes]
545 | int ax88179a_sw_reset(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:569:5: warning: no previous prototype for ‘ax88179a_ieee_test’ [-Wmissing-prototypes]
569 | int ax88179a_ieee_test(struct ax_device *axdev, struct _ax_ioctl_command *info)
| ^~~~~~~~~~~~~~~~~~
/home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.c:713:5: warning: no previous prototype for ‘ax88179a_autosuspend_en’ [-Wmissing-prototypes]
713 | int ax88179a_autosuspend_en(struct ax_device *axdev,
| ^~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [scripts/Makefile.build:244: /home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0/ax88179a_772d.o] Error 1
make[2]: *** [/usr/src/linux-headers-6.11.0-18-generic/Makefile:1931: /home/cataluna84/Downloads/UH6120C_V1_UH9120C_V1_UE330_V4_UE330C_V2_Linux_3.0.0./ASIX_USB_NIC_Linux_Driver_Source_v3.0.0] Error 2
make[1]: *** [Makefile:224: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.11.0-18-generic'
make: *** [Makefile:59: all] Error 2
```
Moreover, I don't know the chipset that is being used for Tp-Link UE330 (UN) V4, Indian version.
Could you folks confirm what the chipset is? I am not sure, but I think the chipset is AX88179 and I can build the driver on the Linux 6.x kernel