You don't need a u-boot.ext to boot. You can perfectly boot a mainline kernel with a stock vendor u-boot.
The DTB you found for coreelec is a dtb for the vendor 5.4 kernel. That DTB is not compatible with mainline kernels.
There is some mainline kernel work being done for the Meson S4 (S905W2 is a Meson S4) at the moment.
On my Github page I have a Debian and Ubuntu image containing a mainline compatible DTB for the S905W2. Everything works to create a headless Linux server. But there is no HDMI or sound yet unfortunately.
TV Box Name: Sunvell T95Z plus Octagon shaped box (Beware – apparently a lot of variants)
CPU Amlogics S912
Armbian build file name: Armbian_community_25.5.0-trunk.370_Aml-s9xx-box_noble_current_6.12.23
DTB file used: meson-gxm-vega-s96.dtb (but several seem to work… none with wifi out of the box)
Kernel Version: 6.12.24
Distribution Installed (focal, buster, etc): Noble
Working Ethernet (Yes/No): Yes
Max Ethernet Speed that works (100/1000): Not sure how to determine...
Does wifi work (Yes/No): YES *** See Below
Does bluetooth work (Yes/No): Not tested
Does HDMI audio work (Yes/No): Yes
Additional Comments (provide any additional information you feel is important):
Tested many files. Ubuntu (noble) seemed much more usable than Debian (bookworm)
Also tested
Armbian_community_25.5.0-trunk.334_Aml-s9xx-box_bookworm_current_6.12.21 _gnome_desktop.img.xz
Armbian_community_25.5.0-trunk.334_Aml-s9xx-box_noble_current_6.12.21 _gnome_desktop.img.xz
Armbian_community_25.5.0-trunk.334_Aml-s9xx-box_oracular_edge_6.14.0 _gnome_desktop.img.xz
Armbian_community_25.5.0-trunk.334_Aml-s9xx-box_oracular_edge_6.14.0.img.xz
Since I am trying to learn server/media center/adguard or pihole stuff – chose the server headless install eventually. Learning has started.
**** Thank you thank you to @ZuiMelanieForno and their post here:
But basically looks like the easy way is to create a soft link of the ap6330 driver file as the brcm4330 file that must be loaded by default.
sudo mv /lib/firmware/brcm/brcmfmac4330-sdio.txt /lib/firmware/brcm/brcmfmac4330-sdio.txt.old
sudo ln -s /lib/firmware/brcm/brcmfmac-ap6330-sdio.txt /lib/firmware/brcm/brcmfmac4330-sdio.txt
Not sure of this solution will survive update. (UPDATE: Confirmed - it does not survive update - but doing the commands again and a reboot seemed to work.)
I have installed pihole and had it running. I had jellyfin running. Rebuilt from 0 again and am trying to do inside of docker containers. Dockers seems running but still some learning to go.
If I write my sd to my eMMC – can reset to 0 again by booting from an sd card … and when ready burn that to eMMC? Or should I keep the writes to the eMMC as few as possible?
I own two of these boxes – Identical on the outside but the newer one (bought probably 1 year later) does NOT have an eMMC. It has the dreaded NAND chip(BiWIN 16GB)… Also a different wifi module I think…. (LTM8830)
Oh and – can I just say I love pulling this thing out of retirement and having a tiny low cost media server in the house. Thanks @balbes150 and @SteeMan and Everyone for their hard work! This is amazing... until I blow it up again...
These instructions are for Amlogic CPUs for TV Boxes.
Note: If you have previously run other distributions on the box such as coreelec the below installation will not work. You will need to restore the original android firmware before attempting the install. coreelec changes the boot environment in ways that are incompatible with these Armbian builds.
Download links:
Weekly Community Rolling Builds: https://www.armbian.com/amlogic-s9xx-tv-box/
or build your own image using the Armbian build framework
Once you download your chosen build, you need to burn the image to an SD card. Generally balenaEtcher is recommended as it does a verification of the burn. Also be sure to use high quality SD cards.
Once you have the SD card with your chosen build, then you need to edit the boot configuration file on the SD card. In the BOOT partition of the SD card there will be a file /boot/extlinux/extlinux.conf, that you need to edit. There will also be a extlinux.conf.template file to use as a reference. You will need to add a line into the extlinux.conf file for the Device Tree (dtb) file you will be using for your box. Place this line before the APPEND line as shown in the .template file.
Basically you need to have the correct dtb for your box. You may need to attempt to use different dtb files until you find the one that works the best for your box's hardware (there are a bunch of dtb files in /boot/dtb/amlogic/... to try depending on your cpu architecture and hardware). It is unlikely that there will be a matching dtb file for your TV box. The idea is to find the one that works best for your box. This may mean that you try booting with different dtb files until you fine one that works good enough for your needs. By searching the forums you will find information about what dtbs other users have found work best for different boxes. Because you are booting from an SD card, you can easily try different dtb files. The dtd files are named by cpu family. So for example dtb files for the s905x2 cpu are named meson-g12a-*. Below there is a table that shows the identifiers for each familiy (g12a for s905x2 in this case).
Next you need to copy the correct uboot for your box. This is needed for how these builds boot on amlogic boxes. There are four different u-boot files located in the /boot directory: u-boot-s905, u-boot-s905x-s912, u-boot-s905x2-s922, u-boot-s905x3
You need to copy (note copy not move) the u-boot file that matches your cpu to a new file named u-boot.ext in the /boot directory
So for example with a TX3 mini box that has an s905w cpu you would copy u-boot-s905x-s912 to u-boot.ext: cp u-boot-s905x-s912 u-boot.ext
(See table below for more details on which u-boot to use for which cpu)
Once you have your SD card prepared you need to enable multiboot on the box. There are different ways documented to do this, but the most common is the "toothpick" method. The "toothpick" method means to hold the reset button while applying power to the box. The reset button is often hidden and located at the back of the audio/video jack connector. By pressing that button with a toothpick or other such pointed device you can enable multiboot. What you need to do is have the box unplugged, have your prepared sd card inserted, then press and hold the button while inserting the power connector. Then after a bit of time you can release the button. (I don't know exactly how long you need to hold the button after power is applied, but if it doesn't work the first time try again holding for longer or shorter times).
You should now be booting into armbian/linux. Note that the first boot takes longer as it is enlarging the root filesystem to utilize the entire SD card.
After you are satisfied that your box is working correctly for your needs you can optionally copy the installation from the SD card to internal emmc storage (assuming your box has emmc). (Note: Installing to emmc has some risks of bricking your box. Don't do this unless you feel you understand how to reinstall your box's android firmware) You install armbian to emmc by running the shell script in the /root directory: install-aml.sh. Note: It is not possible to install into emmc on boxes with the s905 cpu (s905x, s905w, s905x2, etc however should all be supported). It is recommended that you make a backup of emmc first. Also be prepared if anything goes horribly wrong with your emmc install to reinstall the android firmware using the Amlogic USB Burning Tool to unbrick your device. If you have or can find an original android firmware on the internet and you can generally (but not always) recover a bricked box using the Amlogic tool and the original firmware file.
Not supported or not tested
S805 -
S905W2 -
S905X4 -
S805X2 - s4
A113D - axg
A113X - axg
Note: Followup posts in this thread should be limited to comments to improve or better understand these instructions. Other issues should be posted as new questions in the Amlogic CPU Boxes sub-forum.
i can confirm that its working, when Armbian and the Devmfc Kernel versions are the same.
you need to copy boot and the modules
X96 Max Plus Ultra (S905x4)
Debian Bookworm with xfce
Mini tutorial
I am putting here some notes for posterity
In the current version of armbian (testing H6) I use X11 / Xorg only reaches 1024x768, but my display reaches 1440x900.
To add this new resolution to the list of Settings/Display you have to give these commands:
# xrandr --listmonitors
(this command serves to see what it's called, the hdmi output)
I’m using the DEVMFC version [https://github.com/devmfc/debian-on-amlogic]. Additionally, I took the `/boot` partition and copied all the files from the Devmfc_Ubuntu-Oracular_6.12.11-meson64_Minimal-25.01.24.img.xz image. Then, I downloaded the same version available from the Armbian community, but with a graphical interface: Armbian_community_25.5.0-trunk.4_Aml-s9xx-box_noble_current_6.12.12_xfce_desktop.img.xz.
I first flashed the Armbian image onto a USB drive. Then, in the `/boot` partition, I moved all existing root files into a `/backup` folder. After that, I copied the files from the DEVMFC version into the root of the `/boot` partition on the USB drive.
Surprisingly, when I tried to boot this setup on a TV Box similar to the Vontar X4, which has an S905X4 processor, it actually booted! It prompted me to create a root password, a regular user, set the language, and select a time zone. Then, it successfully launched into X for the graphical interface. However, it seems that USB ports were either disabled, or the system froze—the login screen was visible, and the keyboard cursor was blinking, but no input was possible.
I believe this is a solid starting point for getting Armbian images with a graphical interface running on S905X4 (Meson SC2), S905W2 (Meson S4), and S905Y4 (Meson S4) processors. Even without hardware-accelerated graphics, it should still be usable for basic applications like Notepad, text editors, spreadsheets, calculators, terminal access, and other simple tasks.
Has anyone else made progress running Armbian on the S905X4?
A backup of all of the files mention in my previous post (above) is now on The Internet Archive. Either browse the web page and choose what you want to download https://archive.org/details/H96Max-X3-s905x3-tvbox-android-firmware-backup ,
Or just download the one 7z file and decompress it by using the latest version of 7zip or Winrar https://archive.org/download/H96Max-X3-s905x3-tvbox-android-firmware-backup/h96maxX3tvBox-files.7z
*edit: If you are unable to download files from the archive.org website, or that website is blocked, then first connect to a VPN (virtual private network) service such as Surfshark or TotalVPN and choose a server in USA.
Howdy y'all. (It's something people in southern USA say). hehe. I want to eventually setup a mini NAS server via Gigabit ethernet using this device. So, I recently purchased this same tv box as @Yvan P. described and I successfully installed Armbian_community_24.11.0-trunk.273_Aml-s9xx-box_oracular_edge_6.11.3 (2.64 GB img file). It was more time consuming and challenging than I originally thought. I'll explain.
My box included Android firmware version PPR1.180610.11.20230208 and Kernel 4.9.113 built on 08FEB2023. Trying to boot any custom OS like Armbian via SD card in TF slot or USB flash drive in either 2.0 port or 3.0 just boot looped the H96 logo again 'n again. I had to downgrade the firmware. I followed instructions that I found on github here and on xda-developers here, but I used an alternative method in TWRP. *The following is a LONG explanation. Get ready! ☺
Download the 2022 firmware file as a zip or img, (another copy here) the Amlogic Bootcard maker and TWRP. Prepare a micro SD card with one partition, formatted as FAT32. Also prepare a USB flash drive (or USB card reader) with one partition, formatted as FAT32. Copy the 20220516 firmware file to the USB flash drive. Make the SD card bootable with Amlogic Bootcard maker or Burn card maker software. Copy recovery-twrp_x96max-20220601-1253.img to the root of the SD card and rename the file to recovery.img on the SD card. With power cord disconnected, tv box off, Insert SD card in TF slot of tv box, and insert USB flash into the USB 2.0 port. Connect a USB mouse to the blue USB 3.0 port so you can click on buttons. Use a toothpick to press and hold the reset button inside the 3.5mm AV port. Keep holding the AV button and connect the power cord. Keep holding button until TWRP appears on screen, and swipe right to allow modifications.
Recommended to backup all the partitions here to the SD card or USB flash drive, and keep a the second copy somewhere safe, especially Recovery. Under "select partitions for backup" make sure they don't say "0MB". If they do, then there is a problem and you shouldn't continue - stop. Troubleshoot and fix the problem - ask questions online. Otherwise, continue... ☺
For backup of the existing firmware, click Backup, Select Storage and choose the Micro SD card or USB OTG (##MB). Select all partitions and swipe right to do the backup. No need for compression. Wait. Go back to the main menu with back (bottom left corner), and select Install. Click Select Storage then select USB OTG (##MB), and OK button. Depending on which firmware file you want to use, the "franklin-ota-eng.qmx_srv.zip" file should appear. Or click Install Image and the ""AML_user_H96MaxX3_9_20220516.1821.img" file should appear. Click on the file, and swipe right to do the install. Wait, and do not do anything until you see IMAGE FLASH COMPLETED. After you see the COMPLETED message, remove the SD card and USB flash drive and go to the main menu and click Reboot, System. Let Android boot, and check the version of Android in the settings. It should be PPR1.180610.011.20220516 and kernel 4.9.113, May 16 2022.
Now we can boot Armbian from the SD card and make sure it works, updates and reboots properly. I used the standard instructions for writing an Armbian image to a SD card. I selected the server image "Armbian_community_24.11.0-trunk.273_Aml-s9xx-box_oracular_edge_6.11.3.img". Copied u-boot-s905x3 to u-boot.ext, and set /dtb/amlogic/meson-sm1-h96-max.dtb in extlinux.conf . I disconnected power cord, inserted SD card into TF, held reset button in the audio jack, and connected power cord still holding the button for 15 seconds. Armbian logo came up and I released the button. All 4GB RAM (3.69GB usable) is good, ethernet is good at 1 Gigabit, but there is no sound, no bluetooth and no wifi. That's alright because I will use this as a mini NAS server and maybe an ad blocking DNS server via Gigabit ethernet. I froze the kernel in armbian-config, ran "apt update" and rebooted. There were some error messages about initramfs but nothing bad. It rebooted and started alright. For smoother 'n faster data transfer, I should replace my cheap old cat5e cables and probably get a better and brand-name gigabit switch. I hope this helps future aml tv box enthusiasts 🐧.
forgot to mention for the armbian sd card I also modified the extlinux.conf to point to /dtb/amlogic/meson-sm1-h96-max-x3.dtb and copied u-boot-s905x3 to u-boot.ext . I'm using Armbian_25.02.0_amlogic_s905x3_bookworm_6.6.68_server_2025.01.01.img
I followed @Pita Bread's steps but there were some things I had to do differently so I am noting it down for others' reference.
I had to plug the SD card and USB stick into a USB hub and plug the hub into the box. I also had to use an SD card smaller than 32GB. With these I was able to boot into TWRP using the hold reset button during power on method. The H96 splash screen shows first then TWRP comes up shortly after.
Proceeded in TWRP with specified steps but my system partition showed as 0MB for some reason. I was only able to back up my boot and recovery. There were some mounting errors for /system and even though it said [install complete] my tv box firmware did not downgrade. Ultimately I ended up formatting the system partition as exFAT and EXT4 using Wipe > Advanced wipe > change file system > Format (off the top of my memory). Note this removes the entire operating system.
After wiping it i shut down the system from the main menu.
i used burncard maker on my micro SD card with the desired version of firmware (2019 firmware for this box in my case). Then I inserted the card with the image directly into the SD card port of the tv box.
The box was then powered on WITHOUT holding the reset button. It showed "updating android" and successfully downgraded the firmware. Hooray!
Part 2: Installing armbian
I installed an armbian image from this repository https://github.com/ophub/amlogic-s9xxx-armbian which is being developed specifically for TV boxes.
I used balenaEtcher to burn the image onto the micro SD card, then inserted the card into my USB hub and plugged the hub into the powered off tv box. While holding the reset button inside the AV port, I inserted the power cable to boot the box and it booted into armbian. I forget if I needed to hold that reset button or not though. After that i followed the instructions from the repository and on screen to copy armbian into the eMMC to permanently install armbian onto it (ie. Use the armbian-install command in the terminal)
Currently wifi and ethernet seem to work. I am continuing to test the box.
I tried with SD and USB, same error. That's why I tried to reinstall everything using Debian instead of Ubuntu (on the USB at the moment), but the problem is still there. At least now there's an Oops: 0000000096000004 which is better than nothing
This was the first thing I checked, temperature was 41°C or similar when it crashed.
I set it, let's see. The board was running for a couple of days before it crashed, Let's hope it crashes sooner this time
About the wires.. I hope they are not frayed, I will try to see if I can find another power supplier.
TV Box Name: H96 MAX V56
CPU: RockChip RK3566
Armbian build file name: Armbian_community_24.8.0-trunk.6_H96-tvbox-3566_jammy_current_6.6.32_gnome_desktop.img.xz
Kernel Version: 6.6.32
Kernel Version: 6.12.6
Distribution Installed (focal, buster, etc): Jammy
Working Ethernet (Yes/No): yes
Max Ethernet Speed that works (100/1000): 1000 Gigabit
Does wifi work (Yes/No): Yes
Does bluetooth work (Yes/No): depends on User WorkAround
Does HDMI audio work (Yes/No): Yes
Additional Comments (provide any additional information you feel is important):
No TF-Card Boot and No USB boot
all done by Rockchip Hardware flash
Topic 4/32gb
Topic 8/64gb
I can confirm that the T95 Max+ (Plus) is booting under the mentioned limitations (no WiFi, no Bluetooth, 100 Mbps) using the Server image Armbian Linux 6.6 Ubuntu 24.04 (Noble). I haven't tested installing to emmc, though.
TV Box Name: T95 Max+ (Plus)
CPU: S905x3
Armbian build file name: Armbian_community_25.2.0-trunk.160_Aml-s9xx-box_noble_current_6.6.65.img
DTB file used: /dtb/amlogic/meson-sm1-x96-air.dtb or /dtb/amlogic/meson-sm1-sei610.dtb
Kernel Version: 6.6.65
Distribution Installed: Noble (Ubuntu)
Working Ethernet: Yes
Max Ethernet Speed that works: 100 Mbps
Does wifi work: No
Does bluetooth work: No
Does HDMI audio work: No
Additional Comments (provide any additional information you feel is important):
I had to rename u-boot-s905x3 to u-boot.ext to boot successfully.
apt update && apt upgrade worked fine after installation at the time of 12/18/2024. However, it may still be advisable to freeze the packages mentioned in the original post.
/dtb/amlogic/meson-sm1-x96-air-gbit.dtb did not work (no Ethernet at all).
After some digging and trial-and-error, I finally fixed the issue with my TX3 Mini! Here’s what I did in case it helps anyone else:
First, I confirmed the specs of my box (by inspecting the main board) —it indeed has an S905W CPU, 1GB of RAM (as Armbian mentioned), and 16GB of NAND storage. To resolve the issue:
1. I Downloaded the Stock ROM: I found the original stock firmware specifically for the TX3 Mini with 1GB RAM and 16GB storage. (The firmware I used was compatible with both 1GB and 2GB variants.)
2. I Prepared a Bootable Burn Card: Using the Amlogic Burn Card Maker, I created a bootable SD card with the stock firmware.
3. Triggered NAND sort method: I sorted the NAND pins on the board, which allowed it to boot from the SD card. This step eventually led to the firmware flashing itself.
For some reason the process was stuck at the beginning. But after some experimenting, I unchecked the Erase Flash and Erase Bootloader options in the Burn Card Maker, which resolved the issue and allowed the process to complete successfully.
And just like that, my box is back in action! If anyone else encounters a similar problem or needs help with their TX3 Mini, feel free to reach out. I’d be happy to assist!
Here’s the firmware I used for my box: TX3Mini-20180716.img
multiboot means different things in different contexts. But in this context it is the process that is used for amlogic based tv boxes to get the native Android uboot on the emmc to boot armbian from SD card. The process is to press the reset button with the SD card inserted which causes the native uboot to look for a certain file on the SD card which is then read and adjusts the uboot environment so that future boots will first boot from the SD card.
Hi @Pita Bread, thanks for your input!
I've been struggling with this for two straigt days now.
I was *finally* able to downgrade my Vontar x3 (identical with the X96 Max) - it wasn't possible through TWRP or USB burner, but it did eventually work with the Burn Card Maker.
Anyway, so now I have the identical software version on it as you (AML_user_H96MaxX3_9_20220516.1821.img) and I created an SD card with a new armbian build with BalenaEtcher.
I selected the same dtb file as you and took care of the u-boot.ext.
But still, I just can't make the thing boot into Armbian and it's so frustrating.
As long as I keep the reset button pressed, the screen will just stay black - Armbian never shows up. When I release the button, after a while the H96max splash screen shows up, then it turns black and then the screen signal is lost. There is no boot loop or anything. It just get's stuck.
The same thing happens, no matter if I push the reset button or not, as long as the SD card is inserted.
What am I doing wrong?
The only difference I see to you is that I'm using a more recent Armbian version (can't download the one you used, because the internet archive doesn't actually transfer any data).
Thanks a lot in advance for your help!
EDIT:
I just randomly tried inserting the SD Card in an USB adapter and plugged that into the USB2 port of the device. And it worked! Totally random, but it seems like that did the trick. Didn't see this documented anywhere so maybe the information is helpful to anyone!
I was looking for a low-cost S905W tv box. I discovered this counterfeitby accident because I couldn't boot any armbian image for S905W soc and I accidentally tried the multitool and it started right away 1GB/8GB version and not 2GB/16GB.
So be very careful what you buy and if possible send it back to these dishonest Chinese sellers!
A guide to installing Armbian on the H96 Max V11 (RK3318_V1.4 blue PCB)
What you will need
Your H96 Max V11 TV box with the power supply and the HDMI cable that came with it;
A TV or a monitor with an HDMI port;
A wired USB keyboard (or a wireless one with a USB dongle);
An Ethernet cable to connect to a router on your home network that has Internet access;
A Micro SD card (minimum 1GB, more if you're going to back up Android on your box before overwriting it with Armbian);
A USB card reader for Micro SD cards;
A Windows PC connected to your home network;
Installation steps
Download the experimental Armbian image (kernel 5.19.15 and libreelec patches — alas, that's the latest version that works correctly with our box) and a copy of the Multitool;
Burn the Multitool on the SD card using Rufus (no need to change any settings, just click "SELECT" and locate multitool.img.xz or drag and drop the file on Rufus and then click "START");
Connect your TV box to the TV or monitor, connect the keyboard, plug in the Multitool SD card and then plug in the power cord;
Wait a minute (while SD card partitions are being resized) for the Multitool main menu to appear, then select "Shutdown";
Unplug the power cord and the SD card, then plug the SD card into your PC. Two new drives should appear, labeled BOOTSTRAP and MULTITOOL. If you see both, skip the next step. If you only see the BOOTSTRAP, proceed to the next step;
Start Disk Management (press Win+X, K). Scroll down the list of disks (use the scrollbar, because mouse wheel doesn't work there) to locate your SD card, and on the MULTITOOL partition right-click, then press C, and click "Add", "OK";
Open the MULTITOOL drive in Windows Explorer (or your favorite file manager) and copy the downloaded Armbian image to the images folder;
Safely remove (eject) the SD card, plug it into the TV box and plug in the power cord. The Multitool main menu will appear in a few seconds;
If you don't care about stock Android firmware on your TV box, skip the next step. If you want to back up the Android firmware, proceed to the next step;
In the Multitool main menu select "Backup flash" and click through (there will be only one option). Name your backup file. Wait for the backup to finish. The backup file will be saved to the backups folder on the SD card's MULTITOOL partition;
Now it's time to replace Android with Armbian. In the Multitool main menu select "Burn image to flash" and click through (there will be only one option). Wait for the process to complete, then in the main menu select "Shutdown";
Unplug the power cord and the SD card, then replug the power cord. Wait a few minutes for Armbian to get everything ready for its first launch, and then follow the initial setup prompts;
You will be taken to the login prompt. Log in with the name/password for the regular user you've created;
Connect your TV box to your home network router with an Ethernet cable;
In Armbian, enter the command sudo cat /run/motd.dynamic and note the IP address assigned by the router to the TV box;
Now you will need to connect to your TV box on the home network via the SSH protocol. If you're running Windows 10 or later, press Win+X, I, Enter. A PowerShell/Terminal window will open. Enter the following command, substituting the words in angle brackets with actual values: ssh <IP address from the previous step> -l <name for the regular user>. Type yes at the prompt asking if you really want to connect to this unknown host. At the next prompt that appears, enter the password for the regular user you've created. Skip the next step;
If you're running an older version of Windows, you will need to download PuTTY, an SSH and Telnet client, set up an SSH connection to your TV box with the IP address above and log in with the name/password for the regular user;
Now it's time to fix the settings for the Wi-Fi chip that doesn't work out of the box on the H96 Max V11. To delete the old settings, copy the command sudo rm -f /usr/lib/firmware/brcm/brcmfmac4334-sdio.rockchip,rk3318-box.txt and paste it by right-clicking in the SSH window, then press Enter;
To create the new settings file, enter (copy-paste) the command sudo nano /usr/lib/firmware/brcm/brcmfmac4334-sdio.rockchip,rk3318-box.txt
The nano text editor will open with a new empty file;
Now open this small text file (a copy of nvram_2734c.txt from this forum topic), press Ctrl-A to select all text in it, then Ctrl-C to copy it to the clipboard;
Switch to the SSH window, right-click to paste the copied text to nano then press Ctrl-S to save and Ctrl-X to exit;
Enter (or copy-paste) the command sudo reboot -f to reboot Armbian. After that you can either close the SSH window and proceed with the physical console or start a new SSH session once Armbian has restarted;
Enter (or copy-paste) the command sudo apt update && sudo apt install armbian-config
After the update and installation is completed, run armbian-config to configure various software and hardware settings (including Wi-Fi). It is recommended to select "Freeze" in System settings to disable Armbian kernel upgrades because our kernel is compiled with custom patches enabling HDMI output on H96 Max V11 to work properly that are unavailable in other kernel versions.
I found a solution to be able to run Armbian on this device.
At my institution we are converting these TV Boxes into computers to make available in public schools. So I have 40 units from this same box and this unit was the only one with NAND memory.
So I managed to install Armbian on the other units and after carrying out all the customization I created a DD image of the EMMC unit /dev/mmcblk1.
(Note: check if your partition is /dev/mmcblk1 or /dev/mmcblk2)
Create a compressed disk image:
dd if=/dev/mmcblk1 status=progress | gzip -9 /mnt/external/filename.img.gz
Then I cloned the NAND unit and, oddly enough, it was uploaded to the Armbian system.
zcat /mnt/external/filename.img.gz | dd of=/dev/mmcblk1
It appears that when cloning information from an EMMC partition to NAND the u-boot process occurs normally without analyzing the hardware context.
So if anyone has the same problem, if you can get another unit with EMMC memory, it may be possible to convert it to a NAND unit.
Yesterday late in the evening I managed to boot from usb. What I did was burn Armbian-unofficial_24.11.0-trunk_Armsom-sige5_noble_vendor_6.1.75_minimal to a USB drive, replace the dtb with the one from Android and boot with the commands "usb start" and "run bootcmd_usb0".
I couldn't get ROC's image nor Multiboot (with the replaced dtb) to boot this way.
EDIT: Installed it to eMMC and ran sbc-bench - results https://0x0.st/Xvsr.bin
When I plug in the HDMI, it crashes Will have to investigate.
dwhdmi-rockchip 27da0000.hdmi: i2c read err!
posting a solution I have found how to boot Armbian on S905x device Scishion V88 Pro
My device:
* works, boots into an Android (has working u-boot)
* has no reset button
* contains thirdparty Android ROM that does not allow to enter aml burn mode
* cannot use Android update app
* does not respond to eMMC pin short (like in this post)
The only way to boot Armbian in this case is to solder serial console, interrupt u-boot and run recover from sd card command:
1. solder serial console
2. connect usb-serial adapter
3. insert Armbian prepared SD card for your amlogic CPU version
4. plug power and immediately press and hold Enter
5. you should see interrupted u-boot prompt (ex, gxl_p212_v1#)
6. type command run recovery_from_sdcard and hit Enter
7. the box should now boot in Armbian
An example session:
gxl_p212_v1#help
? - alias for 'help'
aml_sysrecovery- Burning with amlogic format package from partition sysrecovery
amlmmc - AMLMMC sub system
amlnf - aml nand sub-system
amlnf_test- AMLPHYNAND sub-system
autoscr - run script from memory
base - print or set address offset
bmp - manipulate BMP image data
booti - boot arm64 Linux Image image from memory
bootm - boot application image from memory
bootp - boot image via network using BOOTP/TFTP protocol
cbusreg - cbus register read/write
clkmsr - measure PLL clock
cmp - memory compare
cp - memory copy
crc32 - checksum calculation
cvbs - CVBS sub-system
dcache - enable or disable data cache
defenv_reserv- reserve some specified envs after defaulting env
dhcp - boot image via network using DHCP/TFTP protocol
echo - echo args to console
efuse - efuse read/write data commands
efuse_user- efuse user space read write ops
emmc - EMMC sub system
env - environment handling commands
exit - exit script
false - do nothing, unsuccessfully
fatinfo - print information about filesystem
fatload - load binary file from a dos filesystem
fatls - list files in a directory (default /)
fatsize - determine a file's size
fdt - flattened device tree utility commands
forceupdate- forceupdate
get_rebootmode- get reboot mode
go - start application at address 'addr'
gpio - query and control gpio pins
hdmitx - HDMITX sub-system
help - print command description/usage
i2c - I2C sub-system
icache - enable or disable instruction cache
imgread - Read the image from internal flash with actual size
irkey - irkey key_value1 key_value2 time_value
itest - return true/false on integer compare
jtagoff - disable jtag
jtagon - enable jtag
keyman - Unify key ops interfaces based dts cfg
keyunify- key unify sub-system
loop - infinite loop on address range
macreg - ethernet mac register read/write/dump
md - memory display
mm - memory modify (auto-incrementing address)
mmc - MMC sub system
mmcinfo - display MMC info
mw - memory write (fill)
mwm - mw mask function
nm - memory modify (constant address)
open_scp_log- print SCP messgage
osd - osd sub-system
phyreg - ethernet phy register read/write/dump
ping - send ICMP ECHO_REQUEST to network host
printenv- print environment variables
rarpboot- boot image via network using RARP/TFTP protocol
read_temp- cpu temp-system
reboot - set reboot mode and reboot system
reset - Perform RESET of the CPU
rsvmem - reserve memory
run - run commands in an environment variable
saradc - saradc sub-system
saradc_12bit- saradc sub-system
saveenv - save environment variables to persistent storage
sdc_burn- Burning with amlogic format package in sdmmc
sdc_update- Burning a partition with image file in sdmmc card
set_trim_base- cpu temp-system
set_usb_boot- set usb boot mode
setenv - set environment variables
showvar - print local hushshell variables
silent - silent
sleep - delay execution for some time
store - STORE sub-system
systemoff- system off
temp_triming- cpu temp-system
test - minimal test like /bin/sh
tftpboot- boot image via network using TFTP protocol
true - do nothing, successfully
unpackimg- un pack logo image into pictures
update - Enter v2 usbburning mode
usb - USB sub-system
usb_burn- Burning with amlogic format package in usb
usb_update- Burning a partition with image file in usb host
usbboot - boot from USB device
version - print monitor, compiler and linker version
vout - VOUT sub-system
vpu - vpu sub-system
wipeisb - wipeisb
write_trim- cpu temp-system
write_version- cpu temp-system
gxl_p212_v1#printenv
EnableSelinux=enforcing
aml_dt=gxl_p212_1g
baudrate=115200
bootargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 androidboot.selinux=permissive androidboot.selinux=enforcing logo=osd1,loaded,0x3d800000,1080p60hz maxcpus=4 vout=1080p60hz,enable hdmimode=1080p60hz cvbsmode=576cvbs hdmitx= cvbsdrv=0 androidboot.firstboot=0 jtag=apee androidboot.hardware=amlogic
bootcmd=run storeboot
bootdelay=1
bootup_offset=0x1080240
bootup_size=0x3f4c8
cmdline_keys=if keyman init 0x1234; then if keyman read usid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.serialno=${usid};fi;if keyman read mac ${loadaddr} str; then setenv bootargs ${bootargs} mac=${mac} androidboot.mac=${mac};fi;if keyman read deviceid ${loadaddr} str; then setenv bootargs ${bootargs} androidboot.deviceid=${deviceid};fi;fi;
cvbs_drv=0
cvbsmode=576cvbs
display_bpp=16
display_color_bg=0
display_color_fg=0xffff
display_color_index=16
display_height=1080
display_layer=osd1
display_width=1920
dtb_mem_addr=0x1000000
ethact=dwmac.c9410000
ethaddr=00:15:18:01:81:31
factory_reset_poweroff_protect=echo wipe_data=${wipe_data}; echo wipe_cache=${wipe_cache};if test ${wipe_data} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi; if test ${wipe_cache} = failed; then run init_display; run storeargs;if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;fi;
fb_addr=0x3d800000
fb_height=1080
fb_width=1920
fdt_high=0x20000000
firstboot=0
gatewayip=10.18.9.1
hdmimode=1080p60hz
hostname=arm_gxbb
init_display=osd open;osd clear;imgread pic logo bootup $loadaddr;bmp display $bootup_offset;bmp scale
initargs=rootfstype=ramfs init=/init console=ttyS0,115200 no_console_suspend earlyprintk=aml-uart,0xc81004c0 ramoops.pstore_en=1 ramoops.record_size=0x8000 ramoops.console_size=0x4000 androidboot.selinux=permissive
ipaddr=10.18.9.97
jtag=apee
loadaddr=1080000
maxcpus=4
netmask=255.255.255.0
outputmode=1080p60hz
preboot=run factory_reset_poweroff_protect;run upgrade_check;run init_display;run storeargs;run upgrade_key;run upgrade_sadckey;run switch_bootmode;
reboot_mode=normal
recovery_from_flash=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if imgread kernel ${recovery_part} ${loadaddr} ${recovery_offset}; then wipeisb; bootm ${loadaddr}; fi
recovery_from_sdcard=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if fatload mmc 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload mmc 0 ${loadaddr} recovery.img; then if fatload mmc 0 ${dtb_mem_addr} dtb.img; then echo sd dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_from_udisk=setenv bootargs ${bootargs} aml_dt=${aml_dt} recovery_part={recovery_part} recovery_offset={recovery_offset};if fatload usb 0 ${loadaddr} aml_autoscript; then autoscr ${loadaddr}; fi;if fatload usb 0 ${loadaddr} recovery.img; then if fatload usb 0 ${dtb_mem_addr} dtb.img; then echo udisk dtb.img loaded; fi;wipeisb; bootm ${loadaddr};fi;
recovery_offset=0
recovery_part=recovery
sdc_burning=sdc_burn ${sdcburncfg}
sdcburncfg=aml_sdc_burn.ini
serverip=10.18.9.113
stderr=serial
stdin=serial
stdout=serial
storeargs=setenv bootargs ${initargs} androidboot.selinux=${EnableSelinux} logo=${display_layer},loaded,${fb_addr},${outputmode} maxcpus=${maxcpus} vout=${outputmode},enable hdmimode=${hdmimode} cvbsmode=${cvbsmode} hdmitx=${cecconfig} cvbsdrv=${cvbs_drv} androidboot.firstboot=${firstboot} jtag=${jtag}; setenv bootargs ${bootargs} androidboot.hardware=amlogic;run cmdline_keys;
storeboot=echo Booting...; if unifykey get usid; then setenv bootargs ${bootargs} androidboot.serialno=${usid};fi;if unifykey get mac; then setenv bootargs ${bootargs} mac=${ethaddr};fi;if imgread kernel boot ${loadaddr}; then bootm ${loadaddr}; fi;run update;
switch_bootmode=get_rebootmode;if test ${reboot_mode} = factory_reset; then run recovery_from_flash;else if test ${reboot_mode} = update; then run update;else if test ${reboot_mode} = cold_boot; then fi;fi;fi;
try_auto_burn=update 700 750;
update=run usb_burning; run sdc_burning; if mmcinfo; then run recovery_from_sdcard;fi;if usb start 0; then run recovery_from_udisk;fi;run recovery_from_flash;
upgrade_check=echo upgrade_step=${upgrade_step}; if itest ${upgrade_step} == 3; then run init_display; run storeargs; run update;else fi;
upgrade_key=if gpio input GPIOAO_2; then echo detect upgrade key; sleep 3;if gpio input GPIOAO_2; then run update; fi;fi;
upgrade_sadckey=saradc open 0; echo detect sadckey ....;if saradc get_in_range 0 0x50; then sleep 1; if saradc get_in_range 0 0x50; then echo update by key...; run update; fi;fi;
upgrade_step=2
usb_burning=update 1000
wipe_cache=successful
wipe_data=successful
Environment size: 5164/65532 bytes
gxl_p212_v1#run recovery_from_sdcard
card in
[mmc_init] mmc init success
reading aml_autoscript
800 bytes read in 4 ms (195.3 KiB/s)
## Executing script at 01080000
## Error: "bootfromsd" not defined
Saving Environment to aml-storage...
mmc env offset: 0x27400000
Writing to MMC(1)... done
reboot use default mode: normal
INFO: PSCI Affinity Map:
INFO: AffInst: Level 0, MPID 0x0, State ON
INFO: AffInst: Level 0, MPID 0x1, State OFF
INFO: AffInst: Level 0, MPID 0x2, State OFF
INFO: AffInst: Level 0, MPID 0x3, State OFF
bl31 reboot reason: 0xd
bl31 reboot reason: 0x1
system cmd 1.
ERROR: gxbb System RGXL:BL1:9ac50e:a1974b;FEAT:ADFC318C;POC:3;RCY:0;EMMC:0;READ:0;0.0;CHK:0;
TE: 94201
BL2 Built : 19:41:49, Jun 20 2016.
gxl ge299011 - xiaobo.gu@droid05
set vcck to 1120 mv
set vddee to 1000 mv
Board ID = 2
CPU clk: 1200MHz
DDR3 chl: Rank0+1 @ 528MHz - FAIL
DDR3 chl: Rank0 @ 528MHz - PASS
DQS-corr enabled
DDR scramble enabled
Rank0: 1024MB(auto)-2T-7
DataBus test pass!
AddrBus test pass!
-s
Load fip header from eMMC, src: 0x0000c200, des: 0x01400000, size: 0x00004000
New fip structure!
Load bl30 from eMMC, src: 0x00010200, des: 0x01100000, size: 0x0000d600
Load bl31 from eMMC, src: 0x00020200, des: 0x10100000, size: 0x00014400
Load bl33 from eMMC, src: 0x00038200, des: 0x01000000, size: 0x000a8000
NOTICE: BL3-1: v1.0(debug):c813a61
NOTICE: BL3-1: Built : 14:39:44, Jun 16 2016
aml log : bl31 normal boot !
[Image: gxl_v1.1.3137-2517a7a 2016-06-24 11:31:11 xing.xu@droid05]
OPS=0x82
49 fa cb 46 f4 e1 33 33 f1 68 a2 be [0.441838 Inits done]
secure task start!
high task start!
low task start!
INFO: BL3-1: Initializing runtime services
WARNING: No OPTEE provided by BL2 boot loader
ERROR: Error initializing runtime service opteed_fast
INFO: BL3-1: Preparing for EL3 exit to normal world
INFO: BL3-1: Next image address = 0x1000000
INFO: BL3-1: Next image spsr = 0x3c9
U-Boot 2015.01 (Aug 11 2016 - 17:47:33)
DRAM: 1 GiB
Relocation Offset is: 36ecb000
register usb cfg[0][1] = 0000000037f5faf0
vpu: error: vpu: check dts: FDT_ERR_BADMAGIC, load default parameters
vpu: clk_level = 7
vpu: set clk: 666667000Hz, readback: 666660000Hz(0x300)
vpp: vpp_init
boot_device_flag : 1
Nand PHY Ver:1.01.001.0006 (c) 2013 Amlogic Inc.
init bus_cycle=6, bus_timing=7, system=5.0ns
reset failed
get_chip_type and ret:fffffffe
get_chip_type and ret:fffffffe
chip detect failed and ret:fffffffe
nandphy_init failed and ret=0xfffffff1
MMC: aml_priv->desc_buf = 0x0000000033ecb6b0
aml_priv->desc_buf = 0x0000000033ecd9d0
SDIO Port B: 0, SDIO Port 😄 1
emmc/sd response timeout, cmd8, status=0x1ff2800
emmc/sd response timeout, cmd55, status=0x1ff2800
[mmc_startup] mmc refix success
[mmc_init] mmc init success
mmc read lba=0x14000, blocks=0x400
Amlogic multi-dtb tool
Multi dtb detected
Multi dtb tool version: v2 .
Support 2 dtbs.
aml_dt soc: gxl platform: p212 variant: 1g
dtb 0 soc: gxl plat: p212 vari: 1g
dtb 1 soc: gxl plat: p212 vari: 2g
Find match dtb: 0
start dts,buffer=0000000033ed0270,dt_addr=0000000033ed0a70
parts: 11
00: logo 0000000002000000 1
01: recovery 0000000002000000 1
02: rsv 0000000000800000 1
03: tee 0000000000800000 1
04: crypt 0000000002000000 1
05: misc 0000000002000000 1
06: instaboot 0000000020000000 1
07: boot 0000000002000000 1
08: system 0000000040000000 1
09: cache 0000000020000000 2
10: data ffffffffffffffff 4
get_dtb_struct: Get emmc dtb OK!
overide_emmc_partition_table: overide cache
[mmc_get_partition_table] skip partition cache.
Partition table get from SPL is :
name offset size flag
===================================================================================
0: bootloader 0 400000 0
1: reserved 2400000 4000000 0
2: cache 6c00000 20000000 2
3: env 27400000 800000 0
4: logo 28400000 2000000 1
5: recovery 2ac00000 2000000 1
6: rsv 2d400000 800000 1
7: tee 2e400000 800000 1
8: crypt 2f400000 2000000 1
9: misc 31c00000 2000000 1
10: instaboot 34400000 20000000 1
11: boot 54c00000 2000000 1
12: system 57400000 40000000 1
13: data 97c00000 130400000 4
mmc read lba=0x12000, blocks=0x2
mmc read lba=0x12002, blocks=0x2
mmc_read_partition_tbl: mmc read partition OK!
eMMC/TSD partition table have been checked OK!
mmc env offset: 0x27400000
In: serial
Out: serial
Err: serial
reboot_mode=normal
hpd_state=1
[1080p60hz] is invalid for cvbs.
set hdmitx VIC = 16
config HPLL = 2970
HPLL: 0xc000027b
config HPLL done
j = 4 vid_clk_div = 1
hdmitx phy setting done
hdmitx: set enc for VIC: 16
enc_vpu_bridge_reset[1183]
rx version is 2.0 div=10
[store]To run cmd[emmc dtb_read 0x1000000 0x40000]
read emmc dtb
Amlogic multi-dtb tool
Multi dtb detected
Multi dtb tool version: v2 .
Support 2 dtbs.
aml_dt soc: gxl platform: p212 variant: 1g
dtb 0 soc: gxl plat: p212 vari: 1g
dtb 1 soc: gxl plat: p212 vari: 2g
Find match dtb: 0
Net: dwmac.c9410000
wipe_data=successful
wipe_cache=successful
upgrade_step=2
[OSD]load fb addr from dts
[OSD]failed to get fb addr for logo
[OSD]use default fb_addr parameters
[OSD]fb_addr for logo: 0x3d800000
[OSD]load fb addr from dts
[OSD]failed to get fb addr for logo
[OSD]use default fb_addr parameters
[OSD]fb_addr for logo: 0x3d800000
[CANVAS]addr=0x3d800000 width=3840, height=2160
amlkey_init() enter!
[EFUSE_MSG]keynum is 4
[KM]Error:f[key_manage_query_size]L507:key[usid] not programed yet
[KM]Error:f[key_manage_query_size]L507:key[mac] not programed yet
[KM]Error:f[key_manage_query_size]L507:key[deviceid] not programed yet
gpio: pin GPIOAO_2 (gpio 102) value is 1
get_cpu_id flag_12bit=1
detect sadckey ....
saradc - saradc sub-system
Usage:
saradc saradc open <channel> - open a SARADC channel
saradc close - close the SARADC
saradc getval - get the value in current channel
saradc get_in_range <min> <max> - return 0 if current value in the range of current channel
Hit Enter or space or Ctrl+C key to stop autoboot -- : 0
card in
[mmc_init] mmc init success
Device: SDIO Port B
Manufacturer ID: 74
OEM: 4a45
Name: SDC
Tran Speed: 50000000
Rd Block Len: 512
SD version 3.0
High Capacity: Yes
Capacity: 15 GiB
mmc clock: 40000000
Bus Width: 4-bit
reading s905_autoscript
537 bytes read in 4 ms (130.9 KiB/s)
## Executing script at 01020000
start amlogic old u-boot
## Error: "bootfromsd" not defined
reading boot_android
** Unable to read file boot_android **
** Bad device usb 0 **
reading u-boot.ext
646455 bytes read in 48 ms (12.8 MiB/s)
## Starting application at 0x01000000 ...
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 6.6.53-current-meson64 (build@armbian) (aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for Ubuntu) 2.38) #1 SMP PREEMPT Mon Sep 30 14:25:15 UTC 2024
[ 0.000000] Machine model: Amlogic Meson GXL (S905X) P212 Development Board
[ 0.000000] efi: UEFI not found.
[ 0.000000] Reserved memory: created CMA memory pool at 0x000000002a800000, size 256 MiB
[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[ 0.000000] OF: reserved mem: 0x000000002a800000..0x000000003a7fffff (262144 KiB) map reusable linux,cma
[ 0.000000] OF: reserved mem: 0x0000000000000000..0x0000000000ffffff (16384 KiB) nomap non-reusable hwrom@0
[ 0.000000] OF: reserved mem: 0x0000000005000000..0x00000000052fffff (3072 KiB) nomap non-reusable secmon@5000000
[ 0.000000] OF: reserved mem: 0x0000000005300000..0x00000000072fffff (32768 KiB) nomap non-reusable secmon@5300000
[ 0.000000] OF: reserved mem: 0x0000000010000000..0x00000000101fffff (2048 KiB) nomap non-reusable secmon@10000000
[ 0.000000] NUMA: No NUMA configuration found
[ 0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000003f806fff]
[ 0.000000] NUMA: NODE_DATA [mem 0x3f5e7940-0x3f5e9fff]
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000000000000-0x000000003f806fff]
[ 0.000000] DMA32 empty
[ 0.000000] Normal empty
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000000000000-0x0000000000ffffff]
[ 0.000000] node 0: [mem 0x0000000001000000-0x0000000004ffffff]
[ 0.000000] node 0: [mem 0x0000000005000000-0x00000000072fffff]
[ 0.000000] node 0: [mem 0x0000000007300000-0x000000000fffffff]
[ 0.000000] node 0: [mem 0x0000000010000000-0x00000000101fffff]
[ 0.000000] node 0: [mem 0x0000000010200000-0x000000003f806fff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000003f806fff]
[ 0.000000] On node 0, zone DMA: 2041 pages in unavailable ranges
[ 0.000000] psci: probing for conduit method from DT.
[ 0.000000] psci: PSCIv0.2 detected in firmware.
[ 0.000000] psci: Using standard PSCI v0.2 function IDs
[ 0.000000] psci: Trusted OS migration not required
[ 0.000000] percpu: Embedded 22 pages/cpu s51304 r8192 d30616 u90112
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: ARM erratum 845719
[ 0.000000] alternatives: applying boot alternatives
[ 0.000000] Kernel command line: root=UUID=bb7643a4-cf60-4444-9fc3-c565842689c1 rootflags=data=writeback console=ttyAML0,115200n8 console=tty0 rw no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 splash plymouth.ignore-serial-consoles
[ 0.000000] Unknown kernel command line parameters "splash", will be passed to user space.
[ 0.000000] Dentry cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[ 0.000000] Fallback order for Node 0: 0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 256038
[ 0.000000] Policy zone: DMA
[ 0.000000] mem auto-init: stack:off, heap alloc:on, heap free:off
[ 0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 0MB
[ 0.000000] software IO TLB: area num 4.
[ 0.000000] software IO TLB: mapped [mem 0x000000003e280000-0x000000003e380000] (1MB)
[ 0.000000] Memory: 653368K/1040412K available (16192K kernel code, 1700K rwdata, 4964K rodata, 3776K init, 606K bss, 124900K reserved, 262144K cma-reserved)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU event tracing is enabled.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[ 0.000000] Trampoline variant of Tasks RCU enabled.
[ 0.000000] Tracing variant of Tasks RCU enabled.
[ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] Root IRQ handler: gic_handle_irq
[ 0.000000] GIC: Using split EOI/Deactivate mode
[ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[ 0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[ 0.000000] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[ 0.000329] Console: colour dummy device 80x25
[ 0.000344] printk: console [tty0] enabled
[ 0.000943] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[ 0.000969] pid_max: default: 32768 minimum: 301
[ 0.001063] LSM: initializing lsm=capability,yama,apparmor,integrity
[ 0.001102] Yama: becoming mindful.
[ 0.001209] AppArmor: AppArmor initialized
[ 0.001325] Mount-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.001349] Mountpoint-cache hash table entries: 2048 (order: 2, 16384 bytes, linear)
[ 0.003465] RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[ 0.003582] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1.
[ 0.003836] rcu: Hierarchical SRCU implementation.
[ 0.003852] rcu: Max phase no-delay instances is 1000.
[ 0.005705] EFI services will not be available.
[ 0.006241] smp: Bringing up secondary CPUs ...
[ 0.006969] Detected VIPT I-cache on CPU1
[ 0.007096] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.007958] Detected VIPT I-cache on CPU2
[ 0.008080] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[ 0.008931] Detected VIPT I-cache on CPU3
[ 0.009047] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[ 0.009176] smp: Brought up 1 node, 4 CPUs
[ 0.009247] SMP: Total of 4 processors activated.
[ 0.009259] CPU features: detected: 32-bit EL0 Support
[ 0.009269] CPU features: detected: 32-bit EL1 Support
[ 0.009282] CPU features: detected: CRC32 instructions
[ 0.009375] CPU: All CPU(s) started at EL2
[ 0.009396] alternatives: applying system-wide alternatives
[ 0.011402] devtmpfs: initialized
[ 0.018489] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.018564] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[ 0.026914] pinctrl core: initialized pinctrl subsystem
[ 0.027526] DMI not present or invalid.
[ 0.028305] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.030314] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.030515] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.030690] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.030776] audit: initializing netlink subsys (disabled)
[ 0.031078] audit: type=2000 audit(0.028:1): state=initialized audit_enabled=0 res=1
[ 0.031633] thermal_sys: Registered thermal governor 'fair_share'
[ 0.031643] thermal_sys: Registered thermal governor 'bang_bang'
[ 0.031659] thermal_sys: Registered thermal governor 'step_wise'
[ 0.031671] thermal_sys: Registered thermal governor 'user_space'
[ 0.031752] cpuidle: using governor menu
[ 0.032151] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.032289] ASID allocator initialised with 65536 entries
[ 0.033246] Serial: AMBA PL011 UART driver
[ 0.044590] platform d0100000.vpu: Fixed dependency cycle(s) with /soc/hdmi-tx@c883a000
[ 0.044823] platform d0100000.vpu: Fixed dependency cycle(s) with /soc/hdmi-tx@c883a000
[ 0.044896] platform c883a000.hdmi-tx: Fixed dependency cycle(s) with /soc/vpu@d0100000
[ 0.047373] platform d0100000.vpu: Fixed dependency cycle(s) with /cvbs-connector
[ 0.047478] platform cvbs-connector: Fixed dependency cycle(s) with /soc/vpu@d0100000
[ 0.047645] platform c883a000.hdmi-tx: Fixed dependency cycle(s) with /hdmi-connector
[ 0.047723] platform hdmi-connector: Fixed dependency cycle(s) with /soc/hdmi-tx@c883a000
[ 0.048609] Modules: 25904 pages in range for non-PLT usage
[ 0.048621] Modules: 517424 pages in range for PLT usage
[ 0.049590] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[ 0.049635] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[ 0.049649] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[ 0.049660] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[ 0.049673] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.049685] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[ 0.049698] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[ 0.049710] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[ 0.050757] cryptd: max_cpu_qlen set to 1000
[ 0.116394] raid6: neonx8 gen() 2145 MB/s
[ 0.184466] raid6: neonx4 gen() 2193 MB/s
[ 0.252548] raid6: neonx2 gen() 2087 MB/s
[ 0.320636] raid6: neonx1 gen() 1783 MB/s
[ 0.388713] raid6: int64x8 gen() 1366 MB/s
[ 0.456793] raid6: int64x4 gen() 1606 MB/s
[ 0.524879] raid6: int64x2 gen() 1401 MB/s
[ 0.592977] raid6: int64x1 gen() 1036 MB/s
[ 0.592989] raid6: using algorithm neonx4 gen() 2193 MB/s
[ 0.661030] raid6: .... xor() 1556 MB/s, rmw enabled
[ 0.661043] raid6: using neon recovery algorithm
[ 0.661698] ACPI: Interpreter disabled.
[ 0.662702] iommu: Default domain type: Translated
[ 0.662748] iommu: DMA domain TLB invalidation policy: strict mode
[ 0.663591] SCSI subsystem initialized
[ 0.663886] usbcore: registered new interface driver usbfs
[ 0.663932] usbcore: registered new interface driver hub
[ 0.663988] usbcore: registered new device driver usb
[ 0.664389] pps_core: LinuxPPS API ver. 1 registered
[ 0.664403] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.664430] PTP clock support registered
[ 0.664717] EDAC MC: Ver: 3.0.0
[ 0.665431] scmi_core: SCMI protocol bus registered
[ 0.666858] NetLabel: Initializing
[ 0.666895] NetLabel: domain hash size = 128
[ 0.666905] NetLabel: protocols = UNLABELED CIPSOv4 CALIPSO
[ 0.666978] NetLabel: unlabeled traffic allowed by default
[ 0.666990] mctp: management component transport protocol core
[ 0.667002] NET: Registered PF_MCTP protocol family
[ 0.667338] vgaarb: loaded
[ 0.667944] clocksource: Switched to clocksource arch_sys_counter
[ 0.668331] VFS: Disk quotas dquot_6.6.0
[ 0.668386] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.669039] AppArmor: AppArmor Filesystem Enabled
[ 0.669231] pnp: PnP ACPI: disabled
[ 0.676553] NET: Registered PF_INET protocol family
[ 0.676760] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
[ 0.677912] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 8192 bytes, linear)
[ 0.678131] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.678187] TCP established hash table entries: 8192 (order: 4, 65536 bytes, linear)
[ 0.678341] TCP bind hash table entries: 8192 (order: 6, 262144 bytes, linear)
[ 0.678571] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.678890] MPTCP token hash table entries: 1024 (order: 2, 24576 bytes, linear)
[ 0.678989] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 0.679031] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
[ 0.679256] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.679324] PCI: CLS 0 bytes, default 64
[ 0.679655] Trying to unpack rootfs image as initramfs...
[ 0.684152] kvm [1]: IPA Size Limit: 40 bits
[ 0.685347] kvm [1]: vgic interrupt IRQ9
[ 0.685423] kvm [1]: Hyp mode initialized successfully
[ 0.688098] Initialise system trusted keyrings
[ 0.688210] Key type blacklist registered
[ 0.688445] workingset: timestamp_bits=44 max_order=18 bucket_order=0
[ 0.688527] zbud: loaded
[ 0.689160] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.689832] fuse: init (API version 7.39)
[ 0.691883] integrity: Platform Keyring initialized
[ 0.724112] xor: measuring software checksum speed
[ 0.728102] 8regs : 2524 MB/sec
[ 0.732077] 32regs : 2523 MB/sec
[ 0.736355] arm64_neon : 2335 MB/sec
[ 0.736385] xor: using function: 8regs (2524 MB/sec)
[ 0.736411] Key type asymmetric registered
[ 0.736425] Asymmetric key parser 'x509' registered
[ 0.736614] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 244)
[ 0.736926] io scheduler mq-deadline registered
[ 0.736971] io scheduler kyber registered
[ 0.737060] io scheduler bfq registered
[ 0.737682] irq_meson_gpio: 110 to 8 gpio interrupt mux initialized
[ 0.750690] EINJ: ACPI disabled.
[ 0.760568] soc soc0: Amlogic Meson GXL (S905X) Revision 21:a (82:2) Detected
[ 0.763380] Serial: 8250/16550 driver, 8 ports, IRQ sharing disabled
[ 0.771317] Serial: AMBA driver
[ 0.772506] c11084c0.serial: ttyAML6 at MMIO 0xc11084c0 (irq = 14, base_baud = 1500000) is a meson_uart
[ 0.772995] serial serial0: tty port ttyAML6 registered
[ 0.774230] c81004c0.serial: ttyAML0 at MMIO 0xc81004c0 (irq = 15, base_baud = 1500000) is a meson_uart
[ 0.774301] printk: console [ttyAML0] enabled
[ 1.739205] Freeing initrd memory: 21632K
[ 1.998474] loop: module loaded
[ 2.006175] tun: Universal TUN/TAP device driver, 1.6
[ 2.007623] thunder_xcv, ver 1.0
[ 2.009026] thunder_bgx, ver 1.0
[ 2.012164] nicpf, ver 1.0
[ 2.015761] e1000e: Intel(R) PRO/1000 Network Driver
[ 2.019700] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[ 2.026670] igb: Intel(R) Gigabit Ethernet Network Driver
[ 2.030848] igb: Copyright (c) 2007-2014 Intel Corporation.
[ 2.036442] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[ 2.042562] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[ 2.048795] sky2: driver version 1.30
[ 2.053285] VFIO - User Level meta-driver version: 0.3
[ 2.060720] usbcore: registered new interface driver usb-storage
[ 2.066261] mousedev: PS/2 mouse device common for all mice
[ 2.069980] i2c_dev: i2c /dev entries driver
[ 2.078109] sdhci: Secure Digital Host Controller Interface driver
[ 2.078938] sdhci: Copyright(c) Pierre Ossman
[ 2.083836] Synopsys Designware Multimedia Card Interface Driver
[ 2.090821] sdhci-pltfm: SDHCI platform and OF driver helper
[ 2.091457] meson-gx-mmc d0072000.mmc: Got CD GPIO
[ 2.093524] meson-gx-mmc d0074000.mmc: allocated mmc-pwrseq
[ 2.105155] ledtrig-cpu: registered to indicate activity on CPUs
[ 2.112906] meson-sm: secure-monitor enabled
[ 2.116872] gxl-crypto c883e000.crypto: will run requests pump with realtime priority
[ 2.123234] gxl-crypto c883e000.crypto: will run requests pump with realtime priority
[ 2.131222] hid: raw HID events driver (C) Jiri Kosina
[ 2.135974] gpio irq setup: hwirq: 0x3A irqfirst: 0x34 irqlast: 0x3A pin[48]
[ 2.136066] usbcore: registered new interface driver usbhid
[ 2.143432] genirq: Setting trigger mode 3 for irq 20 failed (meson_gpio_irq_set_type+0x0/0x60)
[ 2.148374] usbhid: USB HID core driver
[ 2.161508] platform-mhu c883c404.mailbox: Platform MHU Mailbox registered
[ 2.169300] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[ 2.178827] NET: Registered PF_INET6 protocol family
[ 2.182401] Segment Routing with IPv6
[ 2.184386] In-situ OAM (IOAM) with IPv6
[ 2.187909] mmc0: new high speed SDHC card at address b368
[ 2.188255] NET: Registered PF_PACKET protocol family
[ 2.195141] mmcblk0: mmc0:b368 SDC 15.0 GiB
[ 2.198860] 8021q: 802.1Q VLAN Support v1.8
[ 2.206533] mmcblk0: p1 p2
[ 2.207428] Key type dns_resolver registered
[ 2.234401] registered taskstats version 1
[ 2.234750] Loading compiled-in X.509 certificates
[ 2.248234] mmc1: new HS200 MMC card at address 0001
[ 2.252487] mmcblk1: mmc1:0001 T22708 7.13 GiB
[ 2.257845] mmcblk1boot0: mmc1:0001 T22708 4.00 MiB
[ 2.261435] mmcblk1boot1: mmc1:0001 T22708 4.00 MiB
[ 2.265759] mmcblk1rpmb: mmc1:0001 T22708 4.00 MiB, chardev (241:0)
[ 2.267623] zswap: loaded using pool zstd/z3fold
[ 2.284689] Key type .fscrypt registered
[ 2.284746] Key type fscrypt-provisioning registered
[ 2.291055] Btrfs loaded, zoned=yes, fsverity=yes
[ 2.292881] Key type encrypted registered
[ 2.296606] AppArmor: AppArmor sha1 policy hashing enabled
[ 2.319775] meson-drm d0100000.vpu: Queued 2 outputs on vpu
[ 2.348035] meson-dw-hdmi c883a000.hdmi-tx: Detected HDMI TX controller v2.01a with HDCP (meson_dw_hdmi_phy)
[ 2.353046] meson-dw-hdmi c883a000.hdmi-tx: registered DesignWare HDMI I2C bus driver
[ 2.360422] meson-drm d0100000.vpu: bound c883a000.hdmi-tx (ops 0xffff80008110a290)
[ 2.368601] [drm] Initialized meson 1.0.0 20161109 for d0100000.vpu on minor 0
[ 3.012446] Console: switching to colour frame buffer device 160x45
[ 3.046669] meson-drm d0100000.vpu: [drm] fb0: mesondrmfb frame buffer device
[ 3.056943] scpi_protocol scpi: SCP Protocol legacy pre-1.0 firmware
[ 3.057606] meson-gx-mmc d0070000.mmc: allocated mmc-pwrseq
[ 3.071375] dwc3-meson-g12a d0078080.usb: USB2 ports: 2
[ 3.071701] dwc3-meson-g12a d0078080.usb: USB3 ports: 0
[ 3.114943] mmc2: new high speed SDIO card at address 0001
[ 3.593479] dwc2 c9100000.usb: supply vusb_d not found, using dummy regulator
[ 3.595571] dwc2 c9100000.usb: supply vusb_a not found, using dummy regulator
[ 3.604268] dwc2 c9100000.usb: EPs: 7, dedicated fifos, 712 entries in SPRAM
[ 3.611804] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[ 3.614923] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
[ 3.622631] xhci-hcd xhci-hcd.1.auto: USB3 root hub has no ports
[ 3.628685] xhci-hcd xhci-hcd.1.auto: hcc params 0x0228f664 hci version 0x100 quirks 0x0000008002000010
[ 3.637759] xhci-hcd xhci-hcd.1.auto: irq 32, io mem 0xc9000000
[ 3.643950] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.06
[ 3.651811] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 3.659266] usb usb1: Product: xHCI Host Controller
[ 3.663792] usb usb1: Manufacturer: Linux 6.6.53-current-meson64 xhci-hcd
[ 3.670499] usb usb1: SerialNumber: xhci-hcd.1.auto
[ 3.676191] hub 1-0:1.0: USB hub found
[ 3.684178] hub 1-0:1.0: 2 ports detected
[ 3.694794] clk: Disabling unused clocks
[ 3.704673] Freeing unused kernel memory: 3776K
[ 3.712598] Run /init as init process
[ 3.952047] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[ 4.109784] usb 1-1: New USB device found, idVendor=05e3, idProduct=0608, bcdDevice=85.36
[ 4.122655] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[ 4.133996] usb 1-1: Product: USB2.0 Hub
[ 4.188471] hub 1-1:1.0: USB hub found
[ 4.197352] hub 1-1:1.0: 4 ports detected
[ 4.378076] meson-vrtc c81000a8.rtc: registered as rtc0
[ 4.386658] meson-vrtc c81000a8.rtc: setting system clock to 1970-01-01T00:00:04 UTC (4)
[ 4.408800] meson8b-dwmac c9410000.ethernet: IRQ eth_wake_irq not found
[ 4.418343] meson8b-dwmac c9410000.ethernet: IRQ eth_lpi not found
[ 4.428065] meson8b-dwmac c9410000.ethernet: PTP uses main clock
[ 4.430124] random: crng init done
[ 4.437457] meson8b-dwmac c9410000.ethernet: User ID: 0x11, Synopsys ID: 0x37
[ 4.463473] meson8b-dwmac c9410000.ethernet: DWMAC1000
[ 4.471552] meson8b-dwmac c9410000.ethernet: DMA HW capability register supported
[ 4.481659] meson8b-dwmac c9410000.ethernet: RX Checksum Offload Engine supported
[ 4.492058] meson8b-dwmac c9410000.ethernet: COE Type 2
[ 4.496064] usb 1-1.2: new low-speed USB device number 3 using xhci-hcd
[ 4.499990] meson8b-dwmac c9410000.ethernet: TX Checksum insertion supported
[ 4.500002] meson8b-dwmac c9410000.ethernet: Wake-Up On Lan supported
[ 4.500241] meson8b-dwmac c9410000.ethernet: Normal descriptors
[ 4.546035] meson8b-dwmac c9410000.ethernet: Ring mode enabled
[ 4.553913] meson8b-dwmac c9410000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[ 4.612079] usb 1-1.2: New USB device found, idVendor=0e8f, idProduct=2517, bcdDevice= 1.00
[ 4.622732] usb 1-1.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 4.711090] input: HID 0e8f:2517 as /devices/platform/soc/d0078080.usb/c9000000.usb/xhci-hcd.1.auto/usb1/1-1/1-1.2/1-1.2:1.0/0003:0E8F:2517.0001/input/input0
[ 4.872910] hid-generic 0003:0E8F:2517.0001: input,hidraw0: USB HID v1.10 Keyboard [HID 0e8f:2517] on usb-xhci-hcd.1.auto-1.2/input0
[ 4.889832] input: HID 0e8f:2517 Consumer Control as /devices/platform/soc/d0078080.usb/c9000000.usb/xhci-hcd.1.auto/usb1/1-1/1-1.2/1-1.2:1.1/0003:0E8F:2517.0002/input/input1
[ 4.960497] input: HID 0e8f:2517 as /devices/platform/soc/d0078080.usb/c9000000.usb/xhci-hcd.1.auto/usb1/1-1/1-1.2/1-1.2:1.1/0003:0E8F:2517.0002/input/input2
[ 4.969600] input: HID 0e8f:2517 Mouse as /devices/platform/soc/d0078080.usb/c9000000.usb/xhci-hcd.1.auto/usb1/1-1/1-1.2/1-1.2:1.1/0003:0E8F:2517.0002/input/input3
[ 4.984451] hid-generic 0003:0E8F:2517.0002: input,hidraw1: USB HID v1.10 Mouse [HID 0e8f:2517] on usb-xhci-hcd.1.auto-1.2/input1
[ 7.325871] EXT4-fs (mmcblk0p2): mounted filesystem bb7643a4-cf60-4444-9fc3-c565842689c1 r/w with writeback data mode. Quota mode: none.
[ 8.608652] systemd[1]: System time before build time, advancing clock.
[ 8.646756] systemd[1]: Inserted module 'autofs4'
[ 8.747816] systemd[1]: systemd 255.4-1ubuntu8.4 running in system mode (+PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified)
[ 8.774826] systemd[1]: Detected architecture arm64.
[ 8.788407] systemd[1]: Hostname set to <aml-s9xx-box>.
[ 8.798036] systemd[1]: Initializing machine ID from random generator.
[ 13.117643] systemd[1]: Configuration file /run/systemd/system/netplan-ovs-cleanup.service is marked world-inaccessible. This has no effect as configuration data is accessible via APIs without restrictions. Proceeding anyway.
[ 13.813360] systemd[1]: Queued start job for default target graphical.target.
[ 13.879198] systemd[1]: Created slice system-modprobe.slice - Slice /system/modprobe.
[ 13.885686] systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty.
[ 13.893115] systemd[1]: Created slice system-systemd\x2dfsck.slice - Slice /system/systemd-fsck.
[ 13.900979] systemd[1]: Created slice user.slice - User and Session Slice.
[ 13.906566] systemd[1]: Started systemd-ask-password-wall.path - Forward Password Requests to Wall Directory Watch.
[ 13.917664] systemd[1]: Set up automount proc-sys-fs-binfmt_misc.automount - Arbitrary Executable File Formats File System Automount Point.
[ 13.928909] systemd[1]: Expecting device dev-disk-by\x2duuid-B1CE\x2d0046.device - /dev/disk/by-uuid/B1CE-0046...
[ 13.939010] systemd[1]: Expecting device dev-ttyAML0.device - /dev/ttyAML0...
[ 13.946174] systemd[1]: Reached target integritysetup.target - Local Integrity Protected Volumes.
[ 13.955024] systemd[1]: Reached target nss-user-lookup.target - User and Group Name Lookups.
[ 13.963405] systemd[1]: Reached target slices.target - Slice Units.
[ 13.969502] systemd[1]: Reached target snapd.mounts-pre.target - Mounting snaps.
[ 13.976827] systemd[1]: Reached target snapd.mounts.target - Mounted snaps.
[ 13.983770] systemd[1]: Reached target swap.target - Swaps.
[ 13.989227] systemd[1]: Reached target time-set.target - System Time Set.
[ 13.996178] systemd[1]: Reached target veritysetup.target - Local Verity Protected Volumes.
[ 14.065501] systemd[1]: Listening on rpcbind.socket - RPCbind Server Activation Socket.
[ 14.069429] systemd[1]: Listening on syslog.socket - Syslog Socket.
[ 14.075405] systemd[1]: Listening on systemd-fsckd.socket - fsck to fsckd communication Socket.
[ 14.083705] systemd[1]: Listening on systemd-initctl.socket - initctl Compatibility Named Pipe.
[ 14.092756] systemd[1]: Listening on systemd-journald-dev-log.socket - Journal Socket (/dev/log).
[ 14.101587] systemd[1]: Listening on systemd-journald.socket - Journal Socket.
[ 14.107987] systemd[1]: systemd-pcrextend.socket - TPM2 PCR Extension (Varlink) was skipped because of an unmet condition check (ConditionSecurity=measured-uki).
[ 14.127390] systemd[1]: Listening on systemd-udevd-control.socket - udev Control Socket.
[ 14.131110] systemd[1]: Listening on systemd-udevd-kernel.socket - udev Kernel Socket.
[ 14.176427] systemd[1]: Mounting dev-hugepages.mount - Huge Pages File System...
[ 14.185060] systemd[1]: Mounting dev-mqueue.mount - POSIX Message Queue File System...
[ 14.194982] systemd[1]: Mounting sys-kernel-debug.mount - Kernel Debug File System...
[ 14.198296] systemd[1]: sys-kernel-tracing.mount - Kernel Trace File System was skipped because of an unmet condition check (ConditionPathExists=/sys/kernel/tracing).
[ 14.214047] systemd[1]: auth-rpcgss-module.service - Kernel Module supporting RPCSEC_GSS was skipped because of an unmet condition check (ConditionPathExists=/etc/krb5.keytab).
[ 14.238221] systemd[1]: Starting fake-hwclock-load.service - Restore the current clock...
[ 14.249699] systemd[1]: Starting keyboard-setup.service - Set the console keyboard layout...
[ 14.262157] systemd[1]: Starting kmod-static-nodes.service - Create List of Static Device Nodes...
[ 14.274003] (-hwclock)[1174]: fake-hwclock-load.service: Referenced but unset environment variable evaluates to an empty string: FORCE
[ 14.278165] systemd[1]: Starting modprobe@configfs.service - Load Kernel Module configfs...
[ 14.305340] systemd[1]: Starting modprobe@dm_mod.service - Load Kernel Module dm_mod...
[ 14.326511] systemd[1]: Starting modprobe@drm.service - Load Kernel Module drm...
[ 14.345426] systemd[1]: Starting modprobe@efi_pstore.service - Load Kernel Module efi_pstore...
[ 14.365374] systemd[1]: Starting modprobe@fuse.service - Load Kernel Module fuse...
[ 14.385715] systemd[1]: Starting modprobe@loop.service - Load Kernel Module loop...
[ 14.391807] systemd[1]: systemd-fsck-root.service - File System Check on Root Device was skipped because of an unmet condition check (ConditionPathExists=!/run/initramfs/fsck-root).
[ 14.408189] device-mapper: uevent: version 1.0.3
[ 14.409094] device-mapper: ioctl: 4.48.0-ioctl (2023-03-01) initialised: dm-devel@redhat.com
[ 14.421548] systemd[1]: Starting systemd-modules-load.service - Load Kernel Modules...
[ 14.425225] systemd[1]: systemd-pcrmachine.service - TPM2 PCR Machine ID Measurement was skipped because of an unmet condition check (ConditionSecurity=measured-uki).
[ 14.448657] systemd[1]: Starting systemd-remount-fs.service - Remount Root and Kernel File Systems...
[ 14.453238] systemd[1]: systemd-tpm2-setup-early.service - TPM2 SRK Setup (Early) was skipped because of an unmet condition check (ConditionSecurity=measured-uki).
[ 14.474641] systemd[1]: Starting systemd-udev-trigger.service - Coldplug All udev Devices...
[ 14.493280] systemd[1]: Mounted dev-hugepages.mount - Huge Pages File System.
[ 14.496550] systemd[1]: Mounted dev-mqueue.mount - POSIX Message Queue File System.
[ 14.505204] systemd[1]: Mounted sys-kernel-debug.mount - Kernel Debug File System.
[ 14.513869] systemd[1]: fake-hwclock-load.service: Deactivated successfully.
[ 14.518816] systemd[1]: Finished fake-hwclock-load.service - Restore the current clock.
[ 14.530682] systemd[1]: Finished kmod-static-nodes.service - Create List of Static Device Nodes.
[ 14.541007] systemd[1]: modprobe@configfs.service: Deactivated successfully.
[ 14.543620] systemd[1]: Finished modprobe@configfs.service - Load Kernel Module configfs.
[ 14.554554] systemd[1]: modprobe@dm_mod.service: Deactivated successfully.
[ 14.558823] systemd[1]: Finished modprobe@dm_mod.service - Load Kernel Module dm_mod.
[ 14.567334] systemd[1]: modprobe@drm.service: Deactivated successfully.
[ 14.573773] systemd[1]: Finished modprobe@drm.service - Load Kernel Module drm.
[ 14.581623] systemd[1]: modprobe@efi_pstore.service: Deactivated successfully.
[ 14.587319] systemd[1]: Finished modprobe@efi_pstore.service - Load Kernel Module efi_pstore.
Welcome to Armbian_community!
Documentation: https://docs.armbian.com | Community support: https://community.armbian.com/
IP address: Network connection timeout!
Create root password: