Xorcist Posted yesterday at 07:54 PM Posted yesterday at 07:54 PM (edited) So I recently loaded the x86 Armbian 6.12 - Ubuntu 24.04 (Noble) server image onto a GEEKOM Air12 Lite N150 (wow that was a mouthful), only to find the ethernet port missing... turns out the Motorcomm YT6801 Ethernet Controller it uses is not in the mainline distro and has to be built manually. I have so far referenced the following resources about this: https://github.com/albertogviana/YT6801 https://github.com/dante1613/Motorcomm-YT6801 https://forums.linuxmint.com/viewtopic.php?t=438301 https://deb.tuxedocomputers.com/ubuntu/pool/main/t/tuxedo-yt6801/ and run the gamut for two days straight without much luck. First the linux headers were not installed, so I installed them through armbian-config, only to find out they were still not available because potentially the headers are for 6.12.41 are not available? https://mirror.twds.com.tw/armbian-apt/pool/main/l/linux-headers-current-x86/ (I don't see them listed here, I do see a 6.12.32 and a 6.12.44) Then I rolled back the Kernel to 6.12.32 and tried to install the headers again them through armbian-config, only to find out they were still not available?!?!? So I installed them by downloading the *.deb directly and manually installed them. Now I can get the latest tuxedo driver (tuxedo-yt6801_1.0.30tux4_all.deb) to build and install, but the module will not load. journalctl | grep "yt6801" shows .gnu.linkonce.this_module section size must match the kernel's built struct module size at run time here is the output from the install: root@Armbian:~# sudo dpkg -i tuxedo-yt6801_1.0.30tux4_all.deb (Reading database ... 79866 files and directories currently installed.) Preparing to unpack tuxedo-yt6801_1.0.30tux4_all.deb ... Module tuxedo-yt6801-1.0.30tux4 for kernel 6.12.32-current-x86 (x86_64). Before uninstall, this module version was ACTIVE on this kernel. yt6801.ko: - Uninstallation - Deleting from: /lib/modules/6.12.32-current-x86/updates/dkms/ - Original module - No original module was found for this module on this kernel. - Use the dkms install command to reinstall any previous module version. depmod......... Deleting module tuxedo-yt6801-1.0.30tux4 completely from the DKMS tree. (Re)load module if possible Unpacking tuxedo-yt6801 (1.0.30tux4) over (1.0.30tux4) ... Setting up tuxedo-yt6801 (1.0.30tux4) ... Loading new tuxedo-yt6801-1.0.30tux4 DKMS files... Building for 6.12.32-current-x86 Building initial module for 6.12.32-current-x86 Done. yt6801.ko: Running module version sanity check. - Original module - No original module exists within this kernel - Installation - Installing to /lib/modules/6.12.32-current-x86/updates/dkms/ depmod... (Re)load module if possible Warning: Could not load module yt6801. Any clues on what I might be missing? I'm not a hardcore Linux pro by any means, but I'm not a novice either. Any help would be much appreciated. Edited yesterday at 08:04 PM by Xorcist Added Details 0 Quote
Igor Posted 11 hours ago Posted 11 hours ago 13 hours ago, Xorcist said: Any clues on what I might be missing? tl;dr; You need to fix the driver code similar we do it here https://github.com/armbian/build/tree/main/patch/misc I tried this: https://github.com/albertogviana/YT6801 (but tuxedo v1.0.30 might have this already fixed) https://paste.armbian.com/xeraretaxu.diff I fix the most obvious errors, but don't have time to deal with this code. 13 hours ago, Xorcist said: Then I rolled back the Kernel to 6.12.32 and tried to install the headers again them through armbian-config Some intermediate or old kernels might be missing matched headers. They are present at latest kernel (tested). BTW, it works for me: khadas-mind:Downloads:% sudo dpkg -i tuxedo-yt6801_1.0.30tux4_all.deb Selecting previously unselected package tuxedo-yt6801. (Reading database ... 158138 files and directories currently installed.) Preparing to unpack tuxedo-yt6801_1.0.30tux4_all.deb ... Unpacking tuxedo-yt6801 (1.0.30tux4) ... Setting up tuxedo-yt6801 (1.0.30tux4) ... Loading new tuxedo-yt6801-1.0.30tux4 DKMS files... Building for 6.12.44-current-x86 Building initial module for 6.12.44-current-x86 Done. yt6801.ko: Running module version sanity check. - Original module - No original module exists within this kernel - Installation - Installing to /lib/modules/6.12.44-current-x86/updates/dkms/ depmod... (Re)load module if possible khadas-mind:Downloads:% modinfo yt6801 filename: /lib/modules/6.12.44-current-x86/updates/dkms/yt6801.ko license: GPL license: GPL author: Motorcomm Electronic Tech. Co., Ltd. version: 1.0.30 description: Motorcomm YT6801 Gigabit Ethernet Driver srcversion: 13DED66BAFB05DCB4D65DE6 alias: pci:v00001F0Ad00006801sv*sd*bc*sc*i* depends: name: yt6801 retpoline: Y vermagic: 6.12.44-current-x86 SMP preempt mod_unload modversions parm: debug:FUXI ethernet debug level (0=none,...,16=all) (int) 0 Quote
Xorcist Posted 6 hours ago Author Posted 6 hours ago Oh are you saying that the Tuxedo v1.0.30 package works with the latest 6.12.44 headers? I did not try moving ahead to the latest as I didn't see an option to swap to that kernel in armbian-config (only to go back to 6.12.32). My current kernel is 6.12.41 (default install). I assume I can manually update via: sudo apt-get update && apt upgrade -y and then install the headers afterwards. 0 Quote
Igor Posted 5 hours ago Posted 5 hours ago 46 minutes ago, Xorcist said: I assume I can manually update via: Yes, exactly. 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.