Full Code of ophub/amlogic-s9xxx-armbian for AI

main 026e1fe6fa6b cached
595 files
1.4 MB
477.8k tokens
11 symbols
1 requests
Download .txt
Showing preview only (1,545K chars total). Download the full file or copy to clipboard to get everything.
Repository: ophub/amlogic-s9xxx-armbian
Branch: main
Commit: 026e1fe6fa6b
Files: 595
Total size: 1.4 MB

Directory structure:
gitextract_cfuts_n6/

├── .github/
│   ├── .gitkeep
│   ├── ISSUE_TEMPLATE/
│   │   └── bug-report.md
│   └── workflows/
│       ├── build-armbian-arm64-docker-image.yml
│       ├── build-armbian-arm64-server-image.yml
│       ├── build-armbian-using-official-image.yml
│       ├── build-armbian-using-releases-files.yml
│       ├── build-armbian-x86-server-image.yml
│       ├── compile-kernel.yml
│       └── delete-older-releases-workflows.yml
├── .gitignore
├── CONTRIBUTORS.md
├── LICENSE
├── README.cn.md
├── README.ja.md
├── README.md
├── action.yml
├── build-armbian/
│   ├── README.cn.md
│   ├── README.ja.md
│   ├── README.md
│   └── armbian-files/
│       ├── common-files/
│       │   ├── etc/
│       │   │   ├── balance_irq
│       │   │   ├── custom_service/
│       │   │   │   └── start_service.sh
│       │   │   ├── default/
│       │   │   │   └── cpufrequtils
│       │   │   ├── fstab
│       │   │   ├── model_database.conf
│       │   │   ├── modprobe.d/
│       │   │   │   └── brcmfmac.conf
│       │   │   ├── modules-load.d/
│       │   │   │   └── ophub-load-list.conf
│       │   │   └── sysctl.conf
│       │   └── usr/
│       │       ├── bin/
│       │       │   └── uuidgen
│       │       ├── sbin/
│       │       │   ├── armbian-apt
│       │       │   ├── armbian-ddbr
│       │       │   ├── armbian-docker
│       │       │   ├── armbian-fix
│       │       │   ├── armbian-kernel
│       │       │   ├── armbian-software
│       │       │   ├── armbian-swap
│       │       │   ├── armbian-sync
│       │       │   ├── armbian-tf
│       │       │   ├── armbian-update
│       │       │   └── balethirq.pl
│       │       └── share/
│       │           ├── alsa/
│       │           │   └── cards/
│       │           │       └── axg-sound-card.conf
│       │           └── ophub/
│       │               └── armbian-software/
│       │                   ├── 201-desktop-chinese-fonts.sh
│       │                   ├── 301-frps.sh
│       │                   ├── 302-frpc.sh
│       │                   ├── command-desktop.sh
│       │                   ├── command-docker.sh
│       │                   ├── command-service.sh
│       │                   ├── software-command.sh
│       │                   └── software-list.conf
│       ├── different-files/
│       │   ├── a311d-oes/
│       │   │   ├── bootfs/
│       │   │   │   ├── extlinux/
│       │   │   │   │   └── extlinux.conf.bak
│       │   │   │   └── uEnv.txt
│       │   │   └── rootfs/
│       │   │       ├── etc/
│       │   │       │   ├── armbian-board-release.conf
│       │   │       │   └── fw_env.config
│       │   │       └── usr/
│       │   │           └── bin/
│       │   │               └── oes_sata_leds.sh
│       │   ├── alark35-3500/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── anas3035/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── bdkj-bd-one/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── bdy-g18-pro/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── beikeyun/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── boca-tcn100/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── cd1000/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── chainedbox/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── usr/
│       │   │           └── bin/
│       │   │               └── pwm-fan.pl
│       │   ├── cm3588-nas/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── dc-a588/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── e20c/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── armbian_first_run.txt.template
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── e25/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── firefly-rk3399/
│       │   │   └── bootfs/
│       │   │       ├── boot.cmd
│       │   │       ├── boot.scr
│       │   │       └── extlinux/
│       │   │           └── extlinux.conf.bak
│       │   ├── gzpeite-p01/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       ├── boot.scr
│       │   │       └── extlinux/
│       │   │           └── extlinux.conf.bak
│       │   ├── h28k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h66k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h68k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h69k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h88k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h88k-v3/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h96-max-m2/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── hk1-rbox-k8s/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── ht2/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── hugsun-zm/
│       │   │   └── rootfs/
│       │   │       └── root/
│       │   │           └── led-control/
│       │   │               ├── aw2028
│       │   │               └── aw2028.c
│       │   ├── ipc-r/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── jp-tvbox/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── lckfb-tspi/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── lz-d3588/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── mrkaio-m68s/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── nanopc-t6/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── nanopi-m5/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── nsy-g16-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── nsy-g68-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── orangepi-3b/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── orangepi-5-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── orangepi-5b/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── panther-x2/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── photonicat/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── r66s/
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── r68s/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── rock-5-itx/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── rock5b/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── rock5c/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── ruisen-box/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── s922x-oes-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── extlinux/
│       │   │   │   │   └── extlinux.conf.bak
│       │   │   │   └── uEnv.txt
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── armbian-board-release.conf
│       │   │           └── fw_env.config
│       │   ├── smart-am60/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── station-m2/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── swan1-w28/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── vplus/
│       │   │   └── rootfs/
│       │   │       └── usr/
│       │   │           └── bin/
│       │   │               └── rgb-vplus
│       │   ├── wocyber-a3/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── wxy-oect/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── armbian-board-release.conf
│       │   │           └── fw_env.config
│       │   └── wxy-oect-mod/
│       │       └── bootfs/
│       │           ├── armbianEnv.txt
│       │           ├── boot.cmd
│       │           ├── boot.scr
│       │           └── extlinux/
│       │               └── extlinux.conf.bak
│       └── platform-files/
│           ├── allwinner/
│           │   ├── bootfs/
│           │   │   ├── armbianEnv.txt
│           │   │   ├── armbian_first_run.txt.template
│           │   │   ├── boot.cmd
│           │   │   ├── boot.scr
│           │   │   ├── dtb/
│           │   │   │   └── allwinner/
│           │   │   │       ├── sun50i-h6-tanix-tx6.dtb
│           │   │   │       ├── sun50i-h6-tqc-a01.dtb
│           │   │   │       ├── sun50i-h6-vplus-cloud.dtb
│           │   │   │       ├── sun50i-h618-devboard.dtb
│           │   │   │       └── sun50i-h618-orangepi-zero3.dtb
│           │   │   └── extlinux/
│           │   │       └── extlinux.conf.bak
│           │   └── rootfs/
│           │       └── usr/
│           │           └── sbin/
│           │               └── armbian-install
│           ├── amlogic/
│           │   ├── bootfs/
│           │   │   ├── aml_autoscript
│           │   │   ├── aml_autoscript.cmd
│           │   │   ├── armbian_first_run.txt.template
│           │   │   ├── boot-emmc.cmd
│           │   │   ├── boot-emmc.ini
│           │   │   ├── boot-emmc.scr
│           │   │   ├── boot.cmd
│           │   │   ├── boot.ini
│           │   │   ├── boot.scr
│           │   │   ├── dtb/
│           │   │   │   └── amlogic/
│           │   │   │       ├── meson-a1-ad401.dtb
│           │   │   │       ├── meson-axg-jethome-jethub-j100.dtb
│           │   │   │       ├── meson-axg-jethome-jethub-j110-rev-2.dtb
│           │   │   │       ├── meson-axg-jethome-jethub-j110-rev-3.dtb
│           │   │   │       ├── meson-axg-s400.dtb
│           │   │   │       ├── meson-g12a-hg680-fj.dtb
│           │   │   │       ├── meson-g12a-radxa-zero.dtb
│           │   │   │       ├── meson-g12a-s905l3a-cm311.dtb
│           │   │   │       ├── meson-g12a-s905l3a-e900v22c.dtb
│           │   │   │       ├── meson-g12a-s905l3a-m401a.dtb
│           │   │   │       ├── meson-g12a-sei510.dtb
│           │   │   │       ├── meson-g12a-tanix-tx5max.dtb
│           │   │   │       ├── meson-g12a-u200.dtb
│           │   │   │       ├── meson-g12a-x96-max-rmii.dtb
│           │   │   │       ├── meson-g12a-x96-max.dtb
│           │   │   │       ├── meson-g12b-a311d-khadas-vim3.dtb
│           │   │   │       ├── meson-g12b-a311d-oes-00050000.dtb
│           │   │   │       ├── meson-g12b-a311d-oes-a.dtb
│           │   │   │       ├── meson-g12b-a311d-oes-b.dtb
│           │   │   │       ├── meson-g12b-a311d-oes.dtb
│           │   │   │       ├── meson-g12b-a311d-onethingcloud-oes-rgmii-rx-delay-3000ps.dtb
│           │   │   │       ├── meson-g12b-a311d-onethingcloud-oes.dtb
│           │   │   │       ├── meson-g12b-ali-ct2000.dtb
│           │   │   │       ├── meson-g12b-dreambox-one.dtb
│           │   │   │       ├── meson-g12b-dreambox-two.dtb
│           │   │   │       ├── meson-g12b-gsking-x.dtb
│           │   │   │       ├── meson-g12b-gtking-oc.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-h-oc.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-h.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-rev_a-oc.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-rev_a.dtb
│           │   │   │       ├── meson-g12b-gtking-pro.dtb
│           │   │   │       ├── meson-g12b-gtking.dtb
│           │   │   │       ├── meson-g12b-odroid-n2-plus.dtb
│           │   │   │       ├── meson-g12b-odroid-n2.dtb
│           │   │   │       ├── meson-g12b-oes.dtb
│           │   │   │       ├── meson-g12b-radxa-zero2.dtb
│           │   │   │       ├── meson-g12b-s922x-khadas-vim3.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-00050000.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-a.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-b.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-v2.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6-plus.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6b-plus-oc.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6b-plus.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6b1.dtb
│           │   │   │       ├── meson-gxbb-beelink-mini-mx.dtb
│           │   │   │       ├── meson-gxbb-beelink-mini-mxiii.dtb
│           │   │   │       ├── meson-gxbb-kii-pro.dtb
│           │   │   │       ├── meson-gxbb-mecool-ki-plus.dtb
│           │   │   │       ├── meson-gxbb-mecool-kii-pro.dtb
│           │   │   │       ├── meson-gxbb-minix-neo-u1.dtb
│           │   │   │       ├── meson-gxbb-mxq-pro-plus.dtb
│           │   │   │       ├── meson-gxbb-nanopi-k2.dtb
│           │   │   │       ├── meson-gxbb-nexbox-a95x.dtb
│           │   │   │       ├── meson-gxbb-odroidc2.dtb
│           │   │   │       ├── meson-gxbb-p200.dtb
│           │   │   │       ├── meson-gxbb-p201.dtb
│           │   │   │       ├── meson-gxbb-vega-s95-meta.dtb
│           │   │   │       ├── meson-gxbb-vega-s95-pro.dtb
│           │   │   │       ├── meson-gxbb-vega-s95-telos.dtb
│           │   │   │       ├── meson-gxbb-wetek-hub.dtb
│           │   │   │       ├── meson-gxbb-wetek-play2.dtb
│           │   │   │       ├── meson-gxl-s805x-libretech-ac.dtb
│           │   │   │       ├── meson-gxl-s805x-p241.dtb
│           │   │   │       ├── meson-gxl-s905d-libretech-pc.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-ki-plus.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-ki-pro.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-kii-pro.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-m8s-plus.dtb
│           │   │   │       ├── meson-gxl-s905d-p230.dtb
│           │   │   │       ├── meson-gxl-s905d-p231.dtb
│           │   │   │       ├── meson-gxl-s905d-phicomm-n1-thresh.dtb
│           │   │   │       ├── meson-gxl-s905d-phicomm-n1.dtb
│           │   │   │       ├── meson-gxl-s905d-sml5442tw.dtb
│           │   │   │       ├── meson-gxl-s905d-vero4k-plus.dtb
│           │   │   │       ├── meson-gxl-s905l-venz-v10.dtb
│           │   │   │       ├── meson-gxl-s905l2-ipbs9505.dtb
│           │   │   │       ├── meson-gxl-s905l2-x7-5g.dtb
│           │   │   │       ├── meson-gxl-s905l3b-e900v22e.dtb
│           │   │   │       ├── meson-gxl-s905l3b-m302a.dtb
│           │   │   │       ├── meson-gxl-s905w-jethome-jethub-j80.dtb
│           │   │   │       ├── meson-gxl-s905w-p281.dtb
│           │   │   │       ├── meson-gxl-s905w-tx3-mini.dtb
│           │   │   │       ├── meson-gxl-s905w-x96-mini.dtb
│           │   │   │       ├── meson-gxl-s905w-x96w.dtb
│           │   │   │       ├── meson-gxl-s905x-b860h.dtb
│           │   │   │       ├── meson-gxl-s905x-hwacom-amazetv.dtb
│           │   │   │       ├── meson-gxl-s905x-khadas-vim.dtb
│           │   │   │       ├── meson-gxl-s905x-libretech-cc-v2.dtb
│           │   │   │       ├── meson-gxl-s905x-libretech-cc.dtb
│           │   │   │       ├── meson-gxl-s905x-nexbox-a95x.dtb
│           │   │   │       ├── meson-gxl-s905x-p212.dtb
│           │   │   │       ├── meson-gxl-s905x-tbee.dtb
│           │   │   │       ├── meson-gxl-s905x-tx9.dtb
│           │   │   │       ├── meson-gxl-s905x-vero4k.dtb
│           │   │   │       ├── meson-gxm-beelink-gt1.dtb
│           │   │   │       ├── meson-gxm-fake-octopus-planet.dtb
│           │   │   │       ├── meson-gxm-gt1-ultimate.dtb
│           │   │   │       ├── meson-gxm-gt1.dtb
│           │   │   │       ├── meson-gxm-khadas-vim2.dtb
│           │   │   │       ├── meson-gxm-mecool-kiii-pro.dtb
│           │   │   │       ├── meson-gxm-minix-neo-u9h.dtb
│           │   │   │       ├── meson-gxm-nexbox-a1.dtb
│           │   │   │       ├── meson-gxm-nexbox-a2.dtb
│           │   │   │       ├── meson-gxm-octopus-planet.dtb
│           │   │   │       ├── meson-gxm-phicomm-t1.dtb
│           │   │   │       ├── meson-gxm-q200-mod.dtb
│           │   │   │       ├── meson-gxm-q200.dtb
│           │   │   │       ├── meson-gxm-q201.dtb
│           │   │   │       ├── meson-gxm-rbox-pro.dtb
│           │   │   │       ├── meson-gxm-s912-libretech-pc.dtb
│           │   │   │       ├── meson-gxm-t95z-plus.dtb
│           │   │   │       ├── meson-gxm-tx8-max.dtb
│           │   │   │       ├── meson-gxm-tx9-pro.dtb
│           │   │   │       ├── meson-gxm-vega-s96.dtb
│           │   │   │       ├── meson-gxm-wetek-core2.dtb
│           │   │   │       ├── meson-gxm-x92.dtb
│           │   │   │       ├── meson-s4-s805x2-aq222.dtb
│           │   │   │       ├── meson-sm1-a95xf3-air-gbit.dtb
│           │   │   │       ├── meson-sm1-a95xf3-air.dtb
│           │   │   │       ├── meson-sm1-bananapi-m5.dtb
│           │   │   │       ├── meson-sm1-h96-max-x3-oc.dtb
│           │   │   │       ├── meson-sm1-h96-max-x3.dtb
│           │   │   │       ├── meson-sm1-h96-max.dtb
│           │   │   │       ├── meson-sm1-hk1box-vontar-x3-oc.dtb
│           │   │   │       ├── meson-sm1-hk1box-vontar-x3.dtb
│           │   │   │       ├── meson-sm1-khadas-vim3l.dtb
│           │   │   │       ├── meson-sm1-odroid-c4.dtb
│           │   │   │       ├── meson-sm1-odroid-hc4.dtb
│           │   │   │       ├── meson-sm1-sei610.dtb
│           │   │   │       ├── meson-sm1-skyworth-lb2004-a4091.dtb
│           │   │   │       ├── meson-sm1-tox1.dtb
│           │   │   │       ├── meson-sm1-tx3-bz-oc.dtb
│           │   │   │       ├── meson-sm1-tx3-bz.dtb
│           │   │   │       ├── meson-sm1-tx3-qz-oc.dtb
│           │   │   │       ├── meson-sm1-tx3-qz.dtb
│           │   │   │       ├── meson-sm1-ugoos-x3-oc.dtb
│           │   │   │       ├── meson-sm1-ugoos-x3.dtb
│           │   │   │       ├── meson-sm1-x88-pro-x3-4g.dtb
│           │   │   │       ├── meson-sm1-x88-pro-x3.dtb
│           │   │   │       ├── meson-sm1-x96-air-gbit.dtb
│           │   │   │       ├── meson-sm1-x96-air.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-100m.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-2101.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-a100.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-ip1001m-2.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-ip1001m.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-oc.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-q1.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-q2.dtb
│           │   │   │       └── meson-sm1-x96-max-plus.dtb
│           │   │   ├── emmc_autoscript
│           │   │   ├── emmc_autoscript.cmd
│           │   │   ├── extlinux/
│           │   │   │   └── extlinux.conf.bak
│           │   │   ├── s905_autoscript
│           │   │   ├── s905_autoscript.cmd
│           │   │   ├── u-boot.sd
│           │   │   ├── u-boot.usb
│           │   │   └── uEnv.txt
│           │   └── rootfs/
│           │       └── usr/
│           │           ├── bin/
│           │           │   └── ampart
│           │           ├── sbin/
│           │           │   ├── armbian-install
│           │           │   └── armbian-openvfd
│           │           └── share/
│           │               └── openvfd/
│           │                   ├── conf/
│           │                   │   ├── h96max-x3.conf
│           │                   │   ├── hk1-x3.conf
│           │                   │   ├── hk1box.conf
│           │                   │   ├── t95.conf
│           │                   │   ├── t95z-plus.conf
│           │                   │   ├── tx3-mini.conf
│           │                   │   ├── tx3.conf
│           │                   │   ├── tx9-pro.conf
│           │                   │   ├── whale.conf
│           │                   │   ├── x88pro-x3.conf
│           │                   │   ├── x92.conf
│           │                   │   ├── x96air.conf
│           │                   │   ├── x96max.conf
│           │                   │   └── x96maxplus.conf
│           │                   └── vfdservice
│           └── rockchip/
│               └── bootfs/
│                   ├── armbianEnv.txt
│                   ├── armbian_first_run.txt.template
│                   ├── boot.cmd
│                   ├── boot.scr
│                   ├── dtb/
│                   │   └── rockchip/
│                   │       ├── rk3318-box.dtb
│                   │       ├── rk3328-beikeyun-1200mhz.dtb
│                   │       ├── rk3328-beikeyun-1296mhz.dtb
│                   │       ├── rk3328-beikeyun-1392mhz.dtb
│                   │       ├── rk3328-beikeyun-1512mhz.dtb
│                   │       ├── rk3328-box-trn9.dtb
│                   │       ├── rk3328-chainedbox.dtb
│                   │       ├── rk3328-l1pro-1296mhz.dtb
│                   │       ├── rk3328-l1pro-1392mhz.dtb
│                   │       ├── rk3328-l1pro-1512mhz.dtb
│                   │       ├── rk3328-nanopi-r2-rev00.dtb
│                   │       ├── rk3328-nanopi-r2-rev06.dtb
│                   │       ├── rk3328-nanopi-r2-rev20.dtb
│                   │       ├── rk3328-nanopi-r2s.dtb
│                   │       ├── rk3328-roc-cc.dtb
│                   │       ├── rk3399-aio-3399b.dtb
│                   │       ├── rk3399-aio-3399c-ai.dtb
│                   │       ├── rk3399-aio-3399c.dtb
│                   │       ├── rk3399-am40.dtb
│                   │       ├── rk3399-bozz-sw799.dtb
│                   │       ├── rk3399-crrc.dtb
│                   │       ├── rk3399-dg3399.dtb
│                   │       ├── rk3399-dlfr100.dtb
│                   │       ├── rk3399-eaidk-610-v2.dtb
│                   │       ├── rk3399-eaidk-610.dtb
│                   │       ├── rk3399-emb3531-old.dtb
│                   │       ├── rk3399-emb3531.dtb
│                   │       ├── rk3399-fine3399.dtb
│                   │       ├── rk3399-firefly-150.dtb
│                   │       ├── rk3399-firefly-core-3399-jd4.dtb
│                   │       ├── rk3399-firefly.dtb
│                   │       ├── rk3399-fmx1-pro-b.dtb
│                   │       ├── rk3399-fmx1-pro.dtb
│                   │       ├── rk3399-gea-6319.dtb
│                   │       ├── rk3399-gea6319.dtb
│                   │       ├── rk3399-hs530r.dtb
│                   │       ├── rk3399-hugsun-x99.dtb
│                   │       ├── rk3399-hugsun-zm.dtb
│                   │       ├── rk3399-king3399.dtb
│                   │       ├── rk3399-kylin3399.dtb
│                   │       ├── rk3399-leez-p710.dtb
│                   │       ├── rk3399-lx-r3s.dtb
│                   │       ├── rk3399-nanopc-t4.dtb
│                   │       ├── rk3399-nanopi-r4s.dtb
│                   │       ├── rk3399-smart-am40-oc.dtb
│                   │       ├── rk3399-smart-am40.dtb
│                   │       ├── rk3399-sv-33a6x-vpu.dtb
│                   │       ├── rk3399-sv-33a6x.dtb
│                   │       ├── rk3399-taram.dtb
│                   │       ├── rk3399-tb-ls3399.dtb
│                   │       ├── rk3399-tn3399-v3.dtb
│                   │       ├── rk3399-tn3399.dtb
│                   │       ├── rk3399-tpm312.dtb
│                   │       ├── rk3399-tvi3315a.dtb
│                   │       ├── rk3399-xiaobao.dtb
│                   │       ├── rk3399-yskj.dtb
│                   │       ├── rk3399-zcube1-max.dtb
│                   │       ├── rk3399-zk-r39a.dtb
│                   │       ├── rk3399-zysj.dtb
│                   │       ├── rk3528-cd1000.dtb
│                   │       ├── rk3528-hk1-rbox-k8s.dtb
│                   │       ├── rk3528-hlink-h28k.dtb
│                   │       ├── rk3528-ht2.dtb
│                   │       ├── rk3528-mangopi-m28k.dtb
│                   │       ├── rk3528-radxa-e20c.dtb
│                   │       ├── rk3566-jp-tvbox.dtb
│                   │       ├── rk3566-nanopi-r3s-lts.dtb
│                   │       ├── rk3566-nanopi-r3s.dtb
│                   │       ├── rk3566-onethingcloud-oec.dtb
│                   │       ├── rk3566-orangepi-3b-v1.1.dtb
│                   │       ├── rk3566-orangepi-3b-v2.1.dtb
│                   │       ├── rk3566-orangepi-3b.dtb
│                   │       ├── rk3566-panther-x2.dtb
│                   │       ├── rk3566-radxa-cm3-rpi-cm4-io.dtb
│                   │       ├── rk3566-roc-pc.dtb
│                   │       ├── rk3566-taishanpi-v10.dtb
│                   │       ├── rk3566-wxy-oec-turbo-4g.dtb
│                   │       ├── rk3568-alark35-3500.dtb
│                   │       ├── rk3568-bd-one.dtb
│                   │       ├── rk3568-bdy-g18-pro.dtb
│                   │       ├── rk3568-dg-tn3568.dtb
│                   │       ├── rk3568-fastrhino-r66s.dtb
│                   │       ├── rk3568-fastrhino-r68s.dtb
│                   │       ├── rk3568-gzpeite.dtb
│                   │       ├── rk3568-hinlink-h66k.dtb
│                   │       ├── rk3568-hinlink-h68k.dtb
│                   │       ├── rk3568-hlink-h66k.dtb
│                   │       ├── rk3568-hlink-h68k.dtb
│                   │       ├── rk3568-hlink-h69k.dtb
│                   │       ├── rk3568-lyt-t68m.dtb
│                   │       ├── rk3568-lz-d3568-v3.dtb
│                   │       ├── rk3568-lz-k3568.dtb
│                   │       ├── rk3568-mmbox-anas3035.dtb
│                   │       ├── rk3568-mrkaio-m68s.dtb
│                   │       ├── rk3568-nanopi-r5c.dtb
│                   │       ├── rk3568-nanopi-r5s.dtb
│                   │       ├── rk3568-nsy-g16-plus.dtb
│                   │       ├── rk3568-nsy-g68-plus.dtb
│                   │       ├── rk3568-photonicat.dtb
│                   │       ├── rk3568-radxa-e25.dtb
│                   │       ├── rk3568-roc-pc.dtb
│                   │       ├── rk3568-ruisen-box.dtb
│                   │       ├── rk3568-seewo-sv21.dtb
│                   │       ├── rk3568-swan1-w28.dtb
│                   │       ├── rk3568-wocyber-a3.dtb
│                   │       ├── rk3576-nanopi-m5.dtb
│                   │       ├── rk3588-beelink-ipc-r.dtb
│                   │       ├── rk3588-dc-a588.dtb
│                   │       ├── rk3588-friendlyelec-cm3588-nas.dtb
│                   │       ├── rk3588-hlink-h88k-v3.dtb
│                   │       ├── rk3588-hlink-h88k-v31.dtb
│                   │       ├── rk3588-hlink-h88k.dtb
│                   │       ├── rk3588-lz-d3588.dtb
│                   │       ├── rk3588-nanopc-t6.dtb
│                   │       ├── rk3588-orangepi-5-plus.dtb
│                   │       ├── rk3588-rock-5-itx.dtb
│                   │       ├── rk3588-rock-5b.dtb
│                   │       ├── rk3588-smart-am60.dtb
│                   │       ├── rk3588s-boca-tcn100.dtb
│                   │       ├── rk3588s-orangepi-5b.dtb
│                   │       └── rk3588s-rock-5c.dtb
│                   └── extlinux/
│                       └── extlinux.conf.bak
├── compile-kernel/
│   ├── README.cn.md
│   ├── README.ja.md
│   ├── README.md
│   └── tools/
│       ├── config/
│       │   └── .gitkeep
│       ├── patch/
│       │   └── .gitkeep
│       └── script/
│           ├── armbian-compile-kernel-depends
│           ├── armbian_compile_kernel.sh
│           ├── docker/
│           │   ├── Dockerfile
│           │   ├── build_armbian_docker_image.sh
│           │   ├── build_armbian_rootfs_file.sh
│           │   └── docker_startup.sh
│           ├── ubuntu2204-build-armbian-depends
│           └── ubuntu2404-build-armbian-depends
├── documents/
│   ├── README.cn.md
│   ├── README.ja.md
│   ├── README.md
│   ├── android_partition_table_template.xlsx
│   ├── armbian_software.md
│   └── led_screen_display_control.md
├── rebuild
└── recompile

================================================
FILE CONTENTS
================================================

================================================
FILE: .github/.gitkeep
================================================


================================================
FILE: .github/ISSUE_TEMPLATE/bug-report.md
================================================
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---

**Device Information | 设备信息**
 - SOC: [e.g. S095x3]
 - Model [e.g. HK1]

**Armbian Version | 系统版本**
 - Kernel Version: [e.g. 6.18.16]
 - Release: [e.g. resolute/trixie]

**Describe the bug | 问题描述**
All issues will only remain open for one week to prioritize resolving them.
After that period, they will be closed but can still continue to be discussed in the thread.
所有的问题都只保留一周的开启状态供重点关注解决,超时将关闭,但仍然可以长期继续跟帖讨论。

Please provide a detailed description of the issue and, if necessary, attach a screenshot.
详细描述问题,并在必要时附上屏幕截图。




================================================
FILE: .github/workflows/build-armbian-arm64-docker-image.yml
================================================
#=====================================================================================
# https://github.com/ophub/amlogic-s9xxx-armbian
# Description: Build and publish Armbian arm64 Docker image
# Instructions: https://github.com/docker/build-push-action
# Build and Push to: https://hub.docker.com/
#=====================================================================================

name: Build Armbian arm64 Docker image

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      source_branch:
        description: "Select the source branch"
        required: false
        default: "trixie"
        type: choice
        options:
          - trixie
          - bookworm
          - resolute
          - noble
      docker_img:
        description: "Set the docker image"
        required: false
        default: "ophub/armbian"
        type: choice
        options:
          - ophub/armbian

env:
  TZ: Etc/UTC
  MAKE_DOCKER_SH: compile-kernel/tools/script/docker/build_armbian_docker_image.sh

jobs:
  build:
    runs-on: ubuntu-24.04-arm
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Download Armbian rootfs file [ ${{ inputs.source_branch }} ]
        id: down
        if: (!cancelled())
        run: |
          # Retrieve the latest Armbian rootfs file from releases
          latest_version=$(curl -s \
              -H "Accept: application/vnd.github+json" \
              -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
              https://api.github.com/repos/${{ github.repository }}/releases?per_page=20 | \
              jq -r --arg RTK "Armbian_${{ inputs.source_branch }}_arm64_" \
              --arg BOARD "rootfs" \
              '[.[] | select(.tag_name | contains($RTK)) |
              {tag: .tag_name} + (.assets[] | select(.name | contains($BOARD) and endswith(".tar.gz")) |
              {data: .updated_at, url: .url, name: .name})] |
              sort_by(.data) |
              reverse |
              .[0]')

          [[ -z "${latest_version}" || "${latest_version}" == "null" ]] && {
              echo "Error: Failed to resolve Armbian rootfs download URL."
              exit 1
          }

          # Extract download URL, filename, and release tag
          latest_url="$(echo ${latest_version} | jq -r '.url')"
          armbian_filename="$(echo ${latest_version} | jq -r '.name')"
          release_tag="$(echo ${latest_version} | jq -r '.tag')"
          echo "Matched release tag: ${release_tag}"
          echo "build_tag=${release_tag}" >> ${GITHUB_OUTPUT}

          # Download asset via GitHub API (binary stream)
          echo "Downloading: ${armbian_filename}"
          [[ -d "armbian" ]] || mkdir -p armbian
          curl -fsSL \
               -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
               -H "Accept: application/octet-stream" \
               "${latest_url}" \
               -o "armbian/${armbian_filename}"
          [[ "${?}" -ne "0" ]] && echo "Error: Download failed." && exit 1

          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Build the Docker image
        id: make
        if: ${{ steps.down.outputs.status == 'success' && !cancelled() }}
        run: |
          chmod +x ${MAKE_DOCKER_SH}
          ${MAKE_DOCKER_SH} ${{ inputs.source_branch }} arm64

          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Upload rebuilt images to Release
        uses: ncipollo/release-action@main
        if: ${{ steps.make.outputs.status == 'success' && !cancelled() }}
        with:
          tag: ${{ steps.down.outputs.build_tag }}
          artifacts: out/*.tar.gz
          allowUpdates: true
          removeArtifacts: false
          replacesArtifacts: true
          makeLatest: true
          token: ${{ secrets.GITHUB_TOKEN }}
          body: |
            ### Armbian Image Information
            - Default username: `root`
            - Default password: `1234`
            - Install command: `armbian-install`
            - Update command: `armbian-update`
            ### Applicable Platform
            - 🐧 `arm64`
            - 🐋 Docker image: https://hub.docker.com/u/ophub

      - name: Login to Docker Hub
        id: login
        if: ${{ steps.make.outputs.status == 'success' && !cancelled() }}
        uses: docker/login-action@v4
        with:
          username: ${{ secrets.DOCKERHUB_USERNAME }}
          password: ${{ secrets.DOCKERHUB_PASSWORD }}

      - name: Load and push image to Docker Hub
        id: push
        if: ${{ steps.make.outputs.status == 'success' && !cancelled() }}
        run: |
          # Load the offline Docker image built by build_armbian_docker_image.sh
          offline_image="$(ls out/*.tar.gz 2>/dev/null | head -n 1)"
          [[ -z "${offline_image}" ]] && echo "Error: No offline image found." && exit 1
          loaded_image="$(docker load -i "${offline_image}" | grep -oP 'Loaded image: \K.*')"
          [[ -z "${loaded_image}" ]] && echo "Error: Failed to load Docker image." && exit 1
          echo "Loaded image: ${loaded_image}"

          # Tag for Docker Hub
          docker tag "${loaded_image}" "${{ inputs.docker_img }}-${{ inputs.source_branch }}:arm64"
          docker tag "${loaded_image}" "${{ inputs.docker_img }}-${{ inputs.source_branch }}:latest"

          # Push to Docker Hub
          docker push "${{ inputs.docker_img }}-${{ inputs.source_branch }}:arm64"
          docker push "${{ inputs.docker_img }}-${{ inputs.source_branch }}:latest"

          echo "status=success" >> ${GITHUB_OUTPUT}



================================================
FILE: .github/workflows/build-armbian-arm64-server-image.yml
================================================
#==========================================================================
# Description: Build Armbian arm64 server image
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================

name: Build Armbian arm64 server image

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      set_release:
        description: "Select OS Release."
        required: false
        default: "trixie"
        type: choice
        options:
          - trixie
          - bookworm
          - resolute
          - noble
      armbian_board:
        description: "Select device board."
        required: false
        default: "all"
        type: choice
        options:
          - all
          - first50
          - range50_100
          - range100_150
          - last20
          - a311d-oes_s922x-oes-plus_wxy-oect
          - nsy-g16-plus_nsy-g68-plus_bdy-g18-pro
          - s905d_s905x3_s912_s922x-ct2000
          - a311d
          - a311d-oes
          - alark35-3500
          - anas3035
          - aio-3399b
          - aio-3399c
          - aio-3399c-ai
          - bdkj-bd-one
          - bdy-g18-pro
          - beikeyun
          - boca-tcn100
          - cd1000
          - chainedbox
          - cm3588-nas
          - crrc
          - dc-a588
          - dg3399
          - dg-tn3568
          - dlfr100
          - e20c
          - e25
          - eaidk-610
          - emb3531
          - fine3399
          - firefly-jd4
          - firefly-rk3399
          - fmx1-pro
          - fmx1-pro-b
          - gea-6319
          - gzpeite-p01
          - h28k
          - h618-devboard
          - h66k
          - h68k
          - h69k
          - h88k
          - h88k-v3
          - h96-max-m2
          - hk1-rbox-k8s
          - hs530r
          - ht2
          - hugsun-x99
          - ipc-r
          - jp-tvbox
          - king3399
          - kylin3399
          - lckfb-tspi
          - leez
          - lx-r3s
          - lyt-t68m
          - lz-d3568
          - lz-d3588
          - lz-k3568
          - mrkaio-m68s
          - nanopc-t4
          - nanopc-t6
          - nanopi-m5
          - nanopi-r5c
          - nanopi-r5s
          - nsy-g16-plus
          - nsy-g68-plus
          - orangepi-3b
          - orangepi-5-plus
          - orangepi-5b
          - orangepi-zero3
          - panther-x2
          - photonicat
          - r66s
          - r68s
          - renegade-rk3328
          - rk3318-box
          - rock-5-itx
          - rock5b
          - rock5c
          - ruisen-box
          - s905
          - s905-beelink-mini
          - s905-mxqpro-plus
          - s905d
          - s905d-ki-pro
          - s905d-sml5442tw
          - s905l
          - s905l-aurora-1s
          - s905l-b860av21u
          - s905l-mg101
          - s905l2
          - s905l2-e900v21e
          - s905l2-wojia
          - s905l3
          - s905l3-cm211
          - s905l3-unt400g1
          - s905l3-unt402a
          - s905l3a
          - s905l3a-cm311
          - s905l3a-m401a
          - s905l3b
          - s905l3b-e900v21d
          - s905l3b-e900v22d
          - s905l3b-e900v22e
          - s905l3b-ip103h
          - s905l3b-rg020et-ca
          - s905l3b-unt403a
          - s905lb-ipbs9505
          - s905lb-q96-mini
          - s905lb-r3300l
          - s905mb
          - s905w
          - s905w-w95
          - s905w-x96-mini
          - s905w-x96w
          - s905x
          - s905x-b860h
          - s905x-nexbox-a95x
          - s905x-t95
          - s905x-tbee
          - s905x-tx9
          - s905x2
          - s905x2-km3
          - s905x2-x96max-2g
          - s905x2-hg680fj
          - s905x3
          - s905x3-2101
          - s905x3-a100
          - s905x3-a95xf3
          - s905x3-a95xf3-gb
          - s905x3-b
          - s905x3-h96max
          - s905x3-hk1
          - s905x3-ip1001m
          - s905x3-q1
          - s905x3-q2
          - s905x3-tox1
          - s905x3-tx3
          - s905x3-tx3-bz
          - s905x3-ugoosx3
          - s905x3-whale
          - s905x3-x88-pro-x3
          - s905x3-x96air
          - s905x3-x96air-gb
          - s905x3-x96max
          - s912
          - s912-h96pro-plus
          - s912-m8s-pro
          - s912-nexbox-a1
          - s912-nexbox-a2
          - s912-onecloudpro
          - s912-phicomm-t1
          - s912-t95z-plus
          - s912-tx8-max
          - s912-tx9-pro-2g
          - s912-tx9-pro-3g
          - s912-x92
          - s912-zyxq-fake
          - s922x
          - s922x-ct2000
          - s922x-gtking
          - s922x-gtkingpro-h
          - s922x-odroid-n2
          - s922x-oes-plus
          - s922x-reva
          - s922x-ugoos-am6
          - seewo-sv21
          - smart-am40
          - smart-am60
          - station-m1
          - station-m2
          - station-p2
          - sv-33a6x
          - sv-33a6x-vpu
          - swan1-w28
          - sw799
          - taram
          - tanix-tx6
          - tb-ls3399
          - tn3399
          - tpm312
          - tqc-a01
          - tvi3315a
          - vplus
          - wocyber-a3
          - wxy-oect
          - wxy-oect-mod
          - xiaobao
          - yskj
          - zcube1-max
          - zk-r39a
          - zysj
      armbian_kernel:
        description: "Select kernel version."
        required: false
        default: "6.12.y_6.18.y"
        type: choice
        options:
          - 5.10.y
          - 5.15.y
          - 6.1.y
          - 6.6.y
          - 6.12.y
          - 6.18.y
          - 5.10.y_5.15.y
          - 6.1.y_6.6.y
          - 6.12.y_6.18.y
          - 6.1.y_6.12.y
          - 6.1.y_6.18.y
      auto_kernel:
        description: "Auto use the latest kernel."
        required: false
        default: true
        type: boolean
      kernel_repo:
        description: "Set the kernel repository."
        required: false
        default: "ophub/kernel"
        type: choice
        options:
          - ophub/kernel
      kernel_usage:
        description: "Set the tags of the stable kernel."
        required: false
        default: "stable"
        type: choice
        options:
          - stable
          - flippy
          - beta
      armbian_fstype:
        description: "Select armbian rootfs type."
        required: false
        default: "ext4"
        type: choice
        options:
          - ext4
          - btrfs
      armbian_edition:
        description: "Select image edition type."
        required: false
        default: "server"
        type: choice
        options:
          - server
          - desktop
          - beta
      builder_name:
        description: "Set Armbian builder signature."
        required: false
        default: "ophub"
        type: choice
        options:
          - ophub
          - angel

env:
  TZ: Etc/UTC
  ROOTFS_SCRIPT: compile-kernel/tools/script/docker/build_armbian_rootfs_file.sh

jobs:
  build:
    runs-on: ubuntu-24.04
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Initialize the build environment
        id: init
        env:
          DEBIAN_FRONTEND: noninteractive
        run: |
          docker rmi -f $(docker images -q) 2>/dev/null || true
          [[ -n "${AGENT_TOOLSDIRECTORY}" ]] && sudo rm -rf "${AGENT_TOOLSDIRECTORY}"
          sudo rm -rf /usr/share/dotnet /usr/local/lib/android 2>/dev/null
          sudo swapoff -a
          sudo rm -f /swapfile /mnt/swapfile
          sudo -E apt-get -y update
          sudo -E apt-get -y purge azure-cli ghc* zulu* llvm* firefox google* dotnet* powershell openjdk* mongodb* moby* || true
          sudo -E apt-get -y install $(curl -fsSL https://ophub.org/ubuntu2404-build-armbian-depends)
          sudo -E systemctl daemon-reload
          #sudo -E apt-get -y full-upgrade
          sudo -E apt-get -y autoremove --purge
          sudo -E apt-get clean
          sudo sed -i '/NVM_DIR/d;/skel/d' /root/{.bashrc,.profile}
          sudo rm -rf ~/{.cargo,.dotnet,.rustup}
          sudo -E timedatectl set-timezone "${TZ:-Etc/UTC}"
          sudo -E ntpdate ntp.ubuntu.com 0.pool.ntp.org || true
          sudo -E timedatectl set-ntp true
          date -u
          timedatectl status || true
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Create virtual disk for extended storage
        run: |
          mnt_size=$(expr $(df -h /mnt | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 1)
          root_size=$(expr $(df -h / | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 4)
          sudo truncate -s "${mnt_size}"G /mnt/mnt.img
          sudo truncate -s "${root_size}"G /root.img
          sudo losetup /dev/loop6 /mnt/mnt.img
          sudo losetup /dev/loop7 /root.img
          sudo pvcreate /dev/loop6
          sudo pvcreate /dev/loop7
          sudo vgcreate github /dev/loop6 /dev/loop7
          sudo lvcreate -n runner -l 100%FREE github
          sudo mkfs.xfs -f -i sparse=0 -b size=4096 /dev/github/runner
          sudo mkdir -p /builder
          sudo mount /dev/github/runner /builder
          sudo chown -R runner:runner /builder
          df -Th
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Download Armbian source code
        id: down
        working-directory: /builder
        if: ${{ steps.init.outputs.status == 'success' && !cancelled() }}
        run: |
          df -hT ${PWD}
          git clone -q --single-branch --depth=1 --branch=main https://github.com/armbian/build.git build
          ln -sf /builder/build ${{ github.workspace }}/build
          ln -sf /builder/build /home/runner/work/_actions/ophub/amlogic-s9xxx-armbian/main/build
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Compile Armbian [ ${{ inputs.set_release }} ]
        id: compile
        working-directory: /builder
        if: ${{ steps.down.outputs.status == 'success' && !cancelled() }}
        run: |
          # Enable QEMU emulation for ARM cross-compilation
          docker run --rm --privileged multiarch/qemu-user-static --reset -p yes 2>/dev/null || true
          # Compile options reference: https://docs.armbian.com/Developer-Guide_Build-Options
          cd build/
              ./compile.sh RELEASE=${{ inputs.set_release }} BOARD=odroidn2 BRANCH=current BUILD_MINIMAL=no \
                           BUILD_ONLY=default HOST=armbian BUILD_DESKTOP=no EXPERT=yes KERNEL_CONFIGURE=no \
                           COMPRESS_OUTPUTIMAGE="sha" SHARE_LOG=yes
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Organize output files and reclaim disk space
        id: clean
        if: ${{ steps.compile.outputs.status == 'success' && !cancelled() }}
        run: |
          # Extract essential artifacts and remove build files
          chmod +x ${ROOTFS_SCRIPT}
          ${ROOTFS_SCRIPT} -v ${{ inputs.set_release }} -s true -c true -k true -p arm64

          # Remove build files while preserving output
          cd build/
          rm -rf $(ls . | grep -v "^output$" | xargs) 2>/dev/null

          # Display disk usage after cleanup
          df -hT ${PWD}
          echo "build_tag=Armbian_${{ inputs.set_release }}_arm64_${{ inputs.armbian_edition }}_$(date +"%Y.%m")" >> ${GITHUB_ENV}
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Upload Armbian image to Release
        uses: ncipollo/release-action@main
        if: ${{ steps.clean.outputs.status == 'success' && !cancelled() }}
        with:
          tag: ${{ env.build_tag }}
          artifacts: build/output/images/*
          allowUpdates: true
          makeLatest: true
          token: ${{ secrets.GITHUB_TOKEN }}

      - name: Rebuild Armbian for target boards
        uses: ophub/amlogic-s9xxx-armbian@main
        if: ${{ steps.clean.outputs.status == 'success' && !cancelled() }}
        with:
          build_target: armbian
          armbian_path: build/output/images/*.img.gz
          armbian_board: ${{ inputs.armbian_board }}
          armbian_kernel: ${{ inputs.armbian_kernel }}
          auto_kernel: ${{ inputs.auto_kernel }}
          kernel_repo: ${{ inputs.kernel_repo }}
          kernel_usage: ${{ inputs.kernel_usage }}
          armbian_fstype: ${{ inputs.armbian_fstype }}
          builder_name: ${{ inputs.builder_name }}

      - name: Upload rebuilt images to Release
        uses: ncipollo/release-action@main
        if: ${{ env.PACKAGED_STATUS == 'success' && !cancelled() }}
        with:
          tag: ${{ env.build_tag }}
          artifacts: ${{ env.PACKAGED_OUTPUTPATH }}/*
          allowUpdates: true
          removeArtifacts: false
          replacesArtifacts: true
          makeLatest: true
          token: ${{ secrets.GITHUB_TOKEN }}
          body: |
            ### Armbian Image Information
            - Default username: `root`
            - Default password: `1234`
            - Install command: `armbian-install`
            - Update command: `armbian-update`
            ### Applicable Platform
            - 🐧 `arm64`
            - 🐋 Docker image: https://hub.docker.com/u/ophub


================================================
FILE: .github/workflows/build-armbian-using-official-image.yml
================================================
#==========================================================================
# Description: Build Armbian from official upstream images
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================

name: Build Armbian from official images

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      armbian_url:
        description: "Set the Armbian source image URL."
        required: false
        default: ""
      armbian_board:
        description: "Select device board."
        required: false
        default: "all"
        type: choice
        options:
          - all
          - first50
          - range50_100
          - range100_150
          - last20
          - a311d-oes_s922x-oes-plus_wxy-oect
          - nsy-g16-plus_nsy-g68-plus_bdy-g18-pro
          - s905d_s905x3_s912_s922x-ct2000
          - a311d
          - a311d-oes
          - alark35-3500
          - anas3035
          - aio-3399b
          - aio-3399c
          - aio-3399c-ai
          - bdkj-bd-one
          - bdy-g18-pro
          - beikeyun
          - boca-tcn100
          - cd1000
          - chainedbox
          - cm3588-nas
          - crrc
          - dc-a588
          - dg3399
          - dg-tn3568
          - dlfr100
          - e20c
          - e25
          - eaidk-610
          - emb3531
          - fine3399
          - firefly-jd4
          - firefly-rk3399
          - fmx1-pro
          - fmx1-pro-b
          - gea-6319
          - gzpeite-p01
          - h28k
          - h618-devboard
          - h66k
          - h68k
          - h69k
          - h88k
          - h88k-v3
          - h96-max-m2
          - hk1-rbox-k8s
          - hs530r
          - ht2
          - hugsun-x99
          - ipc-r
          - jp-tvbox
          - king3399
          - kylin3399
          - lckfb-tspi
          - leez
          - lx-r3s
          - lyt-t68m
          - lz-d3568
          - lz-d3588
          - lz-k3568
          - mrkaio-m68s
          - nanopc-t4
          - nanopc-t6
          - nanopi-m5
          - nanopi-r5c
          - nanopi-r5s
          - nsy-g16-plus
          - nsy-g68-plus
          - orangepi-3b
          - orangepi-5-plus
          - orangepi-5b
          - orangepi-zero3
          - panther-x2
          - photonicat
          - r66s
          - r68s
          - renegade-rk3328
          - rk3318-box
          - rock-5-itx
          - rock5b
          - rock5c
          - ruisen-box
          - s905
          - s905-beelink-mini
          - s905-mxqpro-plus
          - s905d
          - s905d-ki-pro
          - s905d-sml5442tw
          - s905l
          - s905l-aurora-1s
          - s905l-b860av21u
          - s905l-mg101
          - s905l2
          - s905l2-e900v21e
          - s905l2-wojia
          - s905l3
          - s905l3-cm211
          - s905l3-unt400g1
          - s905l3-unt402a
          - s905l3a
          - s905l3a-cm311
          - s905l3a-m401a
          - s905l3b
          - s905l3b-e900v21d
          - s905l3b-e900v22d
          - s905l3b-e900v22e
          - s905l3b-ip103h
          - s905l3b-rg020et-ca
          - s905l3b-unt403a
          - s905lb-ipbs9505
          - s905lb-q96-mini
          - s905lb-r3300l
          - s905mb
          - s905w
          - s905w-w95
          - s905w-x96-mini
          - s905w-x96w
          - s905x
          - s905x-b860h
          - s905x-nexbox-a95x
          - s905x-t95
          - s905x-tbee
          - s905x-tx9
          - s905x2
          - s905x2-km3
          - s905x2-x96max-2g
          - s905x2-hg680fj
          - s905x3
          - s905x3-2101
          - s905x3-a100
          - s905x3-a95xf3
          - s905x3-a95xf3-gb
          - s905x3-b
          - s905x3-h96max
          - s905x3-hk1
          - s905x3-ip1001m
          - s905x3-q1
          - s905x3-q2
          - s905x3-tox1
          - s905x3-tx3
          - s905x3-tx3-bz
          - s905x3-ugoosx3
          - s905x3-whale
          - s905x3-x88-pro-x3
          - s905x3-x96air
          - s905x3-x96air-gb
          - s905x3-x96max
          - s912
          - s912-h96pro-plus
          - s912-m8s-pro
          - s912-nexbox-a1
          - s912-nexbox-a2
          - s912-onecloudpro
          - s912-phicomm-t1
          - s912-t95z-plus
          - s912-tx8-max
          - s912-tx9-pro-2g
          - s912-tx9-pro-3g
          - s912-x92
          - s912-zyxq-fake
          - s922x
          - s922x-ct2000
          - s922x-gtking
          - s922x-gtkingpro-h
          - s922x-odroid-n2
          - s922x-oes-plus
          - s922x-reva
          - s922x-ugoos-am6
          - seewo-sv21
          - smart-am40
          - smart-am60
          - station-m1
          - station-m2
          - station-p2
          - sv-33a6x
          - sv-33a6x-vpu
          - swan1-w28
          - sw799
          - taram
          - tanix-tx6
          - tb-ls3399
          - tn3399
          - tpm312
          - tqc-a01
          - tvi3315a
          - vplus
          - wocyber-a3
          - wxy-oect
          - wxy-oect-mod
          - xiaobao
          - yskj
          - zcube1-max
          - zk-r39a
          - zysj
      armbian_kernel:
        description: "Select kernel version."
        required: false
        default: "6.12.y_6.18.y"
        type: choice
        options:
          - 5.10.y
          - 5.15.y
          - 6.1.y
          - 6.6.y
          - 6.12.y
          - 6.18.y
          - 5.10.y_5.15.y
          - 6.1.y_6.6.y
          - 6.12.y_6.18.y
          - 6.1.y_6.12.y
          - 6.1.y_6.18.y
      auto_kernel:
        description: "Auto use the latest kernel."
        required: false
        default: true
        type: boolean
      kernel_repo:
        description: "Set the kernel repository."
        required: false
        default: "ophub/kernel"
        type: choice
        options:
          - ophub/kernel
      kernel_usage:
        description: "Set the tags of the stable kernel."
        required: false
        default: "stable"
        type: choice
        options:
          - stable
          - flippy
          - beta
      armbian_fstype:
        description: "Set armbian rootfs type."
        required: false
        default: "ext4"
        type: choice
        options:
          - ext4
          - btrfs
      armbian_edition:
        description: "Select image edition type."
        required: false
        default: "server"
        type: choice
        options:
          - server
          - desktop
          - beta
      builder_name:
        description: "Set Armbian builder signature."
        required: false
        default: "ophub"
        type: choice
        options:
          - ophub
          - angel
          - yourname

env:
  TZ: Etc/UTC

jobs:
  build:
    runs-on: ubuntu-24.04
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Initialize the build environment
        id: init
        env:
          DEBIAN_FRONTEND: noninteractive
        run: |
          docker rmi -f $(docker images -q) 2>/dev/null || true
          [[ -n "${AGENT_TOOLSDIRECTORY}" ]] && sudo rm -rf "${AGENT_TOOLSDIRECTORY}"
          sudo rm -rf /usr/share/dotnet /usr/local/lib/android 2>/dev/null
          sudo swapoff -a
          sudo rm -f /swapfile /mnt/swapfile
          sudo -E apt-get -y update
          sudo -E apt-get -y purge azure-cli ghc* zulu* llvm* firefox google* dotnet* powershell openjdk* mongodb* moby* || true
          sudo -E apt-get -y install $(curl -fsSL https://ophub.org/ubuntu2404-build-armbian-depends)
          sudo -E systemctl daemon-reload
          #sudo -E apt-get -y full-upgrade
          sudo -E apt-get -y autoremove --purge
          sudo -E apt-get clean
          sudo sed -i '/NVM_DIR/d;/skel/d' /root/{.bashrc,.profile}
          sudo rm -rf ~/{.cargo,.dotnet,.rustup}
          sudo -E timedatectl set-timezone "${TZ:-Etc/UTC}"
          sudo -E ntpdate ntp.ubuntu.com 0.pool.ntp.org || true
          sudo -E timedatectl set-ntp true
          date -u
          timedatectl status || true
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Create virtual disk for extended storage
        run: |
          mnt_size=$(expr $(df -h /mnt | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 1)
          root_size=$(expr $(df -h / | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 4)
          sudo truncate -s "${mnt_size}"G /mnt/mnt.img
          sudo truncate -s "${root_size}"G /root.img
          sudo losetup /dev/loop6 /mnt/mnt.img
          sudo losetup /dev/loop7 /root.img
          sudo pvcreate /dev/loop6
          sudo pvcreate /dev/loop7
          sudo vgcreate github /dev/loop6 /dev/loop7
          sudo lvcreate -n runner -l 100%FREE github
          sudo mkfs.xfs -f -i sparse=0 -b size=4096 /dev/github/runner
          sudo mkdir -p /builder
          sudo mount /dev/github/runner /builder
          sudo chown -R runner:runner /builder
          df -Th
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Set Armbian download source
        id: down
        working-directory: /builder
        run: |
          # Resolve the Armbian image download URL
          armbian_url="${{ inputs.armbian_url }}"
          if  [[ -z "${armbian_url}" ]]; then
              armbian_site="https://armbian.tnahosting.net/dl/odroidn2/archive/"
              armbian_name="Armbian.*noble.*.img.xz"
              armbian_file=$(curl -s "${armbian_site}" | grep -oE "${armbian_name}" | head -n 1)
              if [[ -n "${armbian_file}" ]]; then
                  armbian_url="${armbian_site}${armbian_file}"
              else
                  echo -e "Error: No valid Armbian image found at: [ ${armbian_site} ]"
                  exit 1
              fi
          fi
          echo "ARMBIAN_URL=${armbian_url}" >> ${GITHUB_ENV}

          # Detect the OS release name from the URL
          set_release=""
          ARR_RELEASE=("resolute" "noble" "trixie" "bookworm")
          i=1
          for r in ${ARR_RELEASE[*]}; do
              if [[ "${armbian_url}" == *"${r}"* ]]; then
                  set_release="_${r}"
                  break
              fi
              let i++
          done

          mkdir -p /builder/build
          ln -sf /builder/build ${{ github.workspace }}/build
          ln -sf /builder/build /home/runner/work/_actions/ophub/amlogic-s9xxx-armbian/main/build

          sudo timedatectl set-timezone "${TZ}"
          echo "build_tag=Armbian${set_release}_arm64_${{ inputs.armbian_edition }}_$(date +"%Y.%m")" >> ${GITHUB_ENV}
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Rebuild Armbian for target boards
        uses: ophub/amlogic-s9xxx-armbian@main
        if: ${{ env.ARMBIAN_URL != '' && !cancelled() }}
        with:
          build_target: armbian
          armbian_path: ${{ env.ARMBIAN_URL }}
          armbian_board: ${{ inputs.armbian_board }}
          armbian_kernel: ${{ inputs.armbian_kernel }}
          auto_kernel: ${{ inputs.auto_kernel }}
          kernel_repo: ${{ inputs.kernel_repo }}
          kernel_usage: ${{ inputs.kernel_usage }}
          armbian_fstype: ${{ inputs.armbian_fstype }}
          builder_name: ${{ inputs.builder_name }}

      - name: Upload Armbian images to Release
        uses: ncipollo/release-action@main
        if: ${{ env.PACKAGED_STATUS == 'success' && !cancelled() }}
        with:
          tag: ${{ env.build_tag }}
          artifacts: ${{ env.PACKAGED_OUTPUTPATH }}/*
          allowUpdates: true
          removeArtifacts: false
          replacesArtifacts: true
          makeLatest: true
          token: ${{ secrets.GITHUB_TOKEN }}
          body: |
            ### Armbian Image Information
            - Default username: `root`
            - Default password: `1234`
            - Install command: `armbian-install`
            - Update command: `armbian-update`
            ### Applicable Platform
            - 🐧 `arm64`
            - 🐋 Docker image: https://hub.docker.com/u/ophub


================================================
FILE: .github/workflows/build-armbian-using-releases-files.yml
================================================
#==========================================================================
# Description: Build Armbian using releases files
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================

name: Build Armbian using releases files

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      set_release:
        description: "Select OS Release."
        required: false
        default: "trixie"
        type: choice
        options:
          - trixie
          - bookworm
          - resolute
          - noble
      armbian_board:
        description: "Select device board."
        required: false
        default: "all"
        type: choice
        options:
          - all
          - first50
          - range50_100
          - range100_150
          - last20
          - a311d-oes_s922x-oes-plus_wxy-oect
          - nsy-g16-plus_nsy-g68-plus_bdy-g18-pro
          - s905d_s905x3_s912_s922x-ct2000
          - a311d
          - a311d-oes
          - alark35-3500
          - anas3035
          - aio-3399b
          - aio-3399c
          - aio-3399c-ai
          - bdkj-bd-one
          - bdy-g18-pro
          - beikeyun
          - boca-tcn100
          - cd1000
          - chainedbox
          - cm3588-nas
          - crrc
          - dc-a588
          - dg3399
          - dg-tn3568
          - dlfr100
          - e20c
          - e25
          - eaidk-610
          - emb3531
          - fine3399
          - firefly-jd4
          - firefly-rk3399
          - fmx1-pro
          - fmx1-pro-b
          - gea-6319
          - gzpeite-p01
          - h28k
          - h618-devboard
          - h66k
          - h68k
          - h69k
          - h88k
          - h88k-v3
          - h96-max-m2
          - hk1-rbox-k8s
          - hs530r
          - ht2
          - hugsun-x99
          - ipc-r
          - jp-tvbox
          - king3399
          - kylin3399
          - lckfb-tspi
          - leez
          - lx-r3s
          - lyt-t68m
          - lz-d3568
          - lz-d3588
          - lz-k3568
          - mrkaio-m68s
          - nanopc-t4
          - nanopc-t6
          - nanopi-m5
          - nanopi-r5c
          - nanopi-r5s
          - nsy-g16-plus
          - nsy-g68-plus
          - orangepi-3b
          - orangepi-5-plus
          - orangepi-5b
          - orangepi-zero3
          - panther-x2
          - photonicat
          - r66s
          - r68s
          - renegade-rk3328
          - rk3318-box
          - rock-5-itx
          - rock5b
          - rock5c
          - ruisen-box
          - s905
          - s905-beelink-mini
          - s905-mxqpro-plus
          - s905d
          - s905d-ki-pro
          - s905d-sml5442tw
          - s905l
          - s905l-aurora-1s
          - s905l-b860av21u
          - s905l-mg101
          - s905l2
          - s905l2-e900v21e
          - s905l2-wojia
          - s905l3
          - s905l3-cm211
          - s905l3-unt400g1
          - s905l3-unt402a
          - s905l3a
          - s905l3a-cm311
          - s905l3a-m401a
          - s905l3b
          - s905l3b-e900v21d
          - s905l3b-e900v22d
          - s905l3b-e900v22e
          - s905l3b-ip103h
          - s905l3b-rg020et-ca
          - s905l3b-unt403a
          - s905lb-ipbs9505
          - s905lb-q96-mini
          - s905lb-r3300l
          - s905mb
          - s905w
          - s905w-w95
          - s905w-x96-mini
          - s905w-x96w
          - s905x
          - s905x-b860h
          - s905x-nexbox-a95x
          - s905x-t95
          - s905x-tbee
          - s905x-tx9
          - s905x2
          - s905x2-km3
          - s905x2-x96max-2g
          - s905x2-hg680fj
          - s905x3
          - s905x3-2101
          - s905x3-a100
          - s905x3-a95xf3
          - s905x3-a95xf3-gb
          - s905x3-b
          - s905x3-h96max
          - s905x3-hk1
          - s905x3-ip1001m
          - s905x3-q1
          - s905x3-q2
          - s905x3-tox1
          - s905x3-tx3
          - s905x3-tx3-bz
          - s905x3-ugoosx3
          - s905x3-whale
          - s905x3-x88-pro-x3
          - s905x3-x96air
          - s905x3-x96air-gb
          - s905x3-x96max
          - s912
          - s912-h96pro-plus
          - s912-m8s-pro
          - s912-nexbox-a1
          - s912-nexbox-a2
          - s912-onecloudpro
          - s912-phicomm-t1
          - s912-t95z-plus
          - s912-tx8-max
          - s912-tx9-pro-2g
          - s912-tx9-pro-3g
          - s912-x92
          - s912-zyxq-fake
          - s922x
          - s922x-ct2000
          - s922x-gtking
          - s922x-gtkingpro-h
          - s922x-odroid-n2
          - s922x-oes-plus
          - s922x-reva
          - s922x-ugoos-am6
          - seewo-sv21
          - smart-am40
          - smart-am60
          - station-m1
          - station-m2
          - station-p2
          - sv-33a6x
          - sv-33a6x-vpu
          - swan1-w28
          - sw799
          - taram
          - tanix-tx6
          - tb-ls3399
          - tn3399
          - tpm312
          - tqc-a01
          - tvi3315a
          - vplus
          - wocyber-a3
          - wxy-oect
          - wxy-oect-mod
          - xiaobao
          - yskj
          - zcube1-max
          - zk-r39a
          - zysj
      armbian_kernel:
        description: "Select kernel version."
        required: false
        default: "6.12.y_6.18.y"
        type: choice
        options:
          - 5.10.y
          - 5.15.y
          - 6.1.y
          - 6.6.y
          - 6.12.y
          - 6.18.y
          - 5.10.y_5.15.y
          - 6.1.y_6.6.y
          - 6.12.y_6.18.y
          - 6.1.y_6.12.y
          - 6.1.y_6.18.y
      auto_kernel:
        description: "Auto use the latest kernel."
        required: false
        default: true
        type: boolean
      kernel_repo:
        description: "Set the kernel repository."
        required: false
        default: "ophub/kernel"
        type: choice
        options:
          - ophub/kernel
      kernel_usage:
        description: "Set the tags of the stable kernel."
        required: false
        default: "stable"
        type: choice
        options:
          - stable
          - flippy
          - beta
      armbian_fstype:
        description: "Select armbian rootfs type."
        required: false
        default: "ext4"
        type: choice
        options:
          - ext4
          - btrfs
      armbian_edition:
        description: "Select image edition type."
        required: false
        default: "server"
        type: choice
        options:
          - server
          - desktop
          - beta
      builder_name:
        description: "Set Armbian builder signature."
        required: false
        default: "ophub"
        type: choice
        options:
          - ophub
          - angel

env:
  TZ: Etc/UTC

jobs:
  build:
    runs-on: ubuntu-24.04
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Initialize the build environment
        id: init
        env:
          DEBIAN_FRONTEND: noninteractive
        run: |
          docker rmi -f $(docker images -q) 2>/dev/null || true
          [[ -n "${AGENT_TOOLSDIRECTORY}" ]] && sudo rm -rf "${AGENT_TOOLSDIRECTORY}"
          sudo rm -rf /usr/share/dotnet /usr/local/lib/android 2>/dev/null
          sudo swapoff -a
          sudo rm -f /swapfile /mnt/swapfile
          sudo -E apt-get -y update
          sudo -E apt-get -y purge azure-cli ghc* zulu* llvm* firefox google* dotnet* powershell openjdk* mongodb* moby* || true
          sudo -E apt-get -y install $(curl -fsSL https://ophub.org/ubuntu2404-build-armbian-depends)
          sudo -E systemctl daemon-reload
          #sudo -E apt-get -y full-upgrade
          sudo -E apt-get -y autoremove --purge
          sudo -E apt-get clean
          sudo sed -i '/NVM_DIR/d;/skel/d' /root/{.bashrc,.profile}
          sudo rm -rf ~/{.cargo,.dotnet,.rustup}
          sudo -E timedatectl set-timezone "${TZ:-Etc/UTC}"
          sudo -E ntpdate ntp.ubuntu.com 0.pool.ntp.org || true
          sudo -E timedatectl set-ntp true
          date -u
          timedatectl status || true
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Create virtual disk for extended storage
        run: |
          mnt_size=$(expr $(df -h /mnt | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 1)
          root_size=$(expr $(df -h / | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 4)
          sudo truncate -s "${mnt_size}"G /mnt/mnt.img
          sudo truncate -s "${root_size}"G /root.img
          sudo losetup /dev/loop6 /mnt/mnt.img
          sudo losetup /dev/loop7 /root.img
          sudo pvcreate /dev/loop6
          sudo pvcreate /dev/loop7
          sudo vgcreate github /dev/loop6 /dev/loop7
          sudo lvcreate -n runner -l 100%FREE github
          sudo mkfs.xfs -f -i sparse=0 -b size=4096 /dev/github/runner
          sudo mkdir -p /builder
          sudo mount /dev/github/runner /builder
          sudo chown -R runner:runner /builder
          df -Th
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Download Armbian from Releases
        id: down
        working-directory: /builder
        if: ${{ steps.init.outputs.status == 'success' && !cancelled() }}
        run: |
          armbian_buildpath="build/output/images"
          [[ -d "${armbian_buildpath}" ]] || mkdir -p "${armbian_buildpath}"
          ln -sf /builder/build ${{ github.workspace }}/build
          ln -sf /builder/build /home/runner/work/_actions/ophub/amlogic-s9xxx-armbian/main/build

          # Query the latest release asset via GitHub API
          latest_version=$(curl -s \
              -H "Accept: application/vnd.github+json" \
              -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
              https://api.github.com/repos/${{ github.repository }}/releases?per_page=20 | \
              jq -r --arg RTK "Armbian_${{ inputs.set_release }}_arm64_" \
              --arg BOARD "-trunk_" \
              '[.[] | select(.tag_name | contains($RTK))] |
              map(.assets[] | select(.name | contains($BOARD) and endswith(".img.gz"))) |
              sort_by(.updated_at) |
              reverse |
              .[0] |
              {data: .updated_at, url: .url, name: .name}')

          [[ -z "${latest_version}" || "${latest_version}" == "null" ]] && {
              echo "Error: Failed to resolve Armbian image download URL."
              exit 1
          }

          # Extract download URL and filename
          latest_url="$(echo ${latest_version} | jq -r '.url')"
          armbian_filename="$(echo ${latest_version} | jq -r '.name')"

          # Download asset via GitHub API (binary stream)
          echo "Downloading: ${armbian_filename}"
          curl -fsSL \
               -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
               -H "Accept: application/octet-stream" \
               "${latest_url}" \
               -o "${armbian_buildpath}/${armbian_filename}"
          [[ "${?}" -ne "0" ]] && echo "Error: Download failed." && exit 1

          # Decompress the image
          cd "${armbian_buildpath}" && gzip -df *.img.gz && sync

          echo "build_tag=Armbian_${{ inputs.set_release }}_arm64_${{ inputs.armbian_edition }}_$(date +"%Y.%m")" >> ${GITHUB_ENV}
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Rebuild Armbian [ ${{ inputs.set_release }} ]
        uses: ophub/amlogic-s9xxx-armbian@main
        if: ${{ steps.down.outputs.status == 'success' && !cancelled() }}
        with:
          build_target: armbian
          armbian_path: build/output/images/*.img
          armbian_board: ${{ inputs.armbian_board }}
          armbian_kernel: ${{ inputs.armbian_kernel }}
          auto_kernel: ${{ inputs.auto_kernel }}
          kernel_repo: ${{ inputs.kernel_repo }}
          kernel_usage: ${{ inputs.kernel_usage }}
          armbian_fstype: ${{ inputs.armbian_fstype }}
          builder_name: ${{ inputs.builder_name }}

      - name: Upload Armbian images to Release
        uses: ncipollo/release-action@main
        if: ${{ env.PACKAGED_STATUS == 'success' && !cancelled() }}
        with:
          tag: ${{ env.build_tag }}
          artifacts: ${{ env.PACKAGED_OUTPUTPATH }}/*
          allowUpdates: true
          removeArtifacts: false
          replacesArtifacts: true
          makeLatest: true
          token: ${{ secrets.GITHUB_TOKEN }}
          body: |
            ### Armbian Image Information
            - Default username: `root`
            - Default password: `1234`
            - Install command: `armbian-install`
            - Update command: `armbian-update`
            ### Applicable Platform
            - 🐧 `arm64`
            - 🐋 Docker image: https://hub.docker.com/u/ophub


================================================
FILE: .github/workflows/build-armbian-x86-server-image.yml
================================================
#==========================================================================
# Description: Build Armbian x86 server image
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================

name: Build Armbian x86 server image

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      set_release:
        description: "Select OS Release."
        required: false
        default: "noble"
        type: choice
        options:
          - trixie
          - bookworm
          - resolute
          - noble
      publish_docker:
        description: "Publish Docker image"
        required: false
        default: "ophub/armbian"
        type: choice
        options:
          - ophub/armbian
          - none

env:
  TZ: Etc/UTC
  ROOTFS_SCRIPT: compile-kernel/tools/script/docker/build_armbian_rootfs_file.sh
  MAKE_DOCKER_SH: compile-kernel/tools/script/docker/build_armbian_docker_image.sh

jobs:
  build:
    runs-on: ubuntu-24.04
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Initialize the build environment
        id: init
        env:
          DEBIAN_FRONTEND: noninteractive
        run: |
          docker rmi -f $(docker images -q) 2>/dev/null || true
          [[ -n "${AGENT_TOOLSDIRECTORY}" ]] && sudo rm -rf "${AGENT_TOOLSDIRECTORY}"
          sudo rm -rf /usr/share/dotnet /usr/local/lib/android 2>/dev/null
          sudo swapoff -a
          sudo rm -f /swapfile /mnt/swapfile
          sudo -E apt-get -y update
          sudo -E apt-get -y purge azure-cli ghc* zulu* llvm* firefox google* dotnet* powershell openjdk* mongodb* moby* || true
          sudo -E apt-get -y install $(curl -fsSL https://ophub.org/ubuntu2404-build-armbian-depends)
          sudo -E systemctl daemon-reload
          #sudo -E apt-get -y full-upgrade
          sudo -E apt-get -y autoremove --purge
          sudo -E apt-get clean
          sudo sed -i '/NVM_DIR/d;/skel/d' /root/{.bashrc,.profile}
          sudo rm -rf ~/{.cargo,.dotnet,.rustup}
          sudo -E timedatectl set-timezone "${TZ:-Etc/UTC}"
          sudo -E ntpdate ntp.ubuntu.com 0.pool.ntp.org || true
          sudo -E timedatectl set-ntp true
          date -u
          timedatectl status || true
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Create virtual disk for extended storage
        run: |
          mnt_size=$(expr $(df -h /mnt | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 1)
          root_size=$(expr $(df -h / | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 4)
          sudo truncate -s "${mnt_size}"G /mnt/mnt.img
          sudo truncate -s "${root_size}"G /root.img
          sudo losetup /dev/loop6 /mnt/mnt.img
          sudo losetup /dev/loop7 /root.img
          sudo pvcreate /dev/loop6
          sudo pvcreate /dev/loop7
          sudo vgcreate github /dev/loop6 /dev/loop7
          sudo lvcreate -n runner -l 100%FREE github
          sudo mkfs.xfs -f -i sparse=0 -b size=4096 /dev/github/runner
          sudo mkdir -p /builder
          sudo mount /dev/github/runner /builder
          sudo chown -R runner:runner /builder
          df -Th
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Download source code
        id: down
        working-directory: /builder
        if: ${{ steps.init.outputs.status == 'success' && !cancelled() }}
        run: |
          df -hT ${PWD}
          git clone -q --single-branch --depth=1 --branch=main https://github.com/armbian/build.git build
          ln -sf /builder/build ${{ github.workspace }}/build
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Compile Armbian [ ${{ inputs.set_release }} ]
        id: compile
        working-directory: /builder
        if: ${{ steps.down.outputs.status == 'success' && !cancelled() }}
        run: |
          # Enable QEMU emulation for ARM cross-compilation
          docker run --rm --privileged multiarch/qemu-user-static --reset -p yes 2>/dev/null || true
          # Compile options reference: https://docs.armbian.com/Developer-Guide_Build-Options
          cd build/
              ./compile.sh RELEASE=${{ inputs.set_release }} BOARD=uefi-x86 BRANCH=current BUILD_MINIMAL=no \
                           BUILD_ONLY=default HOST=armbian BUILD_DESKTOP=no EXPERT=yes KERNEL_CONFIGURE=no \
                           COMPRESS_OUTPUTIMAGE="sha" SHARE_LOG=yes
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Organize output files and reclaim disk space
        id: clean
        if: ${{ steps.compile.outputs.status == 'success' && !cancelled() }}
        run: |
          # Extract essential artifacts and remove build files
          chmod +x ${ROOTFS_SCRIPT}
          ${ROOTFS_SCRIPT} -v ${{ inputs.set_release }} -s true -c true -k false -p amd64
          # Remove build files while preserving output
          [[ -d "armbian" ]] || mkdir armbian
          cp -af build/output/images/* armbian/
          rm -rf build
          # Display disk usage after cleanup
          df -hT ${PWD}
          echo "build_tag=Armbian_amd64_server_$(date +"%Y.%m")" >> ${GITHUB_ENV}
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Build the Docker image
        id: makedocker
        if: ${{ inputs.publish_docker != 'none' && !cancelled() }}
        run: |
          chmod +x ${MAKE_DOCKER_SH}
          ${MAKE_DOCKER_SH} ${{ inputs.set_release }} amd64
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Upload Armbian image to Release
        uses: ncipollo/release-action@main
        if: ${{ steps.clean.outputs.status == 'success' && !cancelled() }}
        with:
          tag: ${{ env.build_tag }}
          artifacts: "armbian/*,out/*"
          allowUpdates: true
          makeLatest: false
          token: ${{ secrets.GITHUB_TOKEN }}
          body: |
            ### Armbian Image Information
            - Default username: `root`
            - Default password: `1234`
            ### Applicable Platform
            - 💻 `amd64(uefi-x86)`
            - 🐋 Docker image: https://hub.docker.com/u/ophub

      - name: Login to Docker Hub
        id: login
        if: ${{ steps.makedocker.outputs.status == 'success' && !cancelled() }}
        uses: docker/login-action@v4
        with:
          username: ${{ secrets.DOCKERHUB_USERNAME }}
          password: ${{ secrets.DOCKERHUB_PASSWORD }}

      - name: Load and push image to Docker Hub
        id: push
        if: ${{ steps.makedocker.outputs.status == 'success' && !cancelled() }}
        run: |
          # Load the offline Docker image built by build_armbian_docker_image.sh
          offline_image="$(ls out/*.tar.gz 2>/dev/null | head -n 1)"
          [[ -z "${offline_image}" ]] && echo "Error: No offline image found." && exit 1
          loaded_image="$(docker load -i "${offline_image}" | grep -oP 'Loaded image: \K.*')"
          [[ -z "${loaded_image}" ]] && echo "Error: Failed to load Docker image." && exit 1
          echo "Loaded image: ${loaded_image}"

          # Tag for Docker Hub
          docker tag "${loaded_image}" "${{ inputs.publish_docker }}-${{ inputs.set_release }}:amd64"

          # Push to Docker Hub
          docker push "${{ inputs.publish_docker }}-${{ inputs.set_release }}:amd64"

          echo "status=success" >> ${GITHUB_OUTPUT}


================================================
FILE: .github/workflows/compile-kernel.yml
================================================
#==========================================================================
# Description: Compile the kernel
# Copyright (C) 2021 https://github.com/unifreq/openwrt_packit
# Copyright (C) 2021 https://github.com/ophub/amlogic-s9xxx-armbian
#==========================================================================

name: Compile the kernel

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      kernel_source:
        description: "Select the kernel source"
        required: false
        default: "unifreq"
        type: choice
        options:
          - unifreq
          - ophub
      kernel_version:
        description: "Select kernel version"
        required: false
        default: "6.12.y"
        type: choice
        options:
          - 5.10.y
          - 5.15.y
          - 6.1.y
          - 6.6.y
          - 6.12.y
          - 6.18.y
      kernel_auto:
        description: "Auto use the latest kernel"
        required: false
        default: true
        type: boolean
      delete_source:
        description: "Delete source after compilation"
        required: false
        default: true
        type: boolean
      kernel_package:
        description: "Select compile package list"
        required: false
        default: "all"
        type: choice
        options:
          - all
          - dtbs
      kernel_toolchain:
        description: "Select the compilation toolchain"
        required: false
        default: "gcc"
        type: choice
        options:
          - clang
          - gcc
          - gcc-15.2
          - gcc-14.3
          - gcc-14.2
      ccache_clear:
        description: "Set whether to clear the cache"
        required: false
        default: false
        type: boolean
      docker_image:
        description: "Select Armbian docker image"
        required: false
        default: "trixie"
        type: choice
        options:
          - trixie
          - bookworm
          - resolute
          - noble
      kernel_sign:
        description: "Set the kernel custom signature"
        required: false
        default: "-ophub"
        type: choice
        options:
          - -ophub
          - -yourname

env:
  TZ: Etc/UTC

jobs:
  build:
    runs-on: ubuntu-24.04-arm
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Initialize the build environment
        id: init
        env:
          DEBIAN_FRONTEND: noninteractive
        run: |
          docker rmi -f $(docker images -q) 2>/dev/null || true
          [[ -n "${AGENT_TOOLSDIRECTORY}" ]] && sudo rm -rf "${AGENT_TOOLSDIRECTORY}"
          sudo rm -rf /usr/share/dotnet /usr/local/lib/android 2>/dev/null
          sudo swapoff -a
          sudo rm -f /swapfile /mnt/swapfile
          sudo -E apt-get -y update
          sudo -E apt-get -y purge azure-cli ghc* zulu* llvm* firefox google* dotnet* powershell openjdk* mongodb* moby* || true
          sudo -E apt-get -y install $(curl -fsSL https://ophub.org/ubuntu2404-build-armbian-depends)
          sudo -E systemctl daemon-reload
          #sudo -E apt-get -y full-upgrade
          sudo -E apt-get -y autoremove --purge
          sudo -E apt-get clean
          sudo sed -i '/NVM_DIR/d;/skel/d' /root/{.bashrc,.profile}
          sudo rm -rf ~/{.cargo,.dotnet,.rustup}
          sudo -E timedatectl set-timezone "${TZ:-Etc/UTC}"
          sudo -E ntpdate ntp.ubuntu.com 0.pool.ntp.org || true
          sudo -E timedatectl set-ntp true
          date -u
          timedatectl status || true
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Create virtual disk for extended storage
        id: disk
        run: |
          mnt_size=$(expr $(df -h /mnt | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 1)
          root_size=$(expr $(df -h / | tail -1 | awk '{print $4}' | sed 's/[[:alpha:]]//g' | sed 's/\..*//') - 4)
          sudo truncate -s "${mnt_size}"G /mnt/mnt.img
          sudo truncate -s "${root_size}"G /root.img
          sudo losetup /dev/loop6 /mnt/mnt.img
          sudo losetup /dev/loop7 /root.img
          sudo pvcreate /dev/loop6
          sudo pvcreate /dev/loop7
          sudo vgcreate github /dev/loop6 /dev/loop7
          sudo lvcreate -n runner -l 100%FREE github
          sudo mkfs.xfs -f -i sparse=0 -b size=4096 /dev/github/runner
          sudo mkdir -p /builder
          sudo mount /dev/github/runner /builder
          sudo chown -R runner:runner /builder
          df -Th
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Get kernel source commit hash
        id: kernelhash
        run: |
          # Get the latest source hash from the kernel repository
          api_url="https://api.github.com/repos/${{ inputs.kernel_source }}/linux-${{ inputs.kernel_version }}/git/ref/heads/main"
          source_hash=$(curl -fsSL -m 20 \
              -H "Accept: application/vnd.github+json" \
              -H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
              ${api_url} |
              jq -r '.object.sha'
          )
          [[ -z "${source_hash}" || "${source_hash}" == "null" ]] && source_hash="${{ github.sha }}"
          echo "source_hash=${source_hash}" >> ${GITHUB_ENV}
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Cache ccache
        uses: actions/cache@v5
        with:
          path: /builder/ccache
          key: kernel-${{ inputs.kernel_toolchain }}-${{ inputs.kernel_version }}-${{ env.source_hash }}
          restore-keys: |
            kernel-${{ inputs.kernel_toolchain }}-${{ inputs.kernel_version }}-

      - name: Compile the kernel [ ${{ inputs.kernel_version }} ]
        uses: ophub/amlogic-s9xxx-armbian@main
        if: ${{ steps.disk.outputs.status == 'success' && !cancelled() }}
        with:
          build_target: kernel
          kernel_source: ${{ inputs.kernel_source }}
          kernel_version: ${{ inputs.kernel_version }}
          kernel_auto: ${{ inputs.kernel_auto }}
          delete_source: ${{ inputs.delete_source }}
          kernel_package: ${{ inputs.kernel_package }}
          kernel_sign: ${{ inputs.kernel_sign }}
          kernel_toolchain: ${{ inputs.kernel_toolchain }}
          ccache_clear: ${{ inputs.ccache_clear }}
          docker_hostpath: /builder
          docker_image: ophub/armbian-${{ inputs.docker_image }}:arm64

      - name: Upload Kernel to Release
        uses: ncipollo/release-action@main
        if: ${{ env.PACKAGED_STATUS == 'success' && !cancelled() }}
        with:
          tag: kernel_stable
          artifacts: ${{ env.PACKAGED_OUTPUTPATH }}/*
          allowUpdates: true
          removeArtifacts: false
          replacesArtifacts: true
          makeLatest: false
          token: ${{ secrets.GITHUB_TOKEN }}
          body: |
            - These are Mainline LTS(Long Term Support) kernels that provide `stable` support for Armbian.
            - It works with most `Amlogic`, `Rockchip`, and `Allwinner` devices. For specific details, please refer to the instructions on the homepage of repository.
            - Dedicated BSP kernels for other Rockchip and Allwinner devices can be downloaded from the [ophub/kernel](https://github.com/ophub/kernel) repository.
            - 这些是主线 LTS(长期支持)内核,为 Armbian 提供`稳定`的支持。
            - 适用于 `amlogic`,`rockchip`,`allwinner` 的大部分设备,具体可以参考仓库首页的说明。
            - 其他的 Rockchip 和 Allwinner 设备专用 BSP 内核可以在 [ophub/kernel](https://github.com/ophub/kernel) 仓库里下载使用。


================================================
FILE: .github/workflows/delete-older-releases-workflows.yml
================================================
#==========================================================================
# https://github.com/ophub/amlogic-s9xxx-armbian
# Description: Delete older releases and workflows runs
#==========================================================================

name: Delete older releases and workflows

on:
  repository_dispatch:
  workflow_dispatch:
    inputs:
      delete_releases:
        description: "Delete Releases file?"
        required: true
        default: true
        type: boolean
      delete_tags:
        description: "Delete related Tags?"
        required: false
        default: true
        type: boolean
      prerelease_option:
        description: "Whether to differentiate pre-release."
        required: false
        default: "all"
        type: choice
        options:
          - all
          - true
          - false
      releases_keep_latest:
        description: "How many latest releases to keep."
        required: false
        default: "2"
        type: choice
        options:
          - 30
          - 20
          - 10
          - 9
          - 8
          - 7
          - 6
          - 5
          - 4
          - 3
          - 2
          - 1
          - 0
      releases_keep_keyword:
        description: "Keyword of the keep releases."
        required: false
        default: "v0/server_/kernel_"
      delete_workflows:
        description: "Delete workflows records?"
        required: true
        default: true
        type: boolean
      workflows_keep_day:
        description: "Days to keep workflows."
        required: false
        default: "1"
        type: choice
        options:
          - 30
          - 20
          - 10
          - 9
          - 8
          - 7
          - 6
          - 5
          - 4
          - 3
          - 2
          - 1
          - 0
      workflows_keep_keyword:
        description: "keywords for keep workflows."
        required: false
        default: ""
      out_log:
        description: "Output detailed JSON logs."
        required: false
        default: true
        type: boolean

env:
  TZ: Etc/UTC

jobs:
  build:
    runs-on: ubuntu-24.04-arm
    if: ${{ github.event.repository.owner.id == github.event.sender.id }}

    steps:
      - name: Checkout
        uses: actions/checkout@v6

      - name: Initialize the environment
        id: init
        env:
          DEBIAN_FRONTEND: noninteractive
        run: |
          sudo timedatectl set-timezone "${TZ}"
          echo "status=success" >> ${GITHUB_OUTPUT}

      - name: Delete releases and workflows runs
        uses: ophub/delete-releases-workflows@main
        with:
          delete_releases: ${{ inputs.delete_releases }}
          delete_tags: ${{ inputs.delete_tags }}
          prerelease_option: ${{ inputs.prerelease_option }}
          releases_keep_latest: ${{ inputs.releases_keep_latest }}
          releases_keep_keyword: ${{ inputs.releases_keep_keyword }}
          delete_workflows: ${{ inputs.delete_workflows }}
          workflows_keep_day: ${{ inputs.workflows_keep_day }}
          workflows_keep_keyword: ${{ inputs.workflows_keep_keyword }}
          out_log: ${{ inputs.out_log }}
          gh_token: ${{ secrets.GITHUB_TOKEN }}


================================================
FILE: .gitignore
================================================
!.gitignore
/build
/tmp_dir
/build-armbian/kernel
/build-armbian/u-boot
/compile-kernel/kernel
/compile-kernel/output
/compile-kernel/tools/armbian
.DS_Store
npm-debug.log*
*.rej
*.orig
*~
\#*#


================================================
FILE: CONTRIBUTORS.md
================================================
# Armbian Contributors

First of all, thanks to [150balbes](https://github.com/150balbes) for the outstanding contributions and the solid foundation laid for running Armbian on Amlogic TV boxes. The [Armbian](https://github.com/armbian/build) system compiled here directly uses the latest official source code for real-time compilation. The program's design draws on tutorials from authors such as [ebkso](https://www.kflyo.com/howto-compile-armbian-for-n1-box). Thank you all for your dedication and sharing, enabling us to run the Armbian system on more devices.

The [u-boot](https://github.com/ophub/u-boot), [kernel](https://github.com/ophub/kernel), and other resources used in this system are primarily derived from the [unifreq/openwrt_packit](https://github.com/unifreq/openwrt_packit) project. Some files were contributed by users through [Pull Requests](https://github.com/ophub/amlogic-s9xxx-armbian/pulls) and [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues) in projects such as [amlogic-s9xxx-openwrt](https://github.com/ophub/amlogic-s9xxx-openwrt), [amlogic-s9xxx-armbian](https://github.com/ophub/amlogic-s9xxx-armbian), [luci-app-amlogic](https://github.com/ophub/luci-app-amlogic), [u-boot](https://github.com/ophub/u-boot), and [kernel](https://github.com/ophub/kernel). To acknowledge these pioneers and contributors, their contributions have been recorded in this document since the repository's creation on `2021-09-19`. Thanks again to everyone for breathing new life and purpose into these devices.

| Innovation and Contributors | Record of Achievements |
| ---- | ---- |
| [150balbes](https://github.com/150balbes) | Made outstanding contributions and laid a solid foundation for running Armbian on Amlogic TV boxes. |
| [unifreq](https://github.com/unifreq) | Developed numerous Armbian and OpenWrt systems, provided boot and firmware build solutions for SoCs ranging from s905d to s922x and beyond, and shared extensive resources and tutorials. The [u-boot](https://github.com/ophub/u-boot), [kernel](https://github.com/ophub/kernel), and other resources used on this site are fully based on his work. He opened the door to the world of Armbian and OpenWrt on TV boxes. |
| [NewbieOrange](https://github.com/NewbieOrange) | 01. [2021-11-14] He provided the `meson-gxm-t95z-plus.dtb` file and [usage method](build-armbian/armbian-files/platform-files/amlogic/bootfs/extlinux/) of the new device `T95Z-Plus` in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/22#issuecomment-968260448); Shared the `meson-gxl-s905l2-p281.dtb` file of s905l2 (p281 board) in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/29). Now called `meson-gxl-s905l2-x7-5g.dtb` |
| [pulpoff](https://github.com/pulpoff) | 02. [2021-11-24] He shared how to adjust [dtb freq](https://github.com/armbian/build/commit/d0831a7ce191759011d8a0f23019acebc2348149) and add new [display resolution](https://github.com/tobetter/linux/commit/248da29964751908c36e2c5558385ec09aed87ad) in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/31#issuecomment-974982500), and provided test firmware [download](https://vp5.net/king/); In [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/36), the test method for `supporting sound` is shared; In [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/34), the test method for `enabling Bluetooth` is shared. |
| [flymike](https://github.com/flymike) | 03. [2021-12-28] He shared the available `meson-gxbb-vega-s95-telos.dtb` and `u-boot-s905.bin` of the `Beelink-Mini-MX 2G` `s905` box in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/57) |
| [martinlanger90](https://github.com/martinlanger90) | 04. [2022-01-01] He tested and shared the `MECOOL-KI-Pro 2G/16G` `s905d` box using armbian system in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/59). The available dtb is `meson-gxl-s905d-mecool-ki-pro.dtb`, u-boot is `u-boot-p201.bin`, and it can be used in `5.4`, `5.10`, and `5.15` kernels. |
| [ErikPelli](https://github.com/ErikPelli) | 05. [2022-01-14] He reported in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/72#issuecomment-1013071513) that [Tanix-TX92](http://www.tanix-box.com/project-view/tanix-tx92-android-tv-box-powered-amlogic-s912/) and [VORKE-Z6-Plus](http://www.vorke.com/project/vorke-z6-2/) boxes can use the same configuration as [H96-Pro-Plus](https://www.gearbest.com/tv-box-mini-pc/pp_503486.html), and support writing to `eMMC` for use. Supports the use of `mouse` and `keyboard` under the `5.10 kernel`.  |
| [JFLim1](https://github.com/JFLim1) | 06. [2022-01-15] He shared the available `dtb` and `u-boot` of the `Beelink-GT-King-Pro (Revision A, Serial #SA9HH...)` `s922x` box in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/72#issuecomment-1012127495). After his tests, it was finally determined that the combination of `meson-g12b-gtking-pro.dtb` and `u-boot-gtkingpro-rev-a.bin` could be used. Mouse, keyboard, bluetooth, wireless are normal. |
| [flymike](https://github.com/flymike) | 07. [2022-01-16] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/79), in the `MECOOL-KM3-4G` `s905x2` box, the combination of `meson-g12a-sei510.dtb` and `u-boot-x96max.bin` can be used normally, supporting the `5.10 kernel`. Network, bluetooth, wireless are normal. |
| [JFLim1](https://github.com/JFLim1) | 08. [2022-01-18] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/81), He provided a solution to the `black screen` of the `gtking-pro-rev-a` box by disabling the `/etc/udev/rules.d/hdmi.rules` file. |
| [DiogoSilva48](https://github.com/DiogoSilva48) | 09. [2022-02-02] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/98), The `tbee-box` can use the default firmware of the `s905x`. He provided two ways to enable `wifi`. |
| [darkliang](https://github.com/darkliang) | 10. [2022-02-18] He submitted support for `Khadas-VIM3` box with SoC `A311D` in [Pull](https://github.com/ophub/amlogic-s9xxx-openwrt/pull/210), provided mainline U-BOOT file(`khadas-vim3-u-boot.sd.bin`) and configuration information. After his feedback, this box supports writing to `eMMC` and supports `5.4.y` and `5.10.y` kernels. |
| [atsdai](https://github.com/atsdai) | 11. [2022-03-01] He feedback the `Beelink-Mini-MX-2G` RTL8211F Ethernet TX fix in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/127). Now [unifreq](https://github.com/unifreq) has added this scheme to the default kernel ([5.4](https://github.com/unifreq/linux-5.4.y/commit/456817db17ec67621d347963e2100a331b5a089d) / [5.10](https://github.com/unifreq/linux-5.10.y/commit/86fb0e941db620ff8851ec95100d414dc95f13ad) / [5.15](https://github.com/unifreq/linux-5.15.y/commit/c4d36d65651570e0ef2d00541e3b9058f2182e93) / [5.16](https://github.com/unifreq/linux-5.16.y/commit/2cc6ab2ced2221235e39ef33e83b62b55bc3b28b) have been added), the name is: `meson-gxbb-beelink-mini-mx.dtb` |
| [Calmact](https://github.com/Calmact/e900v22c) | 12. [2022-03-02] He shared the solution of using Armbian system in `Skyworth E900V22C/D` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/129). After testing, the kernel 5.15 support `booting from USB` for use, support `100Mb wired network`, no wireless and Bluetooth. He plans to provide more support for this device, you can check the latest progress in his repository. |
| [danboid](https://github.com/danboid) | 13. [2022-03-09] He shared the `openvfd LED display driver and related resources` in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/143). After debugging and sharing by [unifreq](https://github.com/unifreq), it is now [supported](build-armbian/armbian-files/platform-files/amlogic/rootfs/usr/share/openvfd) to be used in six devices through the [armbian-openvfd](build-armbian/armbian-files/platform-files/amlogic/rootfs/usr/sbin/armbian-openvfd) command. |
| [parkjw0117](https://github.com/parkjw0117) | 14. [2022-03-12] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/158), in the `Mecool-M8S-PRO-L` `s912` box, the combination of `meson-gxm-q201.dtb` and `u-boot-s905x-s912.bin` can be used normally, supporting the `5.4/5.10 kernel`. The wired network is normal. Wireless and Bluetooth are not available. |
| [lx7741](https://github.com/lx7741) | 15. [2022-03-23] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/192), in the `X96 Air` `s905x3` box, the `x96air.conf` can be used normally. Same configuration as x96max.conf |
| [danboid](https://github.com/danboid) | 16. [2022-04-13] In [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/234) he shares the how-to to disable the IR receiver |
| [KryptonLee](https://github.com/KryptonLee) | 17. [2022-04-22] He developed and shared `u-boot-e900v22c.bin` and `e900v22c-u-boot.bin.sd.bin`. After his test, the firmware that supports `e900v22c/d` is written to `eMMC` for use. |
| [lanyucomputer](https://github.com/lanyucomputer) | 18. [2022-04-22] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/253), Determined the `octopus-planet (fake)` usage scheme, added the corresponding `bootloader` (`bl-fake-octopus-planet.bin`) and `armbian-install` options. |
| [rapdodge](https://github.com/rapdodge) | 19. [2022-04-24] After his test in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/262), `HG680P(s905x)` box can be installed in eMMC, dtb uses `meson-gxl-s905x-p212.dtb` file, u-boot uses `u-boot-p212.bin` file, can use `5.4.y/5.15.y` kernels. The 100Mb wired network works fine. |
| [psergeevich](https://github.com/psergeevich) | 20. [2022-04-27] Thanks to him for providing detailed motherboard layout, phy pin level test, iperf3 test and other very detailed test reports for x96max plus v5.1 (ip1001m phy) in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/258). The parameter scheme of `meson-sm1-x96-max-plus-ip1001m.dtb` is finally determined. Thanks to [unifreq](https://github.com/unifreq) for all the technical guidance and [kernel](https://github.com/unifreq/linux-5.15.y/commit/bca00ac86c16105b3f359bcb4e6c5d4011ae26b8) support for this NIC, which has now been added to his kernel repository. |
| [chris4git](https://github.com/chris4git) | 21. [2022-05-07] According to his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/285), added support for the use of `T95(s905x)` devices, and the corresponding `t95.conf` LED file. |
| [Smim0](https://github.com/Smim0) | 22. [2022-05-18] According to his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/315), added support for the use of `TX9-Pro(s912)(3G+32G+1Gb)` devices. Thanks to [unifreq](https://github.com/unifreq) for adding a dedicated dtb with `wifi` module for the device: `meson-gxm-tx9-pro.dtb` |
| [kodokskoprol](https://github.com/kodokskoprol) | 23. [2022-05-29] According to his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/260), `A95X(s912)` and `Nexbox A1(s912)` devices can use gigabit wired (`meson-gxm-nexbox-a1.dtb, u-boot-p212.bin`) normally, support kernels such as `5.10.y` and `5.15.y` etc. but the wireless network cannot be used (`ath10k`, `qca9377` chip, the wireless module is `Fn-Link 8223A-SR C07001 1727`) |
| [danboid](https://github.com/danboid) | 24. [2022-06-08] According to his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/366), `X96 Max Plus Q2(s905x3)` and `X96 Air Q1000(s905x3)` devices can use gigabit wired, Wireless and Bluetooth(qca9377) normally. According to his shared results, now `meson-sm1-x96-max-plus-q2.dtb` has been added to unifreq's 5.4.y, 5.10.y and [5.15.y](https://github.com/unifreq/linux-5.15.y/commit/5ed890ac09aaec7c0f2f2fc43a92212eaace41ac) series of kernels. |
| [SajjadSabzkar](https://github.com/SajjadSabzkar) | 25. [2022-06-15] Thanks for adding the question template in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/374). |
| [yujincheng08](https://github.com/yujincheng08) | 26. [2022-06-16] He added choice and boolean options to Actions in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/377) to make the operation more convenient. |
| sibondt | 27. [2022-07-16] He shared the `meson-gxm-nexbox-a2.dts` file of the `Nexbox A95X A2(s912)`, and he tested the Gigabit wired network, wireless, and bluetooth all working fine. He also reported that `B860H(s905x)` can be installed in emmc for use, dtb uses `meson-gxl-s905x-b860h.dtb` , and u-boot uses `u-boot-p212.bin` file. |
| [Fengke6](https://github.com/Fengke6) | 28. [2022-08-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/500), the `Tanix TX8 Max(s912)` box can be used normally, and the Gigabit wired, wireless, and Bluetooth all work normally, use `meson-gxm-tx8-max.dtb` file. |
| [xcray](https://github.com/xcray) | 29. [2022-08-27] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/517), A secure partition has been added to the `CM311-1a-YST(s905l3a)` box, and the data read and write operation errors under the btrfs partition have been resolved after testing. |
| [d5stick](https://github.com/d5stick) | 30. [2022-08-30] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/525), Added `Vontar X92(s912)` box support, Gigabit wired, wireless, bluetooth works fine. Added corresponding `meson-gxm-x92.dtb` support. |
| [livelier](https://github.com/livelier) | 31. [2022-09-01] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/506), Added `Tencent Aurora 3Pro(s905x3-b)` box support, Gigabit wired, wireless, bluetooth works fine. Added corresponding `meson-sm1-skyworth-lb2004-a4091.dtb` support. |
| [xcray](https://github.com/xcray) | 32. [2022-09-16] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/557), Added `Bluetooth` support for `CM311-1a-YST (s905l3a)`, `enhanced` wired network stability, and added dedicated `meson-g12a-s905l3a-cm311.dtb` file. |
| [skysurf](https://github.com/skysurf) | 33. [2022-09-23] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/570), `W95(s905w)` box can be installed in eMMC, dtb uses `meson-gxl-s905w-p281.dtb` file. |
| [janko888](https://github.com/janko888/MBH-M30xA) | 34. [2022-10-10] After his test feedback in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/615), add `M302A/M304A(s905l3-b)` box, can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file. |
| [livelier](https://github.com/livelier) | 35. [2022-10-13] After his shared and test feedback in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/619) and [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/736), add `Tencent Aurora 3Pro (s905x3-b)` box, dtb uses `meson-sm1-skyworth-lb2004-a4091.dtb` file, UBOOT_OVERLOAD is `u-boot-skyworth-lb2004.bin` file, MAINLINE_UBOOT is `skyworth-lb2004-u-boot.bin.sd.bin`, can be installed in eMMC, bluetooth and wireless use normally. supports `5.10.y`, `5.15.y`, `5.19.y` kernels and adds box partition table. |
| [TThanhXuan](https://github.com/TThanhXuan) | 36. [2022-10-16] According to his guidance, the `max-frequency` of eMMC is lowered so that the `X96 mini(s905w)` box can correctly identify the eMMC partition. After [box-automation1](https://github.com/box-automation1) test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/621), can be installed in eMMC, dtb uses `meson-gxl-s905w-x96-mini.dtb` file.  |
| [skysurf](https://github.com/skysurf) | 37. [2022-10-26] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/648), `MGV2000(s905l2)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, The 100Mb wired network works fine. |
| [thumsl](https://github.com/thumsl) | 38. [2022-10-28] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/645), `TX9(s905x)` box can be installed in eMMC, dtb uses `meson-gxl-s905x-tx9.dtb` file. He added wireless drivers and dts file for this device. The 100Mb wired network, wireless and bluetooth works fine. |
| [7Ji](https://github.com/7Ji) | 39. [2022-11-10] He shared the [ampart](https://github.com/7Ji/ampart/) partition tool developed by himself in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/689), which supports eMMC partition table adjustment of `Amlogic series devices`, and realizes all the space after `117 MiB`. This tool has now become the default tool for Armbian systems. |
| [puccio823](https://github.com/puccio823) | 40. [2022-11-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/337), `Sunvell T95M(s905)` box can be uses `meson-gxbb-p201.dtb` file. The 100Mb wired network works fine. |
| [birdxs](https://github.com/birdxs) | 41. [2022-11-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/522), `Phicomm-T1(s912)` box can be installed in eMMC, dtb uses `meson-gxm-phicomm-t1.dtb` file. The 100Mb wired network, wireless, bluetooth works fine. |
| [marchmin](https://github.com/marchmin) | 42. [2022-11-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/648), `Wojia-TV-IPBS9505(s905l2)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-ipbs9505.dtb` file. The 100Mb wired network works fine. |
| [janko888](https://github.com/janko888) | 43. [2022-11-27] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/732) and Configuration submitted in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/735), `M401A(s905l3a)` box can be installed in eMMC, dtb uses `meson-g12a-s905l3a-m401a.dtb` file. The 100Mb wired network works fine. |
| [CarlKuhligk](https://github.com/CarlKuhligk) | 44. [2022-11-27] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/734), `Q96 mini(s905lb)` box can be installed in eMMC, dtb uses `meson-gxl-s905x-p212.dtb` file. The 100Mb wired network works fine. |
| [rainups](https://github.com/rainups) | 45. [2022-11-29] According to his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/740), added support for the use of `TX9-Pro(s912)(2G+16G+100Mb)` devices, dtb uses `meson-gxm-q201.dtb` file, and u-boot uses `u-boot-p212.bin` file.  |
| [yangzhuang2333](https://github.com/yangzhuang2333) | 46. [2022-12-03] According to his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/741), added support for the use of `ZTE-B863AV3.2-M(s905l3a)` devices, First flash the Android system of `M401A(s905l3a)`, and use the same configuration, select `btrfs` format to write to eMMC. dtb uses `meson-g12a-s905l3a-m401a.dtb` file, and u-boot uses `u-boot-e900v22c.bin` file.  |
| [ours1505](https://github.com/ours1505) | 47. [2022-12-05] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/763), `CM311-1(s905l3)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot uses `u-boot-p212.bin` file. The 100Mb wired network works fine. |
| [dicsonpan](https://github.com/dicsonpan) | 48. [2022-12-07] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/779), `X96-Max-A100(s905x3)` box can be installed in eMMC, dtb uses `meson-sm1-sei610.dtb` file, and u-boot uses `u-boot-x96maxplus.bin` file. The 100Mb wired network, wireless and bluetooth works fine. |
| [livelier](https://github.com/livelier) | 49. [2022-12-09] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/782), `Ugoos-X3(s905x3)` box can be installed in eMMC, It can be used on the device with `the bootloader lock`. He shared the developed `ugoos-x3-u-boot.bin.sd.bin` and `u-boot-ugoos-x3.bin` files in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/786). |
| [mreser99](https://github.com/mreser99) | 50. [2022-12-10] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/351), `Tanix-Tx5-Max(S905x2)` box can be installed in eMMC, dtb uses `meson-g12a-x96-max.dtb` file, and u-boot uses `u-boot-x96max.bin` file, and MAINLINE_UBOOT uses `x96max-u-boot.bin.sd.bin` file. The 1Gb wired network works fine. |
| [tv4you2016](https://github.com/tv4you2016) | 51. [2022-12-10] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/788), `X96 Max+ Q1(S905x3)` box can be installed in eMMC, dtb uses `meson-sm1-x96-max-plus-q1.dtb` file, and u-boot uses `u-boot-x96max.bin` file. The 100Mb wired network works fine. |
| [RomanKozyrev](https://github.com/RomanKozyrev) | 52. [2022-12-24] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/851), `A95X-F2(S905x2)` box can be installed in eMMC, dtb uses `meson-g12a-x96-max-rmii.dtb` file, and u-boot uses `u-boot-x96max.bin` file. The 100Mb wired network works fine. |
| [trvqhuy](https://github.com/trvqhuy) | 53. [2023-01-10] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/909), `X96-Max+ 100W(S905x3)` box can be installed in eMMC, dtb uses `meson-sm1-x96-air.dtb` file, and u-boot uses `u-boot-x96maxplus.bin` file. The 100Mb wired network works fine. |
| [texaszc](https://github.com/texaszc) | 54. [2023-01-14] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/921), `MGV3000(S905l3)` box can be installed in eMMC, kernel uses `5.15.y`, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network works fine. |
| [tuzhis](https://github.com/tuzhis) | 55. [2023-01-18] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/939), `E900V22E(S905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-e900v22e.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network works fine (Need to flash to `Android 9` system). |
| [OPMonday](https://github.com/OPMonday) | 56. [2023-01-24] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/970), `UNT403A(S905l3a)` box can be installed in eMMC, dtb uses `meson-g12a-s905l3a-m401a.dtb` file, and u-boot uses `u-boot-e900v22c.bin` file. The 100Mb wired network works fine. |
| [1904688138](https://github.com/1904688138) | 57. [2023-01-27] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/978), `HG680-LC(S905l3)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot uses `u-boot-p212.bin` file. The 100Mb wired network works fine. |
| [13584452567](https://github.com/13584452567) | 58. [2023-02-01] He shared his support for `eaidk-610(rk3399)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/991), This device can be installed in eMMC, dtb uses `rk3399-eaidk-610.dtb` file. The Gigabit wired, wireless, bluetooth works fine. |
| [JordanPlayz158](https://github.com/JordanPlayz158) | 59. [2023-02-02] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/988), `X88 King(S922x)` can use the same configuration as `GT-King-Pro(S922x)`, Gigabit wired and Bluetooth work fine. But USB (keyboard, mouse, etc.) won't work. |
| [7Ji](https://github.com/7Ji) | 60. [2023-02-02] He shared his support for `BesTV R3300L(s905lb)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/993), This device can be installed in eMMC, dtb uses `meson-gxl-s905x-p212.dtb` file, MAINLINE_UBOOT uses `r3300l-u-boot.bin.sd.bin` file, UBOOT_OVERLOAD uses `u-boot-r3300l.bin` file. The 100Mb wired works fine. He also shared some source code for [making u-boot](https://github.com/7Ji/u-boot), how to use the [ampart tool](https://github.com/7Ji/ampart), etc. For details, see Pull Merge Information. |
| [d5stick](https://github.com/d5stick) | 61. [2023-02-04] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1006), `Vontar-X3(S905x3)` box can be installed in eMMC, dtb uses `meson-sm1-hk1box-vontar-x3.dtb` file, and u-boot uses `u-boot-x96maxplus.bin` file. The Gigabit wired network works fine. When using it, you need to flash into the Android system of HK1-Box(s905x3). |
| [daniyo27](https://github.com/daniyo27) | 62. [2023-02-12] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1044), `X96W/FunTV(S905w)` box can be installed in eMMC, dtb uses `meson-gxl-s905w-x96w.dtb` file. The 100Mb wired network, Wifi and Bluetooth all works fine. |
| [piotrekcrash](https://github.com/piotrekcrash) | 63. [2023-02-14] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1062), `Tx3-mini(s905w)` box can be installed in eMMC, dtb uses `meson-gxl-s905w-tx3-mini.dtb` file and u-boot use `u-boot-s905x-s912.bin` file. The 100Mb wired network. |
| [13584452567](https://github.com/13584452567) | 64. [2023-02-19] He shared his support for `king3399(rk3399)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1080), This device can be installed in eMMC, dtb uses `rk3399-king3399.dtb` file. The Gigabit wired, wireless, bluetooth works fine. |
| [irfanjunaid](https://github.com/irfanjunaid) | 65. [2023-02-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1077), `TX3-BZ(s905x3)` box can be installed in eMMC, dtb uses `meson-sm1-tx3-bz.dtb` file, Mainline u-boot is required. The 100Mb wired network, Wifi and Bluetooth all works fine. |
| [13584452567](https://github.com/13584452567) | 66. [2023-02-22] He shared his support for `tn3399(rk3399)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1094), This device can be installed in eMMC, dtb uses `rk3399-tn3399.dtb` file. The Gigabit wired, wireless, bluetooth works fine. |
| [yu13740000](https://github.com/yu13740000) | 67. [2023-02-23] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1100), `Vplus(allwinner-h6)` can start from `USB`, use `armbian-install` to write eMMC, and use `armbian-update` to update the kernel and use it normal. The u-boot and other resources used are from the OpenWrt project repository of [unifreq](https://github.com/unifreq/openwrt_packit). |
| [13584452567](https://github.com/13584452567) | 68. [2023-02-27] He shared his support for `TQC-A01(allwinner-h6)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1111), This device can be installed in eMMC, dtb uses `sun50i-h6-tqc-a01.dtb` file. The Gigabit wired, wireless, bluetooth works fine. |
| [yhxxm](https://github.com/yhxxm) | 69. [2023-03-03] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/921#issuecomment-1453143251), `M401A(s905l3)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot uses `u-boot-p212.bin` file. The 100Mb wired network. |
| [13584452567](https://github.com/13584452567) | 70. [2023-03-04] He shared his support for `KYLIN3399(rk3399)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1132), This device can be installed in eMMC, dtb uses `rk3399-kylin3399.dtb` file. The Gigabit wired, wireless, bluetooth works fine. |
| [salsabilng](https://github.com/salsabilng) | 71. [2023-03-04] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1086), He provided bluetooth support for `X96 Max+ 2101(s905x3)` box, can be installed in eMMC, dtb uses `meson-sm1-x96-max-plus-2101.dtb` file, and u-boot uses `u-boot-x96maxplus.bin` file. The Gigabit wired, wireless, bluetooth works fine. |
| [Choomai](https://github.com/Choomai) | 72. [2023-03-08] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1140), `MXQ-Pro-4K(s905w)` box can be installed in eMMC, dtb uses `meson-gxl-s905w-x96w.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network. |
| [gbsadmin](https://github.com/gbsadmin) | 73. [2023-03-10] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1154), `Hisense-IP103H(s905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. He also tested several other possible combinations. The 100Mb wired network. |
| [God-JohnDiamond](https://github.com/God-JohnDiamond) | 74. [2023-03-18] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1180), `CM211-1(s905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network. |
| [ketaksaan](https://github.com/ketaksaan) | 75. [2023-03-18] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1181), `Infinity-B32(s905x3)` box can be installed in eMMC, dtb uses `meson-sm1-h96-max-x3.dtb` file, and u-boot uses `u-boot-x96maxplus.bin` file. The Gigabit wired network and wireless works fine. |
| [taotao108](https://github.com/taotao108) | 76. [2023-03-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1190), `SumaVision-Q7(s905lb)` box dtb uses `meson-gxl-s905x-p212.dtb` file, and u-boot uses `u-boot-r3300l.bin` file. The 100Mb wired network and wireless works fine. |
| [qianbinbin](https://github.com/qianbinbin) | 77. [2023-03-21] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1175), `SumaVision-Q5(s905)` box need use `/boot/extlinux/extlinux.conf` file, dtb uses `meson-gxbb-p201.dtb` file, and u-boot uses `u-boot-s905.bin` file. The 100Mb wired network works fine. |
| [champion0117](https://github.com/champion0117) | 78. [2023-03-22] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/405), `M301A(s905l2)` box can be installed in eMMC(Downclock to 26Mhz), dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network works fine. |
| [buglloc](https://github.com/buglloc) | 79. [2023-03-26] He shared his support for `NanoPi-R5S(rk3568)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1217), dtb uses `rk3568-nanopi-r5.dtb` file. The Gigabit wired, wireless, bluetooth works fine. |
| [13584452567](https://github.com/13584452567) | 80. [2023-04-05] He shared his support for `ZCube1-Max(rk3399)` device in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1247), This device can be installed in eMMC, dtb uses `rk3399-hugsun-zm.dtb` file. The Gigabit wired works fine. |
| [piaoliuchong](https://github.com/piaoliuchong) | 81. [2023-04-07] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1256), `E900V22D(s905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network works fine. |
| [signigelchan](https://github.com/signigelchan) | 82. [2023-04-13] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1277), `UNT400G1(s905l3)` box can be installed in eMMC, dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, u-boot uses `u-boot-s905x-s912.bin` file, and use `extlinux.conf`. The 100Mb wired network works fine. |
| [lovl88](https://github.com/lovl88) | 83. [2023-04-13] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1278), `E900v21E(s905l2)` dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, u-boot uses `u-boot-s905x-s912.bin` file, and use `extlinux.conf`. The 100Mb wired network works fine. |
| [peagsus](https://github.com/peagsus) | 84. [2023-04-13] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1268), `CM311-1(s905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, u-boot uses `u-boot-s905x-s912.bin` file. The 100Mb wired network works fine. |
| [GD2021](https://github.com/GD2021) | 85. [2023-04-13] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1280), `CRRC(rk3399)` box can be installed in eMMC, dtb uses `rk3399-crrc.dtb` file. The Gigabit wired network works fine. |
| [giovEra](https://github.com/giovEra) | 86. [2023-04-23] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1313), `Station-M1,Bqeel-MVR9(rk3328)` box can be installed in eMMC, dtb uses `rk3328-box-trn9.dtb` file. The Gigabit wired network works fine. |
| [Ivanriver](https://github.com/Ivanriver) | 87. [2023-04-23] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1318), `CM211-1(s905l3)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, u-boot uses `u-boot-p212.bin` file. The 100Mb wired network works fine. |
| [GD2021](https://github.com/GD2021) | 88. [2023-04-23] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1317), `SMART-AM40(rk3399)` box can be installed in eMMC, dtb uses `rk3399-smart-am40.dtb` file. The Gigabit wired network works fine. |
| [inoeud](https://github.com/inoeud) | 89. [2023-04-24] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1326), `SW799(rk3399)` box can be installed in eMMC, dtb uses `rk3399-bozz-sw799.dtb` file. The Gigabit wired network works fine. |
| [tdleiyao](https://github.com/tdleiyao) | 90. [2023-04-25] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1319), `Panther-X2(rk3566)` box can be installed in eMMC, dtb uses `rk3566-panther-x2.dtb` file. The Gigabit wired network works fine. |
| [Jeagarm](https://github.com/Jeagarm) | 91. [2023-04-25] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1332), `TY1608(s905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, u-boot uses `u-boot-s905x-s912.bin` file, and Android 9.0 system. The 100Mb wired network works fine. |
| [gwx11111111](https://github.com/gwx11111111) | 92. [2023-05-04] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/415), `Beelink-IPC-R(rk3588)` box can be installed in eMMC, dtb uses `rk3588-nvr-demo-v10-android.dtb` file, Bluetooth and wireless are working properly, and `4*1G` + `2*2.5G` network cards are working fine. |
| [GD2021](https://github.com/GD2021) | 93. [2023-05-09] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1380), `ZYSJ(rk3399)` box can be installed in eMMC, dtb uses `rk3399-zysj.dtb` file. The Gigabit wired network works fine. The source of `zysj-rk3399_defconfig(u-boot)` and `k3399-zysj.dts` used is [cm9vdA/build-linux](https://github.com/cm9vdA/build-linux) repository. |
| [9runner](https://github.com/9runner) | 94. [2023-05-18] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1166), `Whale(s905x3)` box can be installed in eMMC. You can use the same configuration as `x96-max+(s905x3)`. When using the `6.1.y` kernel series, it is necessary to use the mainline u-boot (`armbian-install -m yes`). The Gigabit wired network works fine. |
| [shuye1728](https://github.com/shuye1728) | 95. [2023-05-18] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1405), `XiaoMI-3S(s905x)` box can use the `T95(s905x)` image. This device does not have an Ethernet port and can be used `wirelessly`. It can be written to eMMC for use, and the 6.1.y series kernel can also be used. |
| [Drafteed](https://github.com/Drafteed) | 96. [2023-06-13] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1480), `X96(s905x)` box can use the `T95(s905x)` image. It can be written to eMMC for use, and the 6.1.y series kernel can also be used. |
| [orientzane](https://github.com/orientzane) | 97. [2023-06-14] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1481), the `UNT402A(s905l3)` box can use the default image for `s905l3` and is compatible with the 5.15.y and 6.1.y series kernels. Currently, it can only be used with `USB` and is unable to write to NAND storage. |
| [lauren12133](https://github.com/lauren12133) | 98. [2023-06-20] After his test feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1492), `DG-3399(rk3399)` box can be installed in eMMC, dtb uses `rk3399-dg3399.dtb` file. The Gigabit wired network works fine. |
| [janko888](https://github.com/janko888) | 99. [2023-06-22] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1481) and [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1499), the `UNT402A(s905l)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, and u-boot use `u-boot-p212.bin`. The 100Mb wired network works fine. |
| [w2xg2022](https://github.com/w2xg2022) | 100. [2023-06-27] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1512), the `ZXV10-BV310(s905l3)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, and u-boot use `u-boot-s905x-s912.bin`. The 100Mb wired network works fine. |
| [yu6zhou](https://github.com/yu6zhou) | 101. [2023-06-27] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1508), the `CM311-1a-CH(s905l3a)` box can be installed in eMMC, dtb uses `meson-g12a-s905l3a-e900v22c.dtb` file, and u-boot use `u-boot-e900v22c.bin`. The 100Mb wired network works fine. |
| [hzlyu123](https://github.com/hzlyu123) | 102. [2023-06-29] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/444), the `M201-S(s905l)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-m302a.dtb` file, and u-boot use `u-boot-p212.bin`. The 100Mb wired network works fine. |
| [WallcroftUK](https://github.com/WallcroftUK) | 103. [2023-06-30] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/451), the `SmartLabs SML-5442TW(s905d)` box can be installed in eMMC, dtb uses `meson-gxl-s905d-sml5442tw.dtb` file, and u-boot use `u-boot-s905x-s912.bin`. The 100Mb wired network works fine. |
| [jietech17](https://github.com/jietech17) | 104. [2023-06-30] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1514), the `e900v21e(s905l3b)` box can be installed in eMMC, dtb uses `meson-gxl-s905l3b-e900v22e.dtb` file, and u-boot use `u-boot-s905x-s912.bin`. The 100Mb wired network works fine. |
| [orientzane](https://github.com/orientzane) | 105. [2023-07-05] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1520), the `IP112H(s905l3a)` box dtb uses `meson-g12a-s905l3a-e900v22c.dtb` file, and u-boot use `u-boot-e900v22c.bin`. The 100Mb wired network and Bluetooth works fine. |
| [rongchuan17](https://github.com/rongchuan17) | 106. [2023-07-17] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1549) and [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1556), the `Emb3531(rk3399)` box dtb uses `rk3399-emb3531.dtb` file. The Gigabit wired network works fine. |
| [aaftio](https://github.com/aaftio) | 107. [2023-07-25] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1568), the `TY1608(s905l3b)` box dtb uses `meson-gxl-s905l2-x7-5g.dtb` file, and u-boot use `u-boot-s905x-s912.bin`. The 100Mb wired network and Bluetooth works fine. |
| [aaftio](https://github.com/aaftio) | 108. [2023-07-25] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1570), the `MG101(s905lb)` box dtb uses `meson-gxl-s905x-p212.dtb` file, and u-boot use `u-boot-r3300l.bin`. The 100Mb wired network and Bluetooth works fine. |
| [inoeud](https://github.com/inoeud) | 109. [2023-08-12] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1609), the `Leez-p710(rk3399)` box dtb uses `rk3399-leez-p710.dtb` file. The Gigabit wired network and Bluetooth works fine. |
| [locAtt](https://github.com/locAtt) | 110. [2023-08-15] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1613), the `MGV2000(s905l3b)` box dtb uses `meson-gxl-s905l3b-e900v22e.dtb` file, u-boot use `u-boot-s905x-s912.bin` file. Using the 5.15.y kernel, it is possible to write to eMMC for usage. The 6.1.y kernel can only be used when running from USB. The 100Mb wired network works fine. |
| [aolin2000](https://github.com/aolin2000) | 111. [2023-08-15] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1598), the `B860AV-2.1M(s905l3b)` box dtb uses `meson-gxl-s905l3b-m302a.dtb` file, u-boot use `u-boot-s905x-s912.bin` file. The 100Mb wired network works fine. |
| [araczkowski](https://github.com/araczkowski) | 112. [2023-08-18] According to his feedback in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1621), the `X88-Pro-X3(s905x3)` box dtb uses `meson-sm1-x88-pro-x3.dtb` file, u-boot use `u-boot-x96maxplus.bin` and `x96maxplus-u-boot.bin.sd.bin` files. Gigabit wired, wireless, and Bluetooth are functioning properly. |
| [kongjun0](https://github.com/kongjun0) | 113. [2023-08-18] According to his feedback in [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1217), the `NanoPi-R5C(rk3568)` box dtb uses `rk3568-nanopi-r5c.dtb` file. The Gigabit wired network works fine. The `u-boot` and `dtb` used are from the project [inindev/nanopi-r5](https://github.com/inindev/nanopi-r5). |
| [13584452567](https://github.com/13584452567) | 114. [2023-08-21] According to his feedback in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1638) request, the `TQC-A01(h6)` box has received support. The used dtb is `sun50i-h6-tqc-a01.dtb`, and the u-boot version is `u-boot-sunxi-with-spl.bin`. The 100Mbps wired network works fine. |
| [shijifeizhai](https://github.com/shijifeizhai) | 115. [2023-08-23] According to his feedback in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1644) request, the `S65(s905m-b)` box has received support. The used dtb is `meson-gxl-s905x-p212.dtb`, and the u-boot version is `u-boot-r3300l.bin`. The 100Mbps wired network works fine. |
| [13584452567](https://github.com/13584452567) | 116. [2023-09-06] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1687) request, the `tvi3315a(rk3399)` box has received support. The used dtb is `rk3399-tvi3315a.dtb`. The Gigabit wired network works fine. |
| [khancyr](https://github.com/khancyr) | 117. [2023-09-11] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1714) request, the `nexbox-a95x(s905x)` box has received support. The used dtb is `meson-gxl-s905x-nexbox-a95x.dtb`, and u-boot is `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [yycvip](https://github.com/yycvip) | 118. [2023-09-18] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1712) request, the `unt403a(s905l3b)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, and u-boot is `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [doyoman](https://github.com/doyoman) | 119. [2023-09-23] Based on the feedback he provided in the [chat group](https://github.com/ophub/amlogic-s9xxx-armbian/issues/852), `Beikeyun(rk3328)` has implemented a `new u-boot` scheme and `GPT` partition format for their devices, allowing for smooth startup and operation. Both MSDOS and GPT formats are supported for partitioning. |
| [liaoya](https://github.com/liaoya) | 120. [2023-10-19] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/491) request, the `firefly(rk3399)` box has received support. The used dtb is `rk3399-firefly.dtb`. The Gigabit wired network works fine. The DTS and U-Boot used are from `150balbes` |
| [r1172464137](https://github.com/r1172464137) | 121. [2023-10-28] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1790) request, the `Fine3399(rk3399)` box has received support. The used dtb is `rk3399-fine3399.dtb`. The Gigabit wired network works fine. The DTS and U-Boot used are from [cm9vdA/build-linux](https://github.com/cm9vdA/build-linux) |
| [foobarjimmy](https://github.com/foobarjimmy) | 122. [2023-10-31] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1817) request, the `M411A(s905l3)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, and u-boot is `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [foobarjimmy](https://github.com/foobarjimmy) | 123. [2023-11-03] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1826) request, the `MiBox-4C(s905l-s)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb` / `meson-gxl-s905l-venz-v10.dtb` / `meson-gxl-s905l2-x7-5g.dtb`, and u-boot is `u-boot-p212.bin` / `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [sleepwalkera](https://github.com/sleepwalkera) | 124. [2023-11-08] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1839) request, the `MGV2000-K(s905l2)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, and u-boot is `u-boot-s905x-s912.bin`. The 100Mbps wired network works and Bluetooth fine. |
| [shijifeizhai](https://github.com/shijifeizhai) | 125. [2023-11-15] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1860) request, the `RG020ET-CA(s905l3b)` box has received support. The used dtb is `meson-gxl-s905l3b-e900v22e.dtb`, and u-boot is `u-boot-s905x-s912.bin`, boot config use `extlinux.conf`. The 100Mbps wired network works fine. |
| [sehczaa](https://github.com/sehczaa) | 126. [2023-11-16] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1861) request, the `Renegade(RK3328)` box has received support. The used dtb is `rk3328-roc-cc.dtb`. The Gigabit wired network works fine. |
| [unifreq](https://github.com/unifreq) | 127. [2023-11-16] Support for the `jp-tvbox(rk3566)` device has been added using configuration files such as dtb from `unifreq`, used dtb is `rk3566-jp-tvbox.dtb`. It includes support for the `SATA` interface, and the Gigabit Ethernet is functioning properly. Your feedback on the usage in [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1861) is welcome. |
| [unifreq](https://github.com/unifreq) | 128. [2023-11-18] Support for `HLink-h28k/h66k/h68k/h69k/h88k/h88k-v3` devices has been added to the series of files, including u-boot and dtb, etc. developed by `unifreq`. We welcome feedback on usage in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1726) location. |
| [phuonganh2601](https://github.com/phuonganh2601) | 129. [2023-11-21] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1882) request, the `TX3-Mini(s912)` box has received support. The used dtb is `meson-gxm-q201.dtb`, and u-boot is `u-boot-s905x-s912.bin`, boot config use `extlinux.conf`. The 100Mbps wired network works fine. |
| [dz515704201](https://github.com/dz515704201) | 130. [2023-12-03] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1912) request, the `MG101(s905l)` box has received support. The used dtb is `meson-gxl-s905l-venz-v10.dtb`, and u-boot is `u-boot-p212.bin`. The 100Mbps wired network and HDMI works fine. |
| [chiqianjiqi](https://github.com/chiqianjiqi) | 131. [2024-01-11] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2012) request, the `ZXV10 B860AV3.2-M(s905l3)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [sehczaa](https://github.com/sehczaa) | 132. [2024-01-13] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2017) request, the `Seewo-sv21(rk3568)` box has received support. The used dtb is `rk3568-seewo-sv21.dtb`. Two Gigabit wired network works fine. |
| [kuuer](https://github.com/kuuer) | 133. [2024-01-19] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2026) request, the `LX-R3S(rk3399)` box has received support. The used dtb is `rk3399-lx-r3s.dtb`. The Gigabit wired network works fine. |
| [kuuer](https://github.com/kuuer) | 134. [2024-01-24] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2050) request, the `hugsun-x99(rk3399)` box has received support. The used dtb is `rk3399-hugsun-x99.dtb`. The Gigabit wired network works fine. |
| [Cp0204](https://github.com/Cp0204) | 135. [2024-01-29] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2058) request, the `E900V22D-2(S905L3)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [yicheng42](https://github.com/yicheng42) | 136. [2024-02-22] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2101) request, the `MiBox-4(S905L)` box has received support. The used dtb is `meson-gxl-s905l-venz-v10.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [shijifeizhai](https://github.com/shijifeizhai) | 137. [2024-03-02] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2127) request, the `e900v21d(S905L2)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [shijifeizhai](https://github.com/shijifeizhai) | 138. [2024-03-02] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2127) request, the `s65(S905LB)` box has received support. The used dtb is `meson-gxl-s905x-p212.dtb`, u-boot used `u-boot-r3300l.bin`. The 100Mbps wired network works fine. |
| [13584452567](https://github.com/13584452567) | 139. [2024-03-02] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2129) request, the `rk3318-box(rk3318)` box has received support. The used dtb is `rk3318-box.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [chute8427](https://github.com/chute8427) | 140. [2024-03-10] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2146) request, the `tb-ls3399(rk3399)` box has received support. The used dtb is `rk3399-tb-ls3399.dtb`, u-boot used `uboot.img`, `trust.bin` and `idbloader.bin`. The Gigabit wired network works fine. |
| [bnaand](https://github.com/bnaand) | 141. [2024-03-12] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2155) request, the `Mrkaio-m68s(rk3568)` box has received support. The used dtb is `rk3568-mrkaio-m68s.dtb`, u-boot used `u-boot.itb`, `idbloader.img`. The Gigabit wired network works fine. |
| [haochn](https://github.com/haochn) | 142. [2024-03-24] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2188) request, the `CM201-1-YS(s095l2)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-s905x-s912.bin`, boot config add `extlinux.conf`. The 100Mbps wired network works fine. |
| [wgbingo](https://github.com/wgbingo) | 143. [2024-04-04] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2209) request, the `CM201-1-YS(s095l3b)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [longjuanfeng05](https://github.com/longjuanfeng05) | 144. [2024-04-15] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2241) request, the `OneCloudPro-V1.1_V1.2(s912)` box has received support. The used dtb is `meson-gxm-octopus-planet.dtb`, u-boot used `u-boot-zyxq.bin`. The Gigabit wired network works fine. |
| [shuzhizhi](https://github.com/shuzhizhi) | 145. [2024-04-26] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2273) request, the `ZXV10-B860AV2.1-U(s905l3)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [hunter24099](https://github.com/hunter24099) | 146. [2024-04-27] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2246) request, the `Hisense-hs530r(rk3399)` box has received support. The used dtb is `rk3399-hs530r.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [Pat-78](https://github.com/Pat-78) | 147. [2024-05-01] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2282) request, the `A95X-F3-Air(s905x3)` box has received support. The used dtb is `meson-sm1-a95xf3-air.dtb`, u-boot used `u-boot-x96maxplus.bin`. The 100Mbps wired network works fine. |
| [AboutCXJ](https://github.com/AboutCXJ) | 148. [2024-05-03] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2292) request, the `B863AV3.1-M2(s905l3ab)` box has received support. The used dtb is `meson-g12a-s905l3a-e900v22c.dtb`, u-boot used `u-boot-e900v22c.bin`. The 100Mbps wired network works fine. |
| [unifreq](https://github.com/unifreq) | 149. [2024-05-19] Copied u-boot and other relevant information from [unifreq's](https://github.com/unifreq) repository for radxa `rock5c(rk3588s)` & `e20c(rk3528)`, and added support for these two devices. |
| [Jstzo2u](https://github.com/Jstzo2u) | 150. [2024-06-01] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2341) request, the `E900V21C(s905l)` box has received support. The used dtb is `meson-gxl-s905l-venz-v10.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [shirakawa-poi](https://github.com/shirakawa-poi) | 151. [2024-06-02] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2347) request, the `UNT402A(s905l3)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [shijifeizhai](https://github.com/shijifeizhai) | 151. [2024-06-09] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2357) request, the `IP108H-53u1m(s905l)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [yonggedebaqi](https://github.com/yonggedebaqi) | 152. [2024-07-01] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2400) request, the `Orange-Pi-5-Plus(rk3588)` box has received support. The used dtb is `rk3588-orangepi-5-plus.dtb`, u-boot is the same as rock5b(rk3588). The 2.5-Gigabit wired network works fine. |
| [wanglixiang90](https://github.com/wanglixiang90) | 153. [2024-07-03] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2403) request, the `Tpm312(rk3588)` box has received support. The used dtb is `rk3399-tpm312.dtb`. The Gigabit wired network works fine. |
| [dy008](https://github.com/dy008) | 154. [2024-07-05] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2407) request, the `Swan1-w28(rk3568)` box has received support. The used dtb is `rk3568-swan1-w28.dtb`. The Gigabit wired network works fine. |
| [d5stick](https://github.com/d5stick) | 155. [2024-07-09] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2404) request, the `H96-Max-M2(rk3528)` box has received support. The used dtb is `rk3528-mangopi-m28k.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [Leona233](https://github.com/Leona233) | 156. [2024-07-26] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2447) request, the `E900V21D(s905l3b)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [hunter24099](https://github.com/hunter24099) | 157. [2024-07-26] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2446) request, the `ZK-rk39a(rk3399)` box has received support. The used dtb is `rk3399-zk-r39a.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The Gigabit wired network works fine. |
| [Hx0531](https://github.com/Hx0531) | 158. [2024-08-09] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/pull/993#issuecomment-2276804591) request, the `IPBS9505(s905lb)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [DavidTsou](https://github.com/DavidTsou) | 159. [2024-08-09] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2465) request, the `Tencent-Aurora-1s(s905l)` box has received support. The used dtb is `meson-gxl-s905x-p212.dtb`, u-boot used `u-boot-s905x-s912.bin`. The wireless network works fine. |
| [qfnuzlr](https://github.com/qfnuzlr) | 160. [2024-08-19] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2491) request, the `B860AV2.1(s905l)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [Xianleewu](https://github.com/Xianleewu) | 161. [2024-08-29] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2508) request, we also thank [ysuolmai](https://github.com/ysuolmai) for providing relevant information and feedback. the `ruisen-box(rk3568)` box has received support. The used dtb is `rk3568-ruisen-box.dtb`, u-boot used `bootloader.bin`. The 2x1Gigabit wired network works fine. |
| [ccu6](https://github.com/ccu6) | 162. [2024-09-10] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2538) request. the `lckfb-tspi(rk3566)` box has received support. The used dtb is `rk3566-taishanpi-v10.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [DavidTsou](https://github.com/DavidTsou) | 163. [2024-09-10] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2499) request. the `ZXV10-B860AV2.1U(s905l)` box has received support. The used dtb is `meson-gxl-s905x-tx9.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [tinytinycn](https://github.com/tinytinycn) | 164. [2024-09-26] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2539) request. the `CM201-1-6-YS(s905l3)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [ASFLY61](https://github.com/ASFLY61) | 165. [2024-10-06] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2585) request. the `HM201(s905l)` box has received support. The used dtb is `meson-gxl-s905x-tx9.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [w2xg2022](https://github.com/w2xg2022) | 166. [2024-10-21] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2598) request. the `IP108H(s905l2)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [w2xg2022](https://github.com/w2xg2022) | 167. [2024-10-29] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2616) request. the `MGV2000-CW(s905l2)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [bambizlu](https://github.com/bambizlu) | 168. [2024-11-03] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2625) request. the `UNT400G(s905l3)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [bambizlu](https://github.com/bambizlu) | 169. [2024-11-24] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2658) request. the `IP108H(s905l3)` box has received support. The used dtb is `meson-gxl-s905l2-x7-5g.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [stevenliuit](https://github.com/stevenliuit) | 170. [2024-11-27] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2661) request. the `DG-TN3568(rk3568)` box has received support. The used dtb is `rk3568-dg-tn3568.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [doyoman](https://github.com/doyoman) | 171. [2024-12-05] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2691) request. the `Fmx1-Pro(rk3399)` box has received support. The used dtb is `rk3399-fmx1-pro.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [zakuwaki](https://github.com/zakuwaki) | 172. [2024-12-06] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2673) request. the `yskj(rk3399)` box has received support. The used dtb is `rk3399-yskj.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The Gigabit wired network works fine. |
| [andyfanybo](https://github.com/andyfanybo) | 173. [2025-01-18] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736) request. the `WXY-OEC-turbo-4g(Replaced-Chip-and-eMMC)(rk3566)` box has received support. The used dtb is `rk3566-wxy-oec-turbo-4g.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [dy008](https://github.com/dy008) | 174. [2025-03-01] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2817) request. the `Smart-Am60(rk3588)` box has received support. The used dtb is `rk3588-smart-am60.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [stevenliuit](https://github.com/stevenliuit) | 175. [2025-04-15] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2911) request. the `Alark35-3500(rk3568)` box has received support. The used dtb is `rk3568-alark35-3500.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 100Mbps wired network works fine. |
| [loadnl](https://github.com/loadnl) | 176. [2025-05-20] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/748) request. the `Sv-33a6x(rk3399)` box has received support. The used dtb is `rk3399-sv-33a6x.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [Kwonelee](https://github.com/Kwonelee) | 177. [2025-06-06] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/744) request. the `Station-M2(rk3566)` box has received support. The used dtb is `rk3566-roc-pc.dtb`, u-boot used `u-boot.bin`. The Gigabit wired network works fine. |
| BeiXiang | 178. [2025-06-15] According to the contribution shared by `BeiXiang`, support for the `wxy-oes (a311d)` device has been provided. You can join the discussion in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2666) section. this box has received support. The used dtb is `meson-g12b-oes.dtb`. The Gigabit wired network works fine. |
| [dd-ray](https://github.com/dd-ray) | 179. [2025-06-29] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736) request. the `WXY-OEC-turbo-4g(Original-Edition)(rk3566)` box has received support. The used dtb is `rk3566-wxy-oec-turbo-4g.dtb`, u-boot used `bootloader.bin`. The SATA and Gigabit wired network works fine. |
| [caojiezi2003](https://github.com/caojiezi2003) | 180. [2025-07-20] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3029) request. the `WXY-OES-Plus(s922x)` box has received support. The used dtb is `meson-g12b-oes-plus.dtb`. The 3xSATA and 1xGigabit/1x300M wired network works fine. This DTB was designed through reverse engineering based on the `kaitian888` DTB. Thanks to extensive testing and feedback from `retro98boy`, `zjycb`, `caojiezi2003`, `yesterday666`, `yaodmin`, and others, we finally arrived at a fully functional version. Sincere thanks to all these contributors for their valuable support. |
| [lighthx](https://github.com/lighthx) | 181. [2025-07-27] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/3052) request. the `Orangepi-5B(rk3588s)` box has received support. The used dtb is `rk3588s-orangepi-5b.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [JiaHeWG](https://github.com/JiaHeWG) | 182. [2025-07-30] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3055) request. the `M301A(s905l3)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-p212.bin`. The 100Mbps wired network works fine. |
| [bluemeda](https://github.com/bluemeda) | 183. [2025-08-16] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/3089) request. the `HG680-FJ(s905x2)` box has received support. The used dtb is `meson-g12a-hg680-fj.dtb`, u-boot used `u-boot-x96max.bin`. The 100Mbps wired network works fine. |
| [Arthur97172](https://github.com/Arthur97172) | 184. [2025-09-11] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2978) request. the `Wocyber-A3(rk3568)` box has received support. The used dtb is `rk3568-wocyber-a3.dts`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [sib0ndt](https://github.com/sib0ndt) | 185. [2025-10-09] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-openwrt/pull/827) request. the `Photonicat(rk3568)` box has received support. The used dtb is `rk3568-photonicat.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The Gigabit wired network works fine. |
| [fgpx78](https://github.com/fgpx78) | 186. [2025-11-25] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3245) request. the `MeCool-m8s-pro-W(s905w)` box has received support. The used dtb is `meson-gxl-s905w-tx3-mini.dtb`, u-boot used `u-boot-s905x-s912.bin`. The Gigabit wired network works fine. |
| [rickmschulz](https://github.com/rickmschulz) | 187. [2025-12-02] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3256) request. the `BTV9(s905x)` box has received support. The used dtb is `meson-gxl-s905x-p212.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [liubei1998](https://github.com/liubei1998) | 188. [2025-12-09] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/845) request. the `nsy-g68-plus(rk3568)` box has received support. The used dtb is `rk3568-nsy-g68-plus.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 5xGigabit wired network works fine, Wireless works normally. |
| [linai081795](https://github.com/linai081795) | 189. [2025-12-12] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/847) request. the `bdy-g18-pro(rk3568)` box has received support. The used dtb is `rk3568-bdy-g18-pro.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 5xGigabit wired network works fine, Wireless works normally. |
| [xiaomeng9597](https://github.com/xiaomeng9597) | 190. [2025-12-12] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/845) request. the `nsy-g16-plus(rk3568)` box has received support. The used dtb is `rk3568-nsy-g16-plus.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 5xGigabit wired network works fine, Wireless works normally. |
| [siliconbanana](https://github.com/siliconbanana) | 191. [2025-12-13] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3272) request. the `M411A(s905l3b)` box has received support. The used dtb is `meson-gxl-s905l3b-e900v22e.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [Eksol](https://github.com/Eksol) | 192. [2025-12-19] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3282) request. the `Tanix-TX9S(s912)` box has received support. The used dtb is `meson-gxm-octopus-planet.dtb`, u-boot used `u-boot-zyxq.bin`. The Gigabit wired network works fine. |
| [lakalin](https://github.com/lakalin) | 193. [2025-12-26] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3221) request. the `Gzpeite-P01(rk3568)` box has received support. The used dtb is `rk3568-gzpeite.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 2xGigabit wired network works fine. |
| [dengweiwen](https://github.com/dengweiwen) | 194. [2026-01-08] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3306) request. the `CM3588-NAS(rk3588)` box has received support. The used dtb is `rk3588-friendlyelec-cm3588-nas.dtb`, u-boot used `u-boot-rockchip.bin`. The 1xGigabit wired network works fine. |
| [xzq849](https://github.com/xzq849) | 195. [2026-01-13] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/158) request. the `Orange-Pi-Zero3(H618)` box has received support. The used dtb is `sun50i-h618-orangepi-zero3.dtb`, u-boot used `u-boot-sunxi-with-spl.bin`. The 1xGigabit wired network works fine. |
| [Haaooo](https://github.com/Haaooo) | 196. [2026-01-18] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3207) request. the `NanoPi-m5(rk3576)` box has received support. The used dtb is `rk3576-nanopi-m5.dtb`, u-boot used `u-boot-rockchip.bin`. The 2xGigabit wired network works fine. |
| [chongshengB](https://github.com/chongshengB) | 197. [2026-01-20] According to his sharing in the [Pull](https://github.com/ophub/u-boot/pull/28) request. the `TaraM(rk3399)` box has received support. The used dtb is `rk3399-taram.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The 1xGigabit wired network works fine. |
| [chengdataon-source](https://github.com/chengdataon-source) | 198. [2026-01-21] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/250) request. the `Fmx1-Pro-B(rk3399)` box has received support. The used dtb is `rk3399-fmx1-pro-b.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The 1xGigabit wired network works fine. |
| [GinRyan](https://github.com/GinRyan) | 199. [2026-01-22] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/261) request. the `Orange-Pi-3B(rk3566)` box has received support. The used dtb is `rk3566-orangepi-3b.dtb`, u-boot used `u-boot-rockchip.bin`. The 1xGigabit wired network works fine. |
| [siasbaily](https://github.com/siasbaily) | 200. [2026-01-23] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/271) request. the `OES-Plus-V2.1(s922x)` box has received support. The used dtb is `meson-g12b-s922x-oes-plus-v2.dtb`, u-boot used `u-boot-s905x2-s922.bin`. The 1xGigabit wired network works fine. |
| [cnMeeko](https://github.com/cnMeeko) | 201. [2026-02-01] According to his sharing in the [Pull](https://github.com/ophub/u-boot/pull/30) request. the `NanoPC-T4(rk3399)` box has received support. The used dtb is `rk3399-nanopc-t4.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The 1xGigabit wired network works fine. |
| [a1303045940](https://github.com/a1303045940) | 202. [2026-02-01] According to his sharing in the [Pull](https://github.com/ophub/u-boot/pull/29) request. the `BDKJ-One(rk3568)` box has received support. The used dtb is `rk3568-bd-one.dtb`, u-boot used `idbloader.img`, `u-boot.itb`. The 5xGigabit wired network works fine. |
| [Javier-Huang](https://github.com/Javier-Huang) | 203. [2026-02-02] According to his sharing in the [Pull](https://github.com/ophub/fnnas/pull/350) request. the `Station-P2(rk3568)` box has received support. The used dtb is `rk3568-roc-pc.dtb`, u-boot used `u-boot-rockchip.bin`. The 2xGigabit wired network works fine. |
| [lentll](https://github.com/lentll) | 204. [2026-02-02] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/355) request. the `Rock-5-ITX(rk3588)` box has received support. The used dtb is `rk3588-rock-5-itx.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 2x2.5Gigabit wired network works fine. |
| [maxwell-hub](https://github.com/maxwell-hub) | 205. [2026-02-03] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3354) request. the `Firefly-Core-3399-JD4(rk3399)` box has received support. The used dtb is `rk3399-firefly-core-3399-jd4.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The 1Gigabit wired network works fine. |
| [shanshuise](https://github.com/shanshuise) | 206. [2026-02-05] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3339) request. the `AIO-3399C(rk3399)` box has received support. The used dtb is `rk3399-aio-3399c.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The 1Gigabit wired network works fine. |
| [jun9100](https://github.com/jun9100) | 207. [2026-02-09] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3339) request. the `AIO-3399C(AI)(rk3399)` box has received support. The used dtb is `rk3399-aio-3399c-ai.dtb`, u-boot used `trust.bin`, `uboot.img` and `idbloader.bin`. The 1Gigabit wired network works fine. |
| [MaxCrazy1101](https://github.com/MaxCrazy1101) | 208. [2026-02-12] According to his sharing in the [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pull/3387) request. the `LZ-D3568(rk3568)` box has received support. The used dtb is `rk3568-lz-d3568-v3.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 1Gigabit wired network works fine. |
| [Crazh3](https://github.com/Crazh3) | 209. [2026-03-05] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3328) request. the `LZ-D3588(rk3588)` box has received support. The used dtb is `rk3588-lz-d3588.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 2x1Gigabit wired network works fine. |
| [xf110](https://github.com/xf110) | 210. [2026-03-10] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/464) request. the `HK1-Rbox-K8S(rk3528)` box has received support. The used dtb is `rk3528-hk1-rbox-k8s.dtb`, u-boot used `bootloader.bin`. The 100Mbps wired network works fine. |
| [xf110](https://github.com/xf110) | 211. [2026-03-10] According to his sharing in the [Issues](https://github.com/ophub/fnnas/issues/464) request. the `HT2(rk3528)` box has received support. The used dtb is `rk3528-ht2.dtb`, u-boot used `bootloader.bin`. The 1Gigabit wired network works fine. |
| [MikuChat](https://github.com/MikuChat) | 212. [2026-03-15] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3372) request. the `Sv-33a6x(VPU)(rk3399)` box has received support. The used dtb is `rk3399-sv-33a6x-vpu.dtb`, u-boot used `u-boot-rockchip.bin`. The 1Gigabit wired network works fine. |
| [LSP0123](https://github.com/LSP0123) | 213. [2026-03-16] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3302) request. the `Inspur-CD1000-Cloud-PC(rk3528)` box has received support. The used dtb is `rk3528-cd1000.dtb`, u-boot used `bootloader.bin`. The 100Mbps wired network works fine. |
| [itdoginfo](https://github.com/itdoginfo) | 214. [2026-03-16] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3432) request. the `UNT400G(s905l3)` box has received support. The used dtb is `meson-gxl-s905l3b-m302a.dtb`, u-boot used `u-boot-s905x-s912.bin`. The 100Mbps wired network works fine. |
| [nblky](https://github.com/nblky) | 215. [2026-03-19] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3437) request. the `Boca-tcn100(rk3588s)` box has received support. The used dtb is `rk3588s-boca-tcn100.dtb`, u-boot used `u-boot.itb` and `idbloader.img`. The 1Gigabit wired network works fine. |
| [infirms](https://github.com/infirms) | 216. [2026-03-20] According to his sharing in the [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3441) request. the `TOX1(s905x3)` box has received support. The used dtb is `meson-sm1-tox1.dtb`, u-boot used `u-boot-x96maxplus.bin`. The 1Gigabit wired network and the RTL8822BS wireless are working fine. |


================================================
FILE: LICENSE
================================================
                    GNU GENERAL PUBLIC LICENSE
                       Version 2, June 1991

 Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 Everyone is permitted to copy and distribute verbatim copies
 of this license document, but changing it is not allowed.

                            Preamble

  The licenses for most software are designed to take away your
freedom to share and change it.  By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users.  This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it.  (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.)  You can apply it to
your programs, too.

  When we speak of free software, we are referring to freedom, not
price.  Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.

  To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.

  For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have.  You must make sure that they, too, receive or can get the
source code.  And you must show them these terms so they know their
rights.

  We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.

  Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software.  If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.

  Finally, any free program is threatened constantly by software
patents.  We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary.  To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.

  The precise terms and conditions for copying, distribution and
modification follow.

                    GNU GENERAL PUBLIC LICENSE
   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License.  The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language.  (Hereinafter, translation is included without limitation in
the term "modification".)  Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.

  1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.

You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.

  2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:

    a) You must cause the modified files to carry prominent notices
    stating that you changed the files and the date of any change.

    b) You must cause any work that you distribute or publish, that in
    whole or in part contains or is derived from the Program or any
    part thereof, to be licensed as a whole at no charge to all third
    parties under the terms of this License.

    c) If the modified program normally reads commands interactively
    when run, you must cause it, when started running for such
    interactive use in the most ordinary way, to print or display an
    announcement including an appropriate copyright notice and a
    notice that there is no warranty (or else, saying that you provide
    a warranty) and that users may redistribute the program under
    these conditions, and telling the user how to view a copy of this
    License.  (Exception: if the Program itself is interactive but
    does not normally print such an announcement, your work based on
    the Program is not required to print an announcement.)

These requirements apply to the modified work as a whole.  If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works.  But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.

In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.

  3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:

    a) Accompany it with the complete corresponding machine-readable
    source code, which must be distributed under the terms of Sections
    1 and 2 above on a medium customarily used for software interchange; or,

    b) Accompany it with a written offer, valid for at least three
    years, to give any third party, for a charge no more than your
    cost of physically performing source distribution, a complete
    machine-readable copy of the corresponding source code, to be
    distributed under the terms of Sections 1 and 2 above on a medium
    customarily used for software interchange; or,

    c) Accompany it with the information you received as to the offer
    to distribute corresponding source code.  (This alternative is
    allowed only for noncommercial distribution and only if you
    received the program in object code or executable form with such
    an offer, in accord with Subsection b above.)

The source code for a work means the preferred form of the work for
making modifications to it.  For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable.  However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.

If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.

  4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License.  Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.

  5. You are not required to accept this License, since you have not
signed it.  However, nothing else grants you permission to modify or
distribute the Program or its derivative works.  These actions are
prohibited by law if you do not accept this License.  Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.

  6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions.  You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.

  7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License.  If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all.  For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.

If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.

It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices.  Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.

This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.

  8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded.  In such case, this License incorporates
the limitation as if written in the body of this License.

  9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time.  Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.

Each version is given a distinguishing version number.  If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation.  If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.

  10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission.  For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this.  Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.

                            NO WARRANTY

  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.

  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

                     END OF TERMS AND CONDITIONS

            How to Apply These Terms to Your New Programs

  If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.

  To do so, attach the following notices to the program.  It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.

    <one line to give the program's name and a brief idea of what it does.>
    Copyright (C) <year>  <name of author>

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License along
    with this program; if not, write to the Free Software Foundation, Inc.,
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Also add information on how to contact you by electronic and paper mail.

If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:

    Gnomovision version 69, Copyright (C) year name of author
    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
    This is free software, and you are welcome to redistribute it
    under certain conditions; type `show c' for details.

The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License.  Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.

You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary.  Here is a sample; alter the names:

  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
  `Gnomovision' (which makes passes at compilers) written by James Hacker.

  <signature of Ty Coon>, 1 April 1989
  Ty Coon, President of Vice

This General Public License does not permit incorporating your program into
proprietary programs.  If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library.  If this is what you want to do, use the GNU Lesser General
Public License instead of this License.


================================================
FILE: README.cn.md
================================================
<div align="center">
    <img alt="Armbian" src="https://github.com/user-attachments/assets/74e55052-031b-48f8-9aca-e5f1dd9e256a" />
</div>

# Armbian / 岸边

[View English description](README.md) | [查看中文说明](README.cn.md) | [日本語の説明を確認する](README.ja.md)

Armbian(中文名:岸边)是基于 Debian/Ubuntu 构建的专为 ARM 芯片设计的轻量级 Linux 发行版。Armbian 系统精简、清洁,100% 兼容并继承了 Debian/Ubuntu 的功能与丰富的软件生态,可以安全稳定地运行在 TF/SD/USB 及设备的 eMMC 存储中。本项目保留了 Armbian 官方系统的完整性,并进一步拓展了对电视盒子等非官方支持设备的适配,同时增加了一系列便捷操作指令。现在你可以将电视盒子的安卓 TV 系统替换为 Armbian,使其成为一台功能强大的服务器。

本项目依托众多[贡献者](CONTRIBUTORS.md)的力量,为 `Amlogic`、`Rockchip` 和 `Allwinner` 平台的设备构建 Armbian 系统,支持写入 eMMC 使用、更新内核等功能。详细使用方法请参见 [Armbian 使用文档](./documents/README.cn.md)。最新的 Armbian 系统可在 [Releases](https://github.com/ophub/amlogic-s9xxx-armbian/releases) 中下载。欢迎 `Fork` 并进行个性化定制。如果对你有帮助,请点击仓库右上角的 `Star` 表示支持。

## Armbian 系统默认信息

| 系统名称        | 默认账号 | 默认密码  | SSH 端口 | IP 地址 |
| -------------- | ------- | ------- | ------- | ------- |
| 🐧 [Armbian.OS](https://github.com/ophub/amlogic-s9xxx-armbian/releases) | root | 1234 | 22 | 从路由器获取 |
| 🐋 [Armbian.Docker](https://hub.docker.com/u/ophub) | root | 1234 | 22 | 静态 MacVLAN IP |

## 支持的设备列表

⬆️ 各平台(晶晨/瑞芯微/全志)型号均按 SoC 性能由高至低排列。

| SoC  | [设备](https://github.com/ophub/amlogic-s9xxx-armbian/releases) | [内核](https://github.com/ophub/kernel) |
| ---- | ---- | ---- |
| a311d | [Khadas-VIM3](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/99), [WXY-OES](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2666) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s922x | [Beelink-GT-King](https://github.com/ophub/amlogic-s9xxx-armbian/issues/370), [Beelink-GT-King-Pro](https://github.com/ophub/amlogic-s9xxx-armbian/issues/707), [Ugoos-AM6-Plus](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/464), [ODROID-N2](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/201), [X88-King](https://github.com/ophub/amlogic-s9xxx-armbian/issues/988), [Ali-CT2000](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1150), [WXY-OES-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3029) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905x3 | [X96-Max+](https://github.com/ophub/amlogic-s9xxx-armbian/issues/351), [HK1-Box](https://github.com/ophub/amlogic-s9xxx-armbian/issues/414), [Vontar-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1006), [H96-Max-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1250), [Ugoos-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/782), [TX3(QZ)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/644), [TX3(BZ)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1077), [X96-Air](https://github.com/ophub/amlogic-s9xxx-armbian/issues/366), [X96-Max+_A100](https://github.com/ophub/amlogic-s9xxx-armbian/issues/779), [A95X-F3-Air](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2282), [Tencent-Aurora-3Pro(s905x3-b)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/506), [X96-Max+Q1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/788), [X96-Max+100W](https://github.com/ophub/amlogic-s9xxx-armbian/issues/909), [X96-Max+_2101](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1086), [Infinity-B32](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1181), [Whale](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1166), [X88-Pro-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1621), [X99-Max-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1621), [Transpeed-X3-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1621), [TOX1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3441) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905x2 | [X96Max-4G](https://github.com/ophub/amlogic-s9xxx-armbian/issues/453), [X96Max-2G](https://github.com/ophub/amlogic-s9xxx-armbian/issues/95), [MECOOL-KM3-4G](https://github.com/ophub/amlogic-s9xxx-armbian/issues/79), [Tanix-Tx5-Max](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/351), [A95X-F2](https://github.com/ophub/amlogic-s9xxx-armbian/issues/851), [HG680-FJ](https://github.com/ophub/amlogic-s9xxx-armbian/pull/3089) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905l3a | [E900V22C/D](https://github.com/Calmact/e900v22c), [CM311-1a-YST](https://github.com/ophub/amlogic-s9xxx-armbian/issues/517), [M401A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/732), [M411A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/517), [UNT403A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/970), [UNT413A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/970), [ZTE-B863AV3.2-M](https://github.com/ophub/amlogic-s9xxx-armbian/issues/741), [CM311-1a-CH](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1508), [IP112H](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1520), [B863AV3.1-M2](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2292) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905l3b | [CM201-1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2209), [CM211-1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1180), [CM311-1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1268), [E900V21D](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2447), [E900V22D](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1256), [E900V21E](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1514), [E900V22E](https://github.com/ophub/amlogic-s9xxx-armbian/issues/939), [M302A/M304A](https://github.com/ophub/amlogic-s9xxx-armbian/pull/615), [Hisense-IP103H](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1154), [TY1608](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1332), [TY1608](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1568), [MGV2000](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1613), [B860AV-2.1M](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1598), [UNT403A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1712), [RG020ET-CA](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1860), [M411A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3272) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905l3 | [CM211-1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1318), [CM311-1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/763), [HG680-LC](https://github.com/ophub/amlogic-s9xxx-armbian/issues/978), [M401A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/921#issuecomment-1453143251), [UNT400G1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1277), [UNT400G](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2625), [UNT402A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1481), [ZXV10-BV310](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1512), [M411A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1817), [ZXV10-B860AV3.2-M](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2012), [ZXV10-B860AV2.1-U](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2273), [E900V22D-2](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2058), [CM201-1-6-YS](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2539), [IP108H](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2539), [M301A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3055) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s912 | [Tanix-TX8-Max](https://github.com/ophub/amlogic-s9xxx-armbian/issues/500), [Tanix-TX9-Pro(3G)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/315), [Tanix-TX9-Pro(2G)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/740), [Tanix-TX92](https://github.com/ophub/amlogic-s9xxx-armbian/issues/72#issuecomment-1012790770), [Tanix-TX9S](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3282), [Nexbox-A1](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/260), [Nexbox-A95X-A2](https://www.cafago.com/en/p-v2979eu-2g.html),  [A95X](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/260), [H96-Pro-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/72#issuecomment-1013071513), [VORKE-Z6-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/72), [Mecool-M8S-PRO-L](https://github.com/ophub/amlogic-s9xxx-armbian/issues/158), [Vontar-X92](https://github.com/ophub/amlogic-s9xxx-armbian/issues/525), [T95Z-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/668), [Octopus-Planet](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1020), [Phicomm-T1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/522), [TX3-Mini](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1882), [OneCloudPro-V1.1_V1.2](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2241) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905d | [MECOOL-KI-Pro](https://github.com/ophub/amlogic-s9xxx-armbian/issues/59), [Phicomm-N1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/925), [SML-5442TW](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/451) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905x | [HG680P](https://github.com/ophub/amlogic-s9xxx-armbian/issues/262), [B860H](https://github.com/ophub/amlogic-s9xxx-armbian/issues/60), [TBee-Box](https://github.com/ophub/amlogic-s9xxx-armbian/issues/98), [T95](https://github.com/ophub/amlogic-s9xxx-armbian/issues/285), [TX9](https://github.com/ophub/amlogic-s9xxx-armbian/issues/645), [XiaoMI-3S](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1405), [X96](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1480), [Nexbox-a95x](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1714), [BTV9](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3256) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905mb | [S65](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1644) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905l | [UNT402A](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1481), [M201-S](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/444), [MiBox-4](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2101), [MiBox-4C](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1826), [MG101](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1912), [E900V21C](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2341), [IP108H-53u1m](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2357), [Tencent-Aurora-1s](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2465), [B860AV2.1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2491), [B860AV2.1U](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2499), [HM201](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2585) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905l2 | [MGV2000](https://github.com/ophub/amlogic-s9xxx-armbian/issues/648), [MGV2000-K](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1839), [MGV3000](https://github.com/ophub/amlogic-s9xxx-armbian/issues/921), [Wojia-TV-IPBS9505](https://github.com/ophub/amlogic-s9xxx-armbian/issues/648), [M301A](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/405), [E900v21E](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1278), [e900v21d](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2127), [CM201-1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2188), [IP108H](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2598), [MGV2000-CW](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2616) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905lb | [Q96-mini](https://github.com/ophub/amlogic-s9xxx-armbian/issues/734), [BesTV-R3300L](https://github.com/ophub/amlogic-s9xxx-armbian/pull/993), [SumaVision-Q7](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1190), [MG101](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1570), [s65](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2128), [IPBS9505](https://github.com/ophub/amlogic-s9xxx-armbian/pull/993#issuecomment-2276804591) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905w | [X96-Mini](https://github.com/ophub/amlogic-s9xxx-armbian/issues/621), [TX3-Mini](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1062), [W95](https://github.com/ophub/amlogic-s9xxx-armbian/issues/570), [X96W/FunTV](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1044), [MXQ-Pro-4K](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1140), [MeCool-m8s-pro-W](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3245) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905 | [Beelink-Mini-MX-2G](https://github.com/ophub/amlogic-s9xxx-armbian/issues/127), [Sunvell-T95M](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/337), [MXQ-Pro+4K](https://github.com/ophub/amlogic-s9xxx-armbian/issues/715), [SumaVision-Q5](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1175) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| rk3588(s) | [Radxa-Rock5B](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1240), [Radxa-Rock5C](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2324), [Orange-Pi-5-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2400), [Beelink-IPC-R](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/415), [HLink-H88K](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1726), [HLink-H88K-V3](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1726), [NanoPC-T6](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2453), [Smart-Am60](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2817), [DC-A588](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2988), [Orangepi-5B](https://github.com/ophub/amlogic-s9xxx-armbian/pull/3052), [CM3588-NAS](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3306), [Rock-5-ITX](https://github.com/ophub/fnnas/issues/355), [LZ-D3588](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3328), [Boca-tcn100](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3437) | [rk3588](https://github.com/ophub/kernel/releases/tag/kernel_rk3588) |
| rk3576 | [NanoPi-m5](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3207) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| rk3399 | [EAIDK-610](https://github.com/ophub/amlogic-s9xxx-armbian/pull/991), [King3399](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1080), [TN3399](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1094), [Kylin3399](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1132), [ZCube1-Max](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1247), [CRRC](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1280), [SMART-AM40](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1317), [SW799](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1326), [ZYSJ](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1380), [DG-3399](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1492), [DLFR100](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1522), [Emb3531](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1549), [Leez-p710](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1609), [tvi3315a](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1687), [xiaobao](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1698), [Fine3399](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1790), [Firefly-RK3399](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/491), [LX-R3S](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2026), [Hugsun-x99](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2050), [Tb-ls3399](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2146), [Hisense-hs530r](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/572), [Tpm312](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2403), [ZK-rk39a](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2446), [YSKJ](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2673), [Fmx1-Pro](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2691), [Fmx1-Pro-B](https://github.com/ophub/fnnas/issues/250), [Sv-33a6x](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/748), [Sv-33a6x(VPU)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3372), [AIO-3399B](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3185), [AIO-3399C](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3339), [AIO-3399C(AI)](https://github.com/ophub/fnnas/issues/108), [TaraM](https://github.com/ophub/u-boot/pull/28), [NanoPC-T4](https://github.com/ophub/u-boot/pull/30), [Firefly-Core-3399-JD4](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3354), [GEA-6319](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3383) | [rk35xx](https://github.com/ophub/kernel/releases/tag/kernel_rk35xx)<br />[stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| rk3568 | [FastRhino-R66S](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1061), [FastRhino-R68S](https://github.com/ophub/amlogic-s9xxx-armbian/issues/774), [Radxa-E25](https://wiki.radxa.com/Rock3/CM/CM3I/E25), [NanoPi-R5S](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1217), [NanoPi-R5C](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1217), [HLink-H66K](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1726), [HLink-H68K](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1726), [HLink-H69K](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1726), [Seewo-sv21](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2017), [Mrkaio-m68s](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2155), [Swan1-w28](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2407), [Ruisen-box](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2508), [DG-TN3568](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2661), [Alark35-3500](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2911), [MMBox-Anas3035](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2995), [Wocyber-A3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2978), [Photonicat](https://github.com/ophub/amlogic-s9xxx-openwrt/pull/827), [NSY-G16-Plus](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/845), [NSY-G68-Plus](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/845), [BDY-G18-Pro](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/847), [Gzpeite-P01](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3221), [LZ-D3568](https://github.com/ophub/amlogic-s9xxx-armbian/pull/3387), [LZ-K3568](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3304), [BDKJ-One](https://github.com/ophub/u-boot/pull/29), [Station-P2](https://github.com/ophub/fnnas/pull/350), [Lyt-t68m](https://github.com/ophub/fnnas/issues/435) | [rk35xx](https://github.com/ophub/kernel/releases/tag/kernel_rk35xx)<br />[stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| rk3566 | [Panther-X2](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1319), [JP-TvBox](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1867), [LCKFB-Taishan-Pi](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2538), [WXY-OEC-turbo-4g](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2736), [Station-M2](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/744), [Orange-Pi-3B](https://github.com/ophub/fnnas/issues/261) | [rk35xx](https://github.com/ophub/kernel/releases/tag/kernel_rk35xx)<br />[stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| rk3528 | [HLink-H28K](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1726), [Radxa-E20C](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2324), [H96-Max-M2](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2404), [HK1-Rbox-K8S](https://github.com/ophub/fnnas/issues/464), [HT2](https://github.com/ophub/fnnas/issues/464), [CD1000](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3302) | [rk35xx](https://github.com/ophub/kernel/releases/tag/kernel_rk35xx) |
| rk3328 | [BeikeYun](https://github.com/ophub/amlogic-s9xxx-armbian/issues/852), [Chainedbox-L1-Pro](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1680), [Station-M1](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1313), [Bqeel-MVR9](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1313), [Renegade/Firefly](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1861) | [rk35xx](https://github.com/ophub/kernel/releases/tag/kernel_rk35xx)<br />[stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| rk3318 | [RX3318-Box](https://github.com/ophub/amlogic-s9xxx-armbian/pull/2129) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| h6 | [Vplus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1100), [Tanix-TX6](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1120), [TQC-A01](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1638) | [h6](https://github.com/ophub/kernel/releases/tag/kernel_h6)<br>[stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| h618 | [OrangePi-Zero3](https://github.com/ophub/fnnas/issues/158), [H618-DevBoard](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3434) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |

> [!TIP]
> 目前 [s905 的盒子](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1173)仅支持在 `TF/SD/USB` 中使用,其他型号的盒子均支持写入 `EMMC`。更多信息请查阅 [✅支持的设备列表说明](build-armbian/armbian-files/common-files/etc/model_database.conf)。添加新设备支持可参考说明文档 12.15 章节的方法:[添加新的支持设备](documents/README.cn.md#1215-如何添加新的支持设备)。使用前请先阅读 [Armbian 使用文档](./documents/README.cn.md),常见问题均已提供解决方案。

## 安装及升级 Armbian 的相关说明

请选择与你的设备型号对应的 Armbian 系统,不同设备的使用方法请参考对应的说明文档。

- ### 安装 Armbian 到 EMMC

1. `Rockchip` 平台的安装方法请查看说明文档中的 [第 8 章节](documents/README.cn.md#8-安装-armbian-到-emmc)。

2. `Amlogic` 和 `Allwinner` 平台,使用 [Rufus](https://rufus.ie/) 或者 [balenaEtcher](https://www.balena.io/etcher/) 等工具将系统写入 USB 里,然后把写好系统的 USB 插入盒子。登录 Armbian 系统 (默认用户: root, 默认密码: 1234) → 输入命令:

```shell
armbian-install
```

| 可选参数  | 默认值   | 选项     | 说明                |
| -------  | ------- | ------  | -----------------   |
| -m       | no      | yes/no  | 使用主线 u-boot |
| -a       | yes     | yes/no  | 使用 [ampart](https://github.com/7Ji/ampart) 分区表调整工具 |
| -l       | no      | yes/no  | 显示全部设备列表 |

示例:`armbian-install -m yes -a no`

- ### 更新 Armbian 内核

登录 Armbian 系统 → 输入命令:

```shell
# 使用 root 用户运行 (sudo -i)
# 如果不指定参数,将更新为最新版本。
armbian-update
```

| 可选参数  | 默认值        | 选项           | 说明                              |
| -------- | ------------ | ------------- | -------------------------------- |
| -r       | ophub/kernel | `<owner>/<repo>` | 设置从 github.com 下载内核的仓库  |
| -u       | 自动识别    | stable/flippy/beta/rk3588/rk35xx/h6 | 设置使用的内核的 [tags 后缀](https://github.com/ophub/kernel/releases) |
| -k       | 最新版        | 内核版本       | 设置[内核版本](https://github.com/ophub/kernel/releases/tag/kernel_stable)  |
| -b       | yes          | yes/no        | 更新内核时自动备份当前使用的内核    |
| -d       | deb          | tar/deb       | 设置首选的内核包格式。若指定格式不存在,脚本将自动尝试另一种格式。如需编译自定义驱动,推荐使用 `deb` 格式。 |
| -m       | no           | yes/no        | 使用主线 u-boot                    |
| -s       | 无           | 无/磁盘名称     | [SOS] 恢复 eMMC/NVMe/sdX 等磁盘中的系统内核 |
| -h       | 无           | 无             | 查看帮助信息                       |

示例:`armbian-update -k 5.15 -u stable -d deb`

通过 `-k` 参数指定内核版本时,可以精确指定具体版本号,例如:`armbian-update -k 5.15.50`;也可以模糊指定内核系列,例如:`armbian-update -k 5.15`。模糊指定时将自动使用该系列的最新版本。

更新内核时会自动备份当前使用的内核,备份存储在 `/ddbr/backup` 目录中,保留最近 3 个版本。若新安装的内核不稳定,可随时恢复到备份版本。若更新内核后系统无法启动,可通过 `armbian-update -s` 恢复系统内核。更多详情请参见[帮助文档](documents/README.cn.md#10-更新-armbian-内核)。

- ### 更换 Armbian 源

登录 Armbian 系统 → 输入命令:

```shell
armbian-apt
```

根据你所在的国家或地区选择合适的软件源,可以显著提升软件下载速度。更多说明详见[帮助文档](documents/README.cn.md#11-安装常用软件)。

- ### 安装常用软件

登录 Armbian 系统 → 输入命令:

```shell
armbian-software
```

使用 `armbian-software -u` 命令可更新本地软件中心列表。根据用户在 [Issue](https://github.com/ophub/amlogic-s9xxx-armbian/issues) 中的反馈需求,已逐步整合常用[软件](build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/software-list.conf),实现一键安装/更新/卸载等快捷操作。包括 `Docker 镜像`、`桌面软件`、`应用服务`等。详见[更多说明](documents/armbian_software.md)。

- ### 修改 Armbian 配置

登录 Armbian 系统 → 输入命令:

```shell
armbian-config
```

- ### 为 Armbian 创建 swap

如果你在使用 `Docker` 等内存占用较大的应用时,感觉当前设备内存不足,可以创建 `swap` 虚拟内存分区,将磁盘空间的一定容量虚拟为内存使用。以下命令的参数单位为 `GB`,默认值为 `1`。

登录 Armbian 系统 → 输入命令:

```shell
armbian-swap 1
```

- ### 控制 LED 显示

登录 Armbian 系统 → 输入命令:

```shell
armbian-openvfd
```

根据 [LED 屏显示控制说明](documents/led_screen_display_control.md) 进行调试。

- ### 备份/还原 EMMC 原系统

支持在 `TF/SD/USB` 中对设备 `EMMC` 分区进行备份和恢复。建议在全新设备上安装 Armbian 系统之前,先对原始的安卓 TV 系统进行备份,以便日后需要恢复时使用。

请从 `TF/SD/USB` 启动 Armbian 系统 → 输入命令:

```shell
armbian-ddbr
```

根据提示输入 `b` 进行系统备份,输入 `r` 进行系统恢复。

> [!IMPORTANT]
> 除此之外,也可以通过线刷方式将安卓系统写入 eMMC。安卓系统的下载镜像可在 [Tools](https://github.com/ophub/kernel/releases/tag/tools) 中查找。

- ### 在 Armbian 中编译内核

在 Armbian 中编译内核的用法详见[编译内核](compile-kernel/README.cn.md)说明文档。登录 Armbian 系统后,输入以下命令:

```shell
armbian-kernel -u
armbian-kernel -k 6.6.12
```

- ### 更多使用说明

将本地系统中的全部服务脚本更新至最新版本,可登录 Armbian 系统后输入以下命令:

```shell
armbian-sync
```

在 Armbian 的使用过程中,常见问题的解决方法详见 [documents](documents/README.cn.md)。

## 本地化打包

1. 克隆仓库到本地 `git clone --depth 1 https://github.com/ophub/amlogic-s9xxx-armbian.git`

2. 安装必要的软件包(以 Ubuntu 24.04 为例)

进入 `~/amlogic-s9xxx-armbian` 根目录,然后执行安装命令:

```shell
sudo apt-get update -y
sudo apt-get full-upgrade -y
# For Ubuntu-24.04
sudo apt-get install -y $(cat compile-kernel/tools/script/ubuntu2404-build-armbian-depends)
```

3. 进入 `~/amlogic-s9xxx-armbian` 根目录,在该目录下创建 `build/output/images` 文件夹,并将 Armbian 镜像文件(如 `Armbian_21.11.0-trunk_Odroidn2_current_5.15.50.img`)上传至 `~/amlogic-s9xxx-armbian/build/output/images` 目录。请保留原版 Armbian 镜像文件名中的发行版本号(如 `21.11.0`)和内核版本号(如 `5.15.50`),它们将在重构后用作 Armbian 系统的命名依据。

4. 进入 `~/amlogic-s9xxx-armbian` 根目录,执行 `sudo ./rebuild -b s905x3 -k 6.6.12` 命令即可生成指定 board 的 Armbian 镜像文件。生成的文件保存在 `build/output/images` 目录中。

- ### 本地化打包参数说明

| 参数  | 含义       | 说明        |
| ---- | ---------- | ---------- |
| -b   | Board      | 指定需要编译的设备代号。例如 `-b s905x3` 表示编译代号为 s905x3 的设备,多个设备可用下划线连接,如 `-b s905x3_s905d`。特殊值:`all` 表示编译全部设备,`first50` 表示设备库中的前 50 个,`range50_100` 表示第 51 至第 100 个,`range100_150` 表示第 101 至第 150 个,`last20` 表示最后 20 个。设备代号列表详见 [model_database.conf](build-armbian/armbian-files/common-files/etc/model_database.conf) 中的 `BOARD` 配置项。默认值:`all` |
| -r   | KernelRepo | 指定 github.com 内核仓库的 `<owner>/<repo>`。默认值:`ophub/kernel` |
| -u   | kernelUsage | 设置使用的内核的 `tags 后缀`,如 [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable), [flippy](https://github.com/ophub/kernel/releases/tag/kernel_flippy), [beta](https://github.com/ophub/kernel/releases/tag/kernel_beta)。默认值:`stable` |
| -k   | Kernel     | 指定 [kernel](https://github.com/ophub/kernel/releases/tag/kernel_stable) 名称,如 `-k 6.6.12` 。多个内核使用 `_` 进行连接,如 `-k 6.6.12_5.15.50` 。通过 `-k` 参数自由指定的内核版本只对使用 `stable/flippy/beta` 的内核有效。其他内核系列例如 [rk3588](https://github.com/ophub/kernel/releases/tag/kernel_rk3588) / [rk35xx](https://github.com/ophub/kernel/releases/tag/kernel_rk35xx) / [h6](https://github.com/ophub/kernel/releases/tag/kernel_h6) 等只能使用特定内核。  |
| -a   | AutoKernel | 设置是否自动采用同系列最新版本内核。当为 `true` 时,将自动在内核库中查找 `-k` 指定内核(如 6.6.12)的同系列是否有更新版本,若存在更新版本则自动替换。设置为 `false` 时将使用指定版本编译。默认值:`true` |
| -t   | RootfsType | 设置系统 ROOTFS 分区的文件系统类型,可选 `ext4` 或 `btrfs`。例如:`-t btrfs`。默认值:`ext4` |
| -s   | Size       | 设置系统镜像分区大小。仅设置 ROOTFS 分区大小时可只指定一个数值,例如:`-s 2560`;需同时设置 BOOTFS 和 ROOTFS 分区大小时,用 `/` 连接两个数值,例如:`-s 512/2560`。默认值:`512/2560` |
| -n   | BuilderName | 设置 Armbian 系统构建者签名。签名中请勿包含空格。默认值:无 |

- `sudo ./rebuild` : 使用默认配置,对全部型号的设备进行打包。
- `sudo ./rebuild -b s905x3 -k 6.6.12` : 推荐用法。使用默认配置编译指定内核。
- `sudo ./rebuild -b s905x3 -k 6.1.y` : 使用默认配置编译,内核使用 6.1.y 系列的最新版。
- `sudo ./rebuild -b s905x3_s905d -k 6.6.12_5.15.50` : 使用默认配置,同时打包多个内核。多个内核用 `_` 连接。
- `sudo ./rebuild -b s905x3 -k 6.6.12 -s 2560` : 使用默认配置,指定单个内核和单个型号进行打包,ROOTFS 分区大小设为 2560 MiB。
- `sudo ./rebuild -b s905x3_s905d`  使用默认配置,对多个型号进行全部内核打包,多个型号用 `_` 连接。
- `sudo ./rebuild -k 6.6.12_5.15.50` : 使用默认配置,指定多个内核,对全部型号进行打包。多个内核用 `_` 连接。
- `sudo ./rebuild -k 6.6.12_5.15.50 -a true` : 使用默认配置,指定多个内核,对全部型号进行打包,并自动升级到同系列最新内核。
- `sudo ./rebuild -t btrfs -s 2560 -k 6.6.12` : 使用默认配置,文件系统设为 btrfs,ROOTFS 分区大小为 2560 MiB,指定内核为 6.6.12,对全部型号进行打包。

## 使用 GitHub Actions 进行编译

1. 关于 Workflows 文件的配置详见 [.github/workflows/](.github/workflows/) 目录。

2. 全新编译:在 [Actions](https://github.com/ophub/amlogic-s9xxx-armbian/actions) 页面中选择 ***`Build Armbian server image`***,即可通过 [build-armbian-arm64-server-image.yml](.github/workflows/build-armbian-arm64-server-image.yml) 进行编译。可选择 Ubuntu 系列(如 `resolute`)或 Debian 系列(如 `trixie`)等。点击 ***`Run workflow`*** 按钮即可开始编译。

3. 二次编译:如果 [Releases](https://github.com/ophub/amlogic-s9xxx-armbian/releases) 中已有编译好的 `Armbian_.*-trunk_.*.img.gz` 文件,只需为其他 board 重新打包,可跳过源文件编译步骤,直接使用 [build-armbian-using-releases-files.yml](.github/workflows/build-armbian-using-releases-files.yml) 进行二次制作。

4. 使用其他 Armbian 系统(如 Armbian 官方下载站 [armbian.tnahosting.net](https://armbian.tnahosting.net/dl/) 提供的 [odroidn2](https://armbian.tnahosting.net/dl/odroidn2/archive/) 系统),只需在工作流配置文件 [build-armbian-using-official-image.yml](.github/workflows/build-armbian-using-official-image.yml) 中引入本仓库的脚本进行 Armbian 重构,即可适配其他设备。示例代码如下:

```yaml
- name: Build Armbian
  uses: ophub/amlogic-s9xxx-armbian@main
  with:
    build_target: armbian
    armbian_path: build/output/images/*.img
    armbian_board: s905d_s905x3_s922x_s905x
    armbian_kernel: 6.12.y_6.18.y
```

- ### GitHub Actions 输入参数说明

相关参数与本地打包命令一一对应,详情请参考上述说明。

| 参数              | 默认值         | 说明                                             |
|------------------|---------------|--------------------------------------------------|
| armbian_path     | 无            | 设置原版 Armbian 文件的路径。支持当前工作流中的文件路径(如 `build/output/images/*.img`),也支持网络下载地址(如 `https://dl.armbian.com/*/Armbian_*.img.xz`) |
| armbian_board    | all           | 设置打包盒子的 `board` ,功能参考 `-b`                 |
| kernel_repo      | ophub/kernel  | 指定 github.com 内核仓库的 `<owner>/<repo>`,功能参考 `-r` |
| kernel_usage     | stable        | 设置使用的内核的 `tags 后缀`。功能参考 `-u` |
| armbian_kernel   | 6.12.y_6.18.y | 设置内核 [版本](https://github.com/ophub/kernel/releases/tag/kernel_stable),功能参考 `-k` |
| auto_kernel      | true          | 设置是否自动采用同系列最新版本内核,功能参考 `-a`       |
| armbian_fstype   | ext4          | 设置系统 ROOTFS 分区的文件系统类型,功能参考 `-t`     |
| armbian_size     | 512/2560      | 设置系统 BOOTFS 和 ROOTFS 分区的大小,功能参考 `-s`  |
| armbian_files    | false         | 添加自定义 Armbian 文件。设置后,该目录下的所有文件将被复制到 [common-files](build-armbian/armbian-files/common-files) 中。目录结构必须与 Armbian 根目录保持一致,以确保文件正确覆盖到固件中(例如:默认配置文件应存放于 `etc/default/` 子目录下)。 |
| builder_name     | 无             | 设置 Armbian 系统构建者签名,功能参考 `-n`           |

- ### GitHub Actions 输出变量说明

上传到 `Releases` 需要为仓库设置 `Workflow 读写权限`,详见[使用说明](documents/README.cn.md#2-设置隐私变量-github_token)。

| 参数                                 | 默认值         | 说明                       |
|-------------------------------------|---------------|----------------------------|
| ${{ env.PACKAGED_OUTPUTPATH }}      | out           | Armbian 系统文件输出路径      |
| ${{ env.PACKAGED_OUTPUTDATE }}      | 04.13.1058    | 打包日期(月.日.时分)         |
| ${{ env.PACKAGED_STATUS }}          | success       | 打包状态:success / failure  |

## 制作 Armbian Docker 镜像

Armbian 系统 [Docker](https://hub.docker.com/u/ophub) 镜像的制作方法可参考 [armbian_docker](./compile-kernel/tools/script/docker) 制作脚本。

## 使用 GitHub Actions 编译内核

内核的编译方法详见[编译内核](compile-kernel/README.cn.md)。

```yaml
- name: Compile the kernel
  uses: ophub/amlogic-s9xxx-armbian@main
  with:
    build_target: kernel
    kernel_version: 6.12.y_6.18.y
    kernel_auto: true
    kernel_sign: -yourname
```

## Armbian 贡献者

首先感谢 [150balbes](https://github.com/150balbes) 为在 Amlogic 电视盒子上运行 Armbian 所做出的杰出贡献和奠定的坑实基础。本项目编译的 [Armbian](https://github.com/armbian/build) 系统直接使用官方当前的最新源码进行实时编译。程序的开发思路来源于 [ebkso](https://www.kflyo.com/howto-compile-armbian-for-n1-box) 等作者的教程。感谢各位的奉献与分享,让我们得以在更多设备上使用 Armbian 系统。

本系统所使用的 [u-boot](https://github.com/ophub/u-boot)、[kernel](https://github.com/ophub/kernel) 等资源主要来源于 [unifreq/openwrt_packit](https://github.com/unifreq/openwrt_packit) 项目,部分文件由用户在 [amlogic-s9xxx-openwrt](https://github.com/ophub/amlogic-s9xxx-openwrt) / [amlogic-s9xxx-armbian](https://github.com/ophub/amlogic-s9xxx-armbian) / [luci-app-amlogic](https://github.com/ophub/luci-app-amlogic) / [kernel](https://github.com/ophub/kernel) / [u-boot](https://github.com/ophub/u-boot) 等项目的 [Pull](https://github.com/ophub/amlogic-s9xxx-armbian/pulls) 和 [Issues](https://github.com/ophub/amlogic-s9xxx-armbian/issues) 中贡献分享。为感谢这些开拓者和分享者,自本仓库创建之日起(`2021-09-19`),已统一在 [CONTRIBUTORS.md](https://github.com/ophub/amlogic-s9xxx-armbian/blob/main/CONTRIBUTORS.md) 中进行记录。再次感谢大家为设备赋予新的生命与价值。

## 其他发行版

- [amlogic-s9xxx-openwrt](https://github.com/ophub/amlogic-s9xxx-openwrt) 项目提供了适用于盒子的 `OpenWrt` 系统,在支持 Armbian 的相关设备上同样适用。
- [fnnas](https://github.com/ophub/fnnas) 项目提供了适用于盒子的 `FnNAS` 系统,在支持 Armbian 的相关设备上同样适用。
- [unifreq](https://github.com/unifreq/openwrt_packit) 为晶晨、瑞芯微和全志等平台的更多设备制作了 `OpenWrt` 系统,是盒子生态的标杆项目,推荐使用。
- [Scirese](https://github.com/Scirese/alarm) 在安卓电视盒子上测试了 `Arch Linux ARM` / `Manjaro` 系统的制作、安装和使用,详情请参见其仓库说明。
- [7Ji](https://7ji.github.io/) 在其博客中发表了多篇关于 Amlogic 平台逆向工程与开发的文章,涵盖以 ArchLinux 方式安装 ArchLinux ARM 系统、Amlogic 平台启动机制解析等内容。其 [ampart](https://github.com/7Ji/ampart) 项目提供了一款分区工具,可读取并编辑 Amlogic eMMC 分区表和 DTB 内分区,实现 eMMC 空间 100% 利用。[amlogic-s9xxx-archlinuxarm](https://github.com/7Ji/amlogic-s9xxx-archlinuxarm) 项目提供了 `Arch Linux ARM` 系统的制作和使用方法。[YAopenvfD](https://github.com/7Ji/YAopenvfD) 项目提供了另一个 openvfd 守护进程实现。
- [13584452567](https://github.com/13584452567) 是本仓库 `Rockchip` 系列设备的开拓者。凭借其分享,本项目拓展了对 [EAIDK-610](https://github.com/ophub/amlogic-s9xxx-armbian/pull/991)、[King3399](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1080)、[TN3399](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1094)、[Kylin3399](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1132)、[ZCube1-Max](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1247)、[tvi3315a](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1687)、[xiaobao](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1698) 等众多 `Rockchip` 设备的支持。他还是 [TQC-A01](https://github.com/ophub/amlogic-s9xxx-armbian/pull/1638) 等 `Allwinner` 设备[专用内核](https://github.com/13584452567/linux-6.6.y)的维护者,并在[论坛](https://github.com/ophub/amlogic-s9xxx-armbian/discussions/1634)和[问答区](https://github.com/ophub/amlogic-s9xxx-armbian/issues)中提供了大量技术支持和解决方案,为盒子生态的发展做出了巨大贡献。
- [cooip-jm](https://github.com/cooip-jm) 在其 [wiki](https://github.com/cooip-jm/About-openwrt/wiki) 中分享了许多关于 Armbian、LXC、Docker、AdGuard 等应用的使用方法,推荐参考学习。


## 链接

- [armbian](https://github.com/armbian/build)
- [unifreq](https://github.com/unifreq)
- [kernel.org](https://kernel.org)

## License

The amlogic-s9xxx-armbian © OPHUB is licensed under [GPL-2.0](LICENSE)



================================================
FILE: README.ja.md
================================================
<div align="center">
    <img alt="Armbian" src="https://github.com/user-attachments/assets/74e55052-031b-48f8-9aca-e5f1dd9e256a" />
</div>

# Armbian

[View English description](README.md) | [查看中文说明](README.cn.md) | [日本語の説明を確認する](README.ja.md)

Armbianは、Debian/Ubuntuをベースに、ARMチップ向けに特別に構築された軽量Linuxディストリビューションです。Armbianシステムはスリムでクリーンであり、Debian/Ubuntuと100%互換性があり、その機能と豊富なソフトウェアエコシステムを継承しています。TF/SD/USBストレージおよびデバイスのeMMCで安全かつ安定して動作します。本プロジェクトは、公式Armbianシステムの完全性を維持しつつ、TVボックスなどの公式にサポートされていないデバイスへのサポートを拡張し、便利な管理コマンドのセットを追加しています。TVボックスのAndroid TVシステムをArmbianに置き換え、強力なサーバーに変身させることができます。

本プロジェクトは多くの[コントリビューター](CONTRIBUTORS.md)に支えられ、`Amlogic`、`Rockchip`、`Allwinner`デバイス向けのArmbianシステムを構築しています。eMMCへの書き込み、カーネル更新などの機能をサポートしています。詳しい使い方は[Armbianユーザードキュメント](./documents/README.ja.md)をご覧ください。最新のArmbianシステムは[Releases](https://github.com/ophub/amlogic-s9xxx-armbian/releases)からダウンロードできます。`Fork`してカスタマイズすることを歓迎します。本プロジェクトがお役に立ちましたら、右上の`Star`ボタンをクリックしてサポートをお願いします。

## Armbianシステムのデフォルト情報

| システム名    | デフォルトユーザー名 | デフォルトパスワード  | SSHポート  | IPアドレス  |
| -------------- | ---------------- | ----------------- | --------- | ----------- |
| 🐧 [Armbian.OS](https://github.com/ophub/amlogic-s9xxx-armbian/releases) | root | 1234 | 22 | ルーターから取得 |
| 🐋 [Armbian.Docker](https://hub.docker.com/u/ophub) | root | 1234 | 22 | 静的MacVLAN IP |

## 対応デバイス一覧

⬆️ 各プラットフォーム(Amlogic/Rockchip/Allwinner)のモデルは、SoC性能の高い順に並べられています。

| SoC | [デバイス](https://github.com/ophub/amlogic-s9xxx-armbian/releases) | [カーネル](https://github.com/ophub/kernel) |
| ---- | ---- | ---- |
| a311d | [Khadas-VIM3](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/99), [WXY-OES](https://github.com/ophub/amlogic-s9xxx-armbian/issues/2666) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s922x | [Beelink-GT-King](https://github.com/ophub/amlogic-s9xxx-armbian/issues/370), [Beelink-GT-King-Pro](https://github.com/ophub/amlogic-s9xxx-armbian/issues/707), [Ugoos-AM6-Plus](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/464), [ODROID-N2](https://github.com/ophub/amlogic-s9xxx-openwrt/issues/201), [X88-King](https://github.com/ophub/amlogic-s9xxx-armbian/issues/988), [Ali-CT2000](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1150), [WXY-OES-Plus](https://github.com/ophub/amlogic-s9xxx-armbian/issues/3029) | [stable](https://github.com/ophub/kernel/releases/tag/kernel_stable) |
| s905x3 | [X96-Max+](https://github.com/ophub/amlogic-s9xxx-armbian/issues/351), [HK1-Box](https://github.com/ophub/amlogic-s9xxx-armbian/issues/414), [Vontar-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1006), [H96-Max-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1250), [Ugoos-X3](https://github.com/ophub/amlogic-s9xxx-armbian/issues/782), [TX3(QZ)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/644), [TX3(BZ)](https://github.com/ophub/amlogic-s9xxx-armbian/issues/1077), [X96-Air](https://github.com/ophub/amlogic-s9xxx-armbian/issues/366), [X96-Max+_A100](https://github.com/ophub/amlogic-s9xxx-armbian/issues/779), [A95X-F3-Air](https://github.com/ophub/amlogic-s9xxx-armbian/issues/22
Download .txt
gitextract_cfuts_n6/

├── .github/
│   ├── .gitkeep
│   ├── ISSUE_TEMPLATE/
│   │   └── bug-report.md
│   └── workflows/
│       ├── build-armbian-arm64-docker-image.yml
│       ├── build-armbian-arm64-server-image.yml
│       ├── build-armbian-using-official-image.yml
│       ├── build-armbian-using-releases-files.yml
│       ├── build-armbian-x86-server-image.yml
│       ├── compile-kernel.yml
│       └── delete-older-releases-workflows.yml
├── .gitignore
├── CONTRIBUTORS.md
├── LICENSE
├── README.cn.md
├── README.ja.md
├── README.md
├── action.yml
├── build-armbian/
│   ├── README.cn.md
│   ├── README.ja.md
│   ├── README.md
│   └── armbian-files/
│       ├── common-files/
│       │   ├── etc/
│       │   │   ├── balance_irq
│       │   │   ├── custom_service/
│       │   │   │   └── start_service.sh
│       │   │   ├── default/
│       │   │   │   └── cpufrequtils
│       │   │   ├── fstab
│       │   │   ├── model_database.conf
│       │   │   ├── modprobe.d/
│       │   │   │   └── brcmfmac.conf
│       │   │   ├── modules-load.d/
│       │   │   │   └── ophub-load-list.conf
│       │   │   └── sysctl.conf
│       │   └── usr/
│       │       ├── bin/
│       │       │   └── uuidgen
│       │       ├── sbin/
│       │       │   ├── armbian-apt
│       │       │   ├── armbian-ddbr
│       │       │   ├── armbian-docker
│       │       │   ├── armbian-fix
│       │       │   ├── armbian-kernel
│       │       │   ├── armbian-software
│       │       │   ├── armbian-swap
│       │       │   ├── armbian-sync
│       │       │   ├── armbian-tf
│       │       │   ├── armbian-update
│       │       │   └── balethirq.pl
│       │       └── share/
│       │           ├── alsa/
│       │           │   └── cards/
│       │           │       └── axg-sound-card.conf
│       │           └── ophub/
│       │               └── armbian-software/
│       │                   ├── 201-desktop-chinese-fonts.sh
│       │                   ├── 301-frps.sh
│       │                   ├── 302-frpc.sh
│       │                   ├── command-desktop.sh
│       │                   ├── command-docker.sh
│       │                   ├── command-service.sh
│       │                   ├── software-command.sh
│       │                   └── software-list.conf
│       ├── different-files/
│       │   ├── a311d-oes/
│       │   │   ├── bootfs/
│       │   │   │   ├── extlinux/
│       │   │   │   │   └── extlinux.conf.bak
│       │   │   │   └── uEnv.txt
│       │   │   └── rootfs/
│       │   │       ├── etc/
│       │   │       │   ├── armbian-board-release.conf
│       │   │       │   └── fw_env.config
│       │   │       └── usr/
│       │   │           └── bin/
│       │   │               └── oes_sata_leds.sh
│       │   ├── alark35-3500/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── anas3035/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── bdkj-bd-one/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── bdy-g18-pro/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── beikeyun/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── boca-tcn100/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── cd1000/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── chainedbox/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── usr/
│       │   │           └── bin/
│       │   │               └── pwm-fan.pl
│       │   ├── cm3588-nas/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── dc-a588/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── e20c/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── armbian_first_run.txt.template
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── e25/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── firefly-rk3399/
│       │   │   └── bootfs/
│       │   │       ├── boot.cmd
│       │   │       ├── boot.scr
│       │   │       └── extlinux/
│       │   │           └── extlinux.conf.bak
│       │   ├── gzpeite-p01/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       ├── boot.scr
│       │   │       └── extlinux/
│       │   │           └── extlinux.conf.bak
│       │   ├── h28k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h66k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h68k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h69k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h88k/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h88k-v3/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── h96-max-m2/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── hk1-rbox-k8s/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── ht2/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── hugsun-zm/
│       │   │   └── rootfs/
│       │   │       └── root/
│       │   │           └── led-control/
│       │   │               ├── aw2028
│       │   │               └── aw2028.c
│       │   ├── ipc-r/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── jp-tvbox/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── lckfb-tspi/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── lz-d3588/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── mrkaio-m68s/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── nanopc-t6/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── nanopi-m5/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── nsy-g16-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── nsy-g68-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── modules-load.d/
│       │   │           │   └── bridge.conf
│       │   │           └── sysctl.d/
│       │   │               └── 99-custom.conf
│       │   ├── orangepi-3b/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── orangepi-5-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── orangepi-5b/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── panther-x2/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── photonicat/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── r66s/
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── r68s/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── rock-5-itx/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── rock5b/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── rock5c/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── ruisen-box/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── s922x-oes-plus/
│       │   │   ├── bootfs/
│       │   │   │   ├── extlinux/
│       │   │   │   │   └── extlinux.conf.bak
│       │   │   │   └── uEnv.txt
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── armbian-board-release.conf
│       │   │           └── fw_env.config
│       │   ├── smart-am60/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── station-m2/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── swan1-w28/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   └── boot.scr
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           └── balance_irq
│       │   ├── vplus/
│       │   │   └── rootfs/
│       │   │       └── usr/
│       │   │           └── bin/
│       │   │               └── rgb-vplus
│       │   ├── wocyber-a3/
│       │   │   └── bootfs/
│       │   │       ├── armbianEnv.txt
│       │   │       ├── boot.cmd
│       │   │       └── boot.scr
│       │   ├── wxy-oect/
│       │   │   ├── bootfs/
│       │   │   │   ├── armbianEnv.txt
│       │   │   │   ├── boot.cmd
│       │   │   │   ├── boot.scr
│       │   │   │   └── extlinux/
│       │   │   │       └── extlinux.conf.bak
│       │   │   └── rootfs/
│       │   │       └── etc/
│       │   │           ├── armbian-board-release.conf
│       │   │           └── fw_env.config
│       │   └── wxy-oect-mod/
│       │       └── bootfs/
│       │           ├── armbianEnv.txt
│       │           ├── boot.cmd
│       │           ├── boot.scr
│       │           └── extlinux/
│       │               └── extlinux.conf.bak
│       └── platform-files/
│           ├── allwinner/
│           │   ├── bootfs/
│           │   │   ├── armbianEnv.txt
│           │   │   ├── armbian_first_run.txt.template
│           │   │   ├── boot.cmd
│           │   │   ├── boot.scr
│           │   │   ├── dtb/
│           │   │   │   └── allwinner/
│           │   │   │       ├── sun50i-h6-tanix-tx6.dtb
│           │   │   │       ├── sun50i-h6-tqc-a01.dtb
│           │   │   │       ├── sun50i-h6-vplus-cloud.dtb
│           │   │   │       ├── sun50i-h618-devboard.dtb
│           │   │   │       └── sun50i-h618-orangepi-zero3.dtb
│           │   │   └── extlinux/
│           │   │       └── extlinux.conf.bak
│           │   └── rootfs/
│           │       └── usr/
│           │           └── sbin/
│           │               └── armbian-install
│           ├── amlogic/
│           │   ├── bootfs/
│           │   │   ├── aml_autoscript
│           │   │   ├── aml_autoscript.cmd
│           │   │   ├── armbian_first_run.txt.template
│           │   │   ├── boot-emmc.cmd
│           │   │   ├── boot-emmc.ini
│           │   │   ├── boot-emmc.scr
│           │   │   ├── boot.cmd
│           │   │   ├── boot.ini
│           │   │   ├── boot.scr
│           │   │   ├── dtb/
│           │   │   │   └── amlogic/
│           │   │   │       ├── meson-a1-ad401.dtb
│           │   │   │       ├── meson-axg-jethome-jethub-j100.dtb
│           │   │   │       ├── meson-axg-jethome-jethub-j110-rev-2.dtb
│           │   │   │       ├── meson-axg-jethome-jethub-j110-rev-3.dtb
│           │   │   │       ├── meson-axg-s400.dtb
│           │   │   │       ├── meson-g12a-hg680-fj.dtb
│           │   │   │       ├── meson-g12a-radxa-zero.dtb
│           │   │   │       ├── meson-g12a-s905l3a-cm311.dtb
│           │   │   │       ├── meson-g12a-s905l3a-e900v22c.dtb
│           │   │   │       ├── meson-g12a-s905l3a-m401a.dtb
│           │   │   │       ├── meson-g12a-sei510.dtb
│           │   │   │       ├── meson-g12a-tanix-tx5max.dtb
│           │   │   │       ├── meson-g12a-u200.dtb
│           │   │   │       ├── meson-g12a-x96-max-rmii.dtb
│           │   │   │       ├── meson-g12a-x96-max.dtb
│           │   │   │       ├── meson-g12b-a311d-khadas-vim3.dtb
│           │   │   │       ├── meson-g12b-a311d-oes-00050000.dtb
│           │   │   │       ├── meson-g12b-a311d-oes-a.dtb
│           │   │   │       ├── meson-g12b-a311d-oes-b.dtb
│           │   │   │       ├── meson-g12b-a311d-oes.dtb
│           │   │   │       ├── meson-g12b-a311d-onethingcloud-oes-rgmii-rx-delay-3000ps.dtb
│           │   │   │       ├── meson-g12b-a311d-onethingcloud-oes.dtb
│           │   │   │       ├── meson-g12b-ali-ct2000.dtb
│           │   │   │       ├── meson-g12b-dreambox-one.dtb
│           │   │   │       ├── meson-g12b-dreambox-two.dtb
│           │   │   │       ├── meson-g12b-gsking-x.dtb
│           │   │   │       ├── meson-g12b-gtking-oc.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-h-oc.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-h.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-rev_a-oc.dtb
│           │   │   │       ├── meson-g12b-gtking-pro-rev_a.dtb
│           │   │   │       ├── meson-g12b-gtking-pro.dtb
│           │   │   │       ├── meson-g12b-gtking.dtb
│           │   │   │       ├── meson-g12b-odroid-n2-plus.dtb
│           │   │   │       ├── meson-g12b-odroid-n2.dtb
│           │   │   │       ├── meson-g12b-oes.dtb
│           │   │   │       ├── meson-g12b-radxa-zero2.dtb
│           │   │   │       ├── meson-g12b-s922x-khadas-vim3.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-00050000.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-a.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-b.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus-v2.dtb
│           │   │   │       ├── meson-g12b-s922x-oes-plus.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6-plus.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6b-plus-oc.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6b-plus.dtb
│           │   │   │       ├── meson-g12b-ugoos-am6b1.dtb
│           │   │   │       ├── meson-gxbb-beelink-mini-mx.dtb
│           │   │   │       ├── meson-gxbb-beelink-mini-mxiii.dtb
│           │   │   │       ├── meson-gxbb-kii-pro.dtb
│           │   │   │       ├── meson-gxbb-mecool-ki-plus.dtb
│           │   │   │       ├── meson-gxbb-mecool-kii-pro.dtb
│           │   │   │       ├── meson-gxbb-minix-neo-u1.dtb
│           │   │   │       ├── meson-gxbb-mxq-pro-plus.dtb
│           │   │   │       ├── meson-gxbb-nanopi-k2.dtb
│           │   │   │       ├── meson-gxbb-nexbox-a95x.dtb
│           │   │   │       ├── meson-gxbb-odroidc2.dtb
│           │   │   │       ├── meson-gxbb-p200.dtb
│           │   │   │       ├── meson-gxbb-p201.dtb
│           │   │   │       ├── meson-gxbb-vega-s95-meta.dtb
│           │   │   │       ├── meson-gxbb-vega-s95-pro.dtb
│           │   │   │       ├── meson-gxbb-vega-s95-telos.dtb
│           │   │   │       ├── meson-gxbb-wetek-hub.dtb
│           │   │   │       ├── meson-gxbb-wetek-play2.dtb
│           │   │   │       ├── meson-gxl-s805x-libretech-ac.dtb
│           │   │   │       ├── meson-gxl-s805x-p241.dtb
│           │   │   │       ├── meson-gxl-s905d-libretech-pc.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-ki-plus.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-ki-pro.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-kii-pro.dtb
│           │   │   │       ├── meson-gxl-s905d-mecool-m8s-plus.dtb
│           │   │   │       ├── meson-gxl-s905d-p230.dtb
│           │   │   │       ├── meson-gxl-s905d-p231.dtb
│           │   │   │       ├── meson-gxl-s905d-phicomm-n1-thresh.dtb
│           │   │   │       ├── meson-gxl-s905d-phicomm-n1.dtb
│           │   │   │       ├── meson-gxl-s905d-sml5442tw.dtb
│           │   │   │       ├── meson-gxl-s905d-vero4k-plus.dtb
│           │   │   │       ├── meson-gxl-s905l-venz-v10.dtb
│           │   │   │       ├── meson-gxl-s905l2-ipbs9505.dtb
│           │   │   │       ├── meson-gxl-s905l2-x7-5g.dtb
│           │   │   │       ├── meson-gxl-s905l3b-e900v22e.dtb
│           │   │   │       ├── meson-gxl-s905l3b-m302a.dtb
│           │   │   │       ├── meson-gxl-s905w-jethome-jethub-j80.dtb
│           │   │   │       ├── meson-gxl-s905w-p281.dtb
│           │   │   │       ├── meson-gxl-s905w-tx3-mini.dtb
│           │   │   │       ├── meson-gxl-s905w-x96-mini.dtb
│           │   │   │       ├── meson-gxl-s905w-x96w.dtb
│           │   │   │       ├── meson-gxl-s905x-b860h.dtb
│           │   │   │       ├── meson-gxl-s905x-hwacom-amazetv.dtb
│           │   │   │       ├── meson-gxl-s905x-khadas-vim.dtb
│           │   │   │       ├── meson-gxl-s905x-libretech-cc-v2.dtb
│           │   │   │       ├── meson-gxl-s905x-libretech-cc.dtb
│           │   │   │       ├── meson-gxl-s905x-nexbox-a95x.dtb
│           │   │   │       ├── meson-gxl-s905x-p212.dtb
│           │   │   │       ├── meson-gxl-s905x-tbee.dtb
│           │   │   │       ├── meson-gxl-s905x-tx9.dtb
│           │   │   │       ├── meson-gxl-s905x-vero4k.dtb
│           │   │   │       ├── meson-gxm-beelink-gt1.dtb
│           │   │   │       ├── meson-gxm-fake-octopus-planet.dtb
│           │   │   │       ├── meson-gxm-gt1-ultimate.dtb
│           │   │   │       ├── meson-gxm-gt1.dtb
│           │   │   │       ├── meson-gxm-khadas-vim2.dtb
│           │   │   │       ├── meson-gxm-mecool-kiii-pro.dtb
│           │   │   │       ├── meson-gxm-minix-neo-u9h.dtb
│           │   │   │       ├── meson-gxm-nexbox-a1.dtb
│           │   │   │       ├── meson-gxm-nexbox-a2.dtb
│           │   │   │       ├── meson-gxm-octopus-planet.dtb
│           │   │   │       ├── meson-gxm-phicomm-t1.dtb
│           │   │   │       ├── meson-gxm-q200-mod.dtb
│           │   │   │       ├── meson-gxm-q200.dtb
│           │   │   │       ├── meson-gxm-q201.dtb
│           │   │   │       ├── meson-gxm-rbox-pro.dtb
│           │   │   │       ├── meson-gxm-s912-libretech-pc.dtb
│           │   │   │       ├── meson-gxm-t95z-plus.dtb
│           │   │   │       ├── meson-gxm-tx8-max.dtb
│           │   │   │       ├── meson-gxm-tx9-pro.dtb
│           │   │   │       ├── meson-gxm-vega-s96.dtb
│           │   │   │       ├── meson-gxm-wetek-core2.dtb
│           │   │   │       ├── meson-gxm-x92.dtb
│           │   │   │       ├── meson-s4-s805x2-aq222.dtb
│           │   │   │       ├── meson-sm1-a95xf3-air-gbit.dtb
│           │   │   │       ├── meson-sm1-a95xf3-air.dtb
│           │   │   │       ├── meson-sm1-bananapi-m5.dtb
│           │   │   │       ├── meson-sm1-h96-max-x3-oc.dtb
│           │   │   │       ├── meson-sm1-h96-max-x3.dtb
│           │   │   │       ├── meson-sm1-h96-max.dtb
│           │   │   │       ├── meson-sm1-hk1box-vontar-x3-oc.dtb
│           │   │   │       ├── meson-sm1-hk1box-vontar-x3.dtb
│           │   │   │       ├── meson-sm1-khadas-vim3l.dtb
│           │   │   │       ├── meson-sm1-odroid-c4.dtb
│           │   │   │       ├── meson-sm1-odroid-hc4.dtb
│           │   │   │       ├── meson-sm1-sei610.dtb
│           │   │   │       ├── meson-sm1-skyworth-lb2004-a4091.dtb
│           │   │   │       ├── meson-sm1-tox1.dtb
│           │   │   │       ├── meson-sm1-tx3-bz-oc.dtb
│           │   │   │       ├── meson-sm1-tx3-bz.dtb
│           │   │   │       ├── meson-sm1-tx3-qz-oc.dtb
│           │   │   │       ├── meson-sm1-tx3-qz.dtb
│           │   │   │       ├── meson-sm1-ugoos-x3-oc.dtb
│           │   │   │       ├── meson-sm1-ugoos-x3.dtb
│           │   │   │       ├── meson-sm1-x88-pro-x3-4g.dtb
│           │   │   │       ├── meson-sm1-x88-pro-x3.dtb
│           │   │   │       ├── meson-sm1-x96-air-gbit.dtb
│           │   │   │       ├── meson-sm1-x96-air.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-100m.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-2101.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-a100.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-ip1001m-2.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-ip1001m.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-oc.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-q1.dtb
│           │   │   │       ├── meson-sm1-x96-max-plus-q2.dtb
│           │   │   │       └── meson-sm1-x96-max-plus.dtb
│           │   │   ├── emmc_autoscript
│           │   │   ├── emmc_autoscript.cmd
│           │   │   ├── extlinux/
│           │   │   │   └── extlinux.conf.bak
│           │   │   ├── s905_autoscript
│           │   │   ├── s905_autoscript.cmd
│           │   │   ├── u-boot.sd
│           │   │   ├── u-boot.usb
│           │   │   └── uEnv.txt
│           │   └── rootfs/
│           │       └── usr/
│           │           ├── bin/
│           │           │   └── ampart
│           │           ├── sbin/
│           │           │   ├── armbian-install
│           │           │   └── armbian-openvfd
│           │           └── share/
│           │               └── openvfd/
│           │                   ├── conf/
│           │                   │   ├── h96max-x3.conf
│           │                   │   ├── hk1-x3.conf
│           │                   │   ├── hk1box.conf
│           │                   │   ├── t95.conf
│           │                   │   ├── t95z-plus.conf
│           │                   │   ├── tx3-mini.conf
│           │                   │   ├── tx3.conf
│           │                   │   ├── tx9-pro.conf
│           │                   │   ├── whale.conf
│           │                   │   ├── x88pro-x3.conf
│           │                   │   ├── x92.conf
│           │                   │   ├── x96air.conf
│           │                   │   ├── x96max.conf
│           │                   │   └── x96maxplus.conf
│           │                   └── vfdservice
│           └── rockchip/
│               └── bootfs/
│                   ├── armbianEnv.txt
│                   ├── armbian_first_run.txt.template
│                   ├── boot.cmd
│                   ├── boot.scr
│                   ├── dtb/
│                   │   └── rockchip/
│                   │       ├── rk3318-box.dtb
│                   │       ├── rk3328-beikeyun-1200mhz.dtb
│                   │       ├── rk3328-beikeyun-1296mhz.dtb
│                   │       ├── rk3328-beikeyun-1392mhz.dtb
│                   │       ├── rk3328-beikeyun-1512mhz.dtb
│                   │       ├── rk3328-box-trn9.dtb
│                   │       ├── rk3328-chainedbox.dtb
│                   │       ├── rk3328-l1pro-1296mhz.dtb
│                   │       ├── rk3328-l1pro-1392mhz.dtb
│                   │       ├── rk3328-l1pro-1512mhz.dtb
│                   │       ├── rk3328-nanopi-r2-rev00.dtb
│                   │       ├── rk3328-nanopi-r2-rev06.dtb
│                   │       ├── rk3328-nanopi-r2-rev20.dtb
│                   │       ├── rk3328-nanopi-r2s.dtb
│                   │       ├── rk3328-roc-cc.dtb
│                   │       ├── rk3399-aio-3399b.dtb
│                   │       ├── rk3399-aio-3399c-ai.dtb
│                   │       ├── rk3399-aio-3399c.dtb
│                   │       ├── rk3399-am40.dtb
│                   │       ├── rk3399-bozz-sw799.dtb
│                   │       ├── rk3399-crrc.dtb
│                   │       ├── rk3399-dg3399.dtb
│                   │       ├── rk3399-dlfr100.dtb
│                   │       ├── rk3399-eaidk-610-v2.dtb
│                   │       ├── rk3399-eaidk-610.dtb
│                   │       ├── rk3399-emb3531-old.dtb
│                   │       ├── rk3399-emb3531.dtb
│                   │       ├── rk3399-fine3399.dtb
│                   │       ├── rk3399-firefly-150.dtb
│                   │       ├── rk3399-firefly-core-3399-jd4.dtb
│                   │       ├── rk3399-firefly.dtb
│                   │       ├── rk3399-fmx1-pro-b.dtb
│                   │       ├── rk3399-fmx1-pro.dtb
│                   │       ├── rk3399-gea-6319.dtb
│                   │       ├── rk3399-gea6319.dtb
│                   │       ├── rk3399-hs530r.dtb
│                   │       ├── rk3399-hugsun-x99.dtb
│                   │       ├── rk3399-hugsun-zm.dtb
│                   │       ├── rk3399-king3399.dtb
│                   │       ├── rk3399-kylin3399.dtb
│                   │       ├── rk3399-leez-p710.dtb
│                   │       ├── rk3399-lx-r3s.dtb
│                   │       ├── rk3399-nanopc-t4.dtb
│                   │       ├── rk3399-nanopi-r4s.dtb
│                   │       ├── rk3399-smart-am40-oc.dtb
│                   │       ├── rk3399-smart-am40.dtb
│                   │       ├── rk3399-sv-33a6x-vpu.dtb
│                   │       ├── rk3399-sv-33a6x.dtb
│                   │       ├── rk3399-taram.dtb
│                   │       ├── rk3399-tb-ls3399.dtb
│                   │       ├── rk3399-tn3399-v3.dtb
│                   │       ├── rk3399-tn3399.dtb
│                   │       ├── rk3399-tpm312.dtb
│                   │       ├── rk3399-tvi3315a.dtb
│                   │       ├── rk3399-xiaobao.dtb
│                   │       ├── rk3399-yskj.dtb
│                   │       ├── rk3399-zcube1-max.dtb
│                   │       ├── rk3399-zk-r39a.dtb
│                   │       ├── rk3399-zysj.dtb
│                   │       ├── rk3528-cd1000.dtb
│                   │       ├── rk3528-hk1-rbox-k8s.dtb
│                   │       ├── rk3528-hlink-h28k.dtb
│                   │       ├── rk3528-ht2.dtb
│                   │       ├── rk3528-mangopi-m28k.dtb
│                   │       ├── rk3528-radxa-e20c.dtb
│                   │       ├── rk3566-jp-tvbox.dtb
│                   │       ├── rk3566-nanopi-r3s-lts.dtb
│                   │       ├── rk3566-nanopi-r3s.dtb
│                   │       ├── rk3566-onethingcloud-oec.dtb
│                   │       ├── rk3566-orangepi-3b-v1.1.dtb
│                   │       ├── rk3566-orangepi-3b-v2.1.dtb
│                   │       ├── rk3566-orangepi-3b.dtb
│                   │       ├── rk3566-panther-x2.dtb
│                   │       ├── rk3566-radxa-cm3-rpi-cm4-io.dtb
│                   │       ├── rk3566-roc-pc.dtb
│                   │       ├── rk3566-taishanpi-v10.dtb
│                   │       ├── rk3566-wxy-oec-turbo-4g.dtb
│                   │       ├── rk3568-alark35-3500.dtb
│                   │       ├── rk3568-bd-one.dtb
│                   │       ├── rk3568-bdy-g18-pro.dtb
│                   │       ├── rk3568-dg-tn3568.dtb
│                   │       ├── rk3568-fastrhino-r66s.dtb
│                   │       ├── rk3568-fastrhino-r68s.dtb
│                   │       ├── rk3568-gzpeite.dtb
│                   │       ├── rk3568-hinlink-h66k.dtb
│                   │       ├── rk3568-hinlink-h68k.dtb
│                   │       ├── rk3568-hlink-h66k.dtb
│                   │       ├── rk3568-hlink-h68k.dtb
│                   │       ├── rk3568-hlink-h69k.dtb
│                   │       ├── rk3568-lyt-t68m.dtb
│                   │       ├── rk3568-lz-d3568-v3.dtb
│                   │       ├── rk3568-lz-k3568.dtb
│                   │       ├── rk3568-mmbox-anas3035.dtb
│                   │       ├── rk3568-mrkaio-m68s.dtb
│                   │       ├── rk3568-nanopi-r5c.dtb
│                   │       ├── rk3568-nanopi-r5s.dtb
│                   │       ├── rk3568-nsy-g16-plus.dtb
│                   │       ├── rk3568-nsy-g68-plus.dtb
│                   │       ├── rk3568-photonicat.dtb
│                   │       ├── rk3568-radxa-e25.dtb
│                   │       ├── rk3568-roc-pc.dtb
│                   │       ├── rk3568-ruisen-box.dtb
│                   │       ├── rk3568-seewo-sv21.dtb
│                   │       ├── rk3568-swan1-w28.dtb
│                   │       ├── rk3568-wocyber-a3.dtb
│                   │       ├── rk3576-nanopi-m5.dtb
│                   │       ├── rk3588-beelink-ipc-r.dtb
│                   │       ├── rk3588-dc-a588.dtb
│                   │       ├── rk3588-friendlyelec-cm3588-nas.dtb
│                   │       ├── rk3588-hlink-h88k-v3.dtb
│                   │       ├── rk3588-hlink-h88k-v31.dtb
│                   │       ├── rk3588-hlink-h88k.dtb
│                   │       ├── rk3588-lz-d3588.dtb
│                   │       ├── rk3588-nanopc-t6.dtb
│                   │       ├── rk3588-orangepi-5-plus.dtb
│                   │       ├── rk3588-rock-5-itx.dtb
│                   │       ├── rk3588-rock-5b.dtb
│                   │       ├── rk3588-smart-am60.dtb
│                   │       ├── rk3588s-boca-tcn100.dtb
│                   │       ├── rk3588s-orangepi-5b.dtb
│                   │       └── rk3588s-rock-5c.dtb
│                   └── extlinux/
│                       └── extlinux.conf.bak
├── compile-kernel/
│   ├── README.cn.md
│   ├── README.ja.md
│   ├── README.md
│   └── tools/
│       ├── config/
│       │   └── .gitkeep
│       ├── patch/
│       │   └── .gitkeep
│       └── script/
│           ├── armbian-compile-kernel-depends
│           ├── armbian_compile_kernel.sh
│           ├── docker/
│           │   ├── Dockerfile
│           │   ├── build_armbian_docker_image.sh
│           │   ├── build_armbian_rootfs_file.sh
│           │   └── docker_startup.sh
│           ├── ubuntu2204-build-armbian-depends
│           └── ubuntu2404-build-armbian-depends
├── documents/
│   ├── README.cn.md
│   ├── README.ja.md
│   ├── README.md
│   ├── android_partition_table_template.xlsx
│   ├── armbian_software.md
│   └── led_screen_display_control.md
├── rebuild
└── recompile
Download .txt
SYMBOL INDEX (11 symbols across 1 files)

FILE: build-armbian/armbian-files/different-files/hugsun-zm/rootfs/root/led-control/aw2028.c
  function aw2028_init (line 21) | static uint8_t aw2028_init(void)
  function i2c_write (line 41) | static uint8_t i2c_write(uint8_t reg, uint8_t val)
  function i2c_read (line 59) | static uint8_t i2c_read(uint8_t reg, uint8_t *val)
  function ms2timer (line 74) | unsigned char ms2timer(unsigned int time)
  function AW2028_LED_ON (line 96) | unsigned char AW2028_LED_ON(unsigned char r, unsigned char g, unsigned c...
  function AW2028_LED_OFF (line 117) | unsigned char AW2028_LED_OFF(void)
  function AW2028_LED_Blink (line 123) | unsigned char AW2028_LED_Blink(unsigned char r, unsigned char g,
  function AW2028_Audio_Corss_Zero (line 161) | unsigned char AW2028_Audio_Corss_Zero(void)
  function AW2028_Audio_Timer (line 190) | unsigned char AW2028_Audio_Timer(void)
  function AW2028_Audio (line 219) | unsigned char AW2028_Audio(unsigned char mode)
  function main (line 251) | int main(int argc, char **argv)
Condensed preview — 595 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (1,540K chars).
[
  {
    "path": ".github/.gitkeep",
    "chars": 0,
    "preview": ""
  },
  {
    "path": ".github/ISSUE_TEMPLATE/bug-report.md",
    "chars": 629,
    "preview": "---\nname: Bug report\nabout: Create a report to help us improve\ntitle: ''\nlabels: ''\nassignees: ''\n---\n\n**Device Informat"
  },
  {
    "path": ".github/workflows/build-armbian-arm64-docker-image.yml",
    "chars": 5637,
    "preview": "#=====================================================================================\n# https://github.com/ophub/amlogi"
  },
  {
    "path": ".github/workflows/build-armbian-arm64-server-image.yml",
    "chars": 13222,
    "preview": "#==========================================================================\n# Description: Build Armbian arm64 server im"
  },
  {
    "path": ".github/workflows/build-armbian-using-official-image.yml",
    "chars": 12190,
    "preview": "#==========================================================================\n# Description: Build Armbian from official u"
  },
  {
    "path": ".github/workflows/build-armbian-using-releases-files.yml",
    "chars": 12968,
    "preview": "#==========================================================================\n# Description: Build Armbian using releases "
  },
  {
    "path": ".github/workflows/build-armbian-x86-server-image.yml",
    "chars": 7487,
    "preview": "#==========================================================================\n# Description: Build Armbian x86 server imag"
  },
  {
    "path": ".github/workflows/compile-kernel.yml",
    "chars": 7538,
    "preview": "#==========================================================================\n# Description: Compile the kernel\n# Copyrigh"
  },
  {
    "path": ".github/workflows/delete-older-releases-workflows.yml",
    "chars": 3224,
    "preview": "#==========================================================================\n# https://github.com/ophub/amlogic-s9xxx-arm"
  },
  {
    "path": ".gitignore",
    "chars": 194,
    "preview": "!.gitignore\n/build\n/tmp_dir\n/build-armbian/kernel\n/build-armbian/u-boot\n/compile-kernel/kernel\n/compile-kernel/output\n/c"
  },
  {
    "path": "CONTRIBUTORS.md",
    "chars": 78725,
    "preview": "# Armbian Contributors\n\nFirst of all, thanks to [150balbes](https://github.com/150balbes) for the outstanding contributi"
  },
  {
    "path": "LICENSE",
    "chars": 18092,
    "preview": "                    GNU GENERAL PUBLIC LICENSE\n                       Version 2, June 1991\n\n Copyright (C) 1989, 1991 Fr"
  },
  {
    "path": "README.cn.md",
    "chars": 35032,
    "preview": "<div align=\"center\">\n    <img alt=\"Armbian\" src=\"https://github.com/user-attachments/assets/74e55052-031b-48f8-9aca-e5f1"
  },
  {
    "path": "README.ja.md",
    "chars": 36661,
    "preview": "<div align=\"center\">\n    <img alt=\"Armbian\" src=\"https://github.com/user-attachments/assets/74e55052-031b-48f8-9aca-e5f1"
  },
  {
    "path": "README.md",
    "chars": 42557,
    "preview": "<div align=\"center\">\n    <img alt=\"Armbian\" src=\"https://github.com/user-attachments/assets/74e55052-031b-48f8-9aca-e5f1"
  },
  {
    "path": "action.yml",
    "chars": 14823,
    "preview": "name: \"Rebuild Armbian and Kernel\"\nauthor: \"https://github.com/ophub/amlogic-s9xxx-armbian\"\ndescription: \"Support Amlogi"
  },
  {
    "path": "build-armbian/README.cn.md",
    "chars": 799,
    "preview": "# 构建文件说明\n\n[View English description](README.md) | [查看中文说明](README.cn.md) | [日本語の説明を確認する](README.ja.md)\n\n编译 Armbian 系统所需的"
  },
  {
    "path": "build-armbian/README.ja.md",
    "chars": 1078,
    "preview": "# ビルドファイルの説明\n\n[View English description](README.md) | [查看中文说明](README.cn.md) | [日本語の説明を確認する](README.ja.md)\n\nArmbian システム"
  },
  {
    "path": "build-armbian/README.md",
    "chars": 1599,
    "preview": "# Build Files Reference\n\n[View English description](README.md) | [查看中文说明](README.cn.md) | [日本語の説明を確認する](README.ja.md)\n\nT"
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/balance_irq",
    "chars": 151,
    "preview": "eth0\t4\nxhci-hcd:usb1\t3\nxhci-hcd:usb2\t3\nxhci-hcd:usb3\t3\nxhci-hcd:usb4\t3\nxhci-hcd:usb5\t3\nxhci-hcd:usb6\t3\nxhci-hcd:usb7\t3\nx"
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/custom_service/start_service.sh",
    "chars": 6811,
    "preview": "#!/bin/bash\n#========================================================================================\n#\n# This file is l"
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/default/cpufrequtils",
    "chars": 1144,
    "preview": "# The file path: /etc/default/cpufrequtils\n# Call file: /etc/init.d/cpufrequtils\n#\n# View setup results:\n# cat /sys/devi"
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/fstab",
    "chars": 294,
    "preview": "LABEL=ROOTFS    /        ext4     defaults,noatime,nodiratime,commit=600,errors=remount-ro    0 1\nLABEL=BOOT      /boot "
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/model_database.conf",
    "chars": 124711,
    "preview": "#======================================================================================================================="
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/modprobe.d/brcmfmac.conf",
    "chars": 42,
    "preview": "options brcmfmac feature_disable=0x282000\n"
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/modules-load.d/ophub-load-list.conf",
    "chars": 295,
    "preview": "# This is a custom file to automatically load driver modules at boot.\n# Add modules here that you would normally load ma"
  },
  {
    "path": "build-armbian/armbian-files/common-files/etc/sysctl.conf",
    "chars": 4009,
    "preview": "#\n# /etc/sysctl.conf - Configuration file for setting system variables\n# See /etc/sysctl.d/ for additional system variab"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-apt",
    "chars": 8682,
    "preview": "#!/bin/bash\n#===========================================================================\n#\n# This file is licensed under"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-ddbr",
    "chars": 4996,
    "preview": "#!/bin/bash\n#===========================================================================\n#\n# This file is licensed under"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-docker",
    "chars": 6694,
    "preview": "#!/bin/bash\n#===========================================================================\n#\n# This file is licensed under"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-fix",
    "chars": 17278,
    "preview": "#!/bin/bash\n#========================================================================================\n#\n# This file is l"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-kernel",
    "chars": 6529,
    "preview": "#!/bin/bash\n#==============================================================================================\n#\n# This fil"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-software",
    "chars": 11762,
    "preview": "#!/bin/bash\n#==============================================================================================\n#\n# This fil"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-swap",
    "chars": 5802,
    "preview": "#!/bin/bash\n#===========================================================================\n#\n# This file is licensed under"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-sync",
    "chars": 5666,
    "preview": "#!/bin/bash\n#==========================================================================\n#\n# This file is licensed under "
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-tf",
    "chars": 3401,
    "preview": "#!/bin/bash\n#===========================================================================\n#\n# This file is licensed under"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/armbian-update",
    "chars": 49643,
    "preview": "#!/bin/bash\n#==================================================================================================\n#\n# This"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/sbin/balethirq.pl",
    "chars": 7992,
    "preview": "#!/usr/bin/perl\n# Copyright (C) 2021- https://github.com/unifreq\n\nuse strict;\nour %irq_map;\nour %cpu_map;\nour %min_cpu_m"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/alsa/cards/axg-sound-card.conf",
    "chars": 1402,
    "preview": "# SPDX-License-Identifier: GPL-2.0\n# Copyright (C) 2020-present Team LibreELEC (https://libreelec.tv)\n\n#\n# Configuration"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/201-desktop-chinese-fonts.sh",
    "chars": 6292,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/301-frps.sh",
    "chars": 7713,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/302-frpc.sh",
    "chars": 7272,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/command-desktop.sh",
    "chars": 9645,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/command-docker.sh",
    "chars": 36575,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/command-service.sh",
    "chars": 24471,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/software-command.sh",
    "chars": 7946,
    "preview": "#!/bin/bash\n#============================================================================\n#\n# This file is licensed unde"
  },
  {
    "path": "build-armbian/armbian-files/common-files/usr/share/ophub/armbian-software/software-list.conf",
    "chars": 7829,
    "preview": "#=====================================================================================================================\n#"
  },
  {
    "path": "build-armbian/armbian-files/different-files/a311d-oes/bootfs/extlinux/extlinux.conf.bak",
    "chars": 448,
    "preview": "label Armbian\n    kernel /zImage\n    initrd /uInitrd\n    fdt /dtb/amlogic/meson-g12b-a311d-oes.dtb\n    append root=LABEL"
  },
  {
    "path": "build-armbian/armbian-files/different-files/a311d-oes/bootfs/uEnv.txt",
    "chars": 421,
    "preview": "LINUX=/zImage\nINITRD=/uInitrd\nFDT=/dtb/amlogic/meson-g12b-a311d-oes.dtb\nAPPEND=root=LABEL=ROOTFS console=ttyAML0,115200n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/a311d-oes/rootfs/etc/armbian-board-release.conf",
    "chars": 4853,
    "preview": "#===========================================================================\n#\n# This file is a part of the Rebuild Armb"
  },
  {
    "path": "build-armbian/armbian-files/different-files/a311d-oes/rootfs/etc/fw_env.config",
    "chars": 45,
    "preview": "/dev/mmcblk2    0x27400000  0x10000  0x10000\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/a311d-oes/rootfs/usr/bin/oes_sata_leds.sh",
    "chars": 3909,
    "preview": "#!/bin/bash\n# ==================================================================================\n#\n# 脚本用途: 监控 WXY-OES(A3"
  },
  {
    "path": "build-armbian/armbian-files/different-files/alark35-3500/bootfs/armbianEnv.txt",
    "chars": 418,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-alark35-3500.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,"
  },
  {
    "path": "build-armbian/armbian-files/different-files/alark35-3500/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/anas3035/bootfs/armbianEnv.txt",
    "chars": 175,
    "preview": "verbosity=1\nbootlogo=false\nconsole=both\nextraargs=cma=256M rw rootwait\noverlay_prefix=rk35xx\nfdtfile=rockchip/rk3568-mmb"
  },
  {
    "path": "build-armbian/armbian-files/different-files/anas3035/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdkj-bd-one/bootfs/armbianEnv.txt",
    "chars": 241,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-bd-one.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,errors"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdkj-bd-one/bootfs/boot.cmd",
    "chars": 3180,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdkj-bd-one/bootfs/extlinux/extlinux.conf.bak",
    "chars": 293,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3568-nsy-g68-plus.dtb\n  APPEND root=LABEL=ROOTFS co"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdkj-bd-one/rootfs/etc/modules-load.d/bridge.conf",
    "chars": 13,
    "preview": "br_netfilter\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdkj-bd-one/rootfs/etc/sysctl.d/99-custom.conf",
    "chars": 218,
    "preview": "# Enable IP forwarding\nnet.ipv4.ip_forward = 1\n\n# Configure bridged traffic to bypass the firewall\nnet.bridge.bridge-nf-"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdy-g18-pro/bootfs/armbianEnv.txt",
    "chars": 306,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-bdy-g18-pro.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,e"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdy-g18-pro/bootfs/boot.cmd",
    "chars": 3840,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdy-g18-pro/bootfs/extlinux/extlinux.conf.bak",
    "chars": 281,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3568-bdy-g18-pro.dtb\n  APPEND root=LABEL=ROOTFS con"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdy-g18-pro/rootfs/etc/modules-load.d/bridge.conf",
    "chars": 13,
    "preview": "br_netfilter\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/bdy-g18-pro/rootfs/etc/sysctl.d/99-custom.conf",
    "chars": 218,
    "preview": "# Enable IP forwarding\nnet.ipv4.ip_forward = 1\n\n# Configure bridged traffic to bypass the firewall\nnet.bridge.bridge-nf-"
  },
  {
    "path": "build-armbian/armbian-files/different-files/beikeyun/bootfs/armbianEnv.txt",
    "chars": 268,
    "preview": "verbosity=1\noverlay_prefix=rockchip\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,errors=remount-ro\nextraargs=usbc"
  },
  {
    "path": "build-armbian/armbian-files/different-files/beikeyun/bootfs/boot.cmd",
    "chars": 2934,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/boca-tcn100/bootfs/armbianEnv.txt",
    "chars": 196,
    "preview": "verbosity=1\nbootlogo=false\noverlay_prefix=rk3588\nfdtfile=rockchip/rk3588s-boca-tcn100.dtb\nrootdev=/dev/mmcblk0p2\nextraar"
  },
  {
    "path": "build-armbian/armbian-files/different-files/boca-tcn100/bootfs/boot.cmd",
    "chars": 4173,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/boca-tcn100/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  6\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/cd1000/bootfs/armbianEnv.txt",
    "chars": 412,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3528-cd1000.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,errors="
  },
  {
    "path": "build-armbian/armbian-files/different-files/cd1000/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/cd1000/rootfs/etc/balance_irq",
    "chars": 326,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/chainedbox/bootfs/armbianEnv.txt",
    "chars": 360,
    "preview": "verbosity=7\nbootlogo=false\noverlay_prefix=rockchip\nfdtfile=/dtb/rockchip/rk3328-l1pro-1296mhz.dtb\nrootdev=/dev/mmcblk0p2"
  },
  {
    "path": "build-armbian/armbian-files/different-files/chainedbox/bootfs/boot.cmd",
    "chars": 3108,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/chainedbox/rootfs/usr/bin/pwm-fan.pl",
    "chars": 6205,
    "preview": "#!/usr/bin/perl\n\nuse strict;\nuse Sys::Hostname;\nuse File::Glob qw(bsd_glob);\n\n##########################################"
  },
  {
    "path": "build-armbian/armbian-files/different-files/cm3588-nas/bootfs/armbianEnv.txt",
    "chars": 199,
    "preview": "verbosity=1\nbootlogo=false\nconsole=both\nextraargs=cma=256M\noverlay_prefix=rk3588\nfdtfile=rockchip/rk3588-friendlyelec-cm"
  },
  {
    "path": "build-armbian/armbian-files/different-files/cm3588-nas/bootfs/boot.cmd",
    "chars": 3834,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/cm3588-nas/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  7\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/dc-a588/bootfs/armbianEnv.txt",
    "chars": 372,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588-dc-a588.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,errors"
  },
  {
    "path": "build-armbian/armbian-files/different-files/dc-a588/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/e20c/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=1\nbootlogo=true\nfdtfile=rockchip/rk3528-radxa-e20c.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/e20c/bootfs/armbian_first_run.txt.template",
    "chars": 1536,
    "preview": "#-----------------------------------------------------------------\n# Armbian first run configuration\n# Set optional end "
  },
  {
    "path": "build-armbian/armbian-files/different-files/e20c/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/e20c/rootfs/etc/balance_irq",
    "chars": 326,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/e25/bootfs/armbianEnv.txt",
    "chars": 415,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-radxa-e25.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/e25/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/e25/rootfs/etc/balance_irq",
    "chars": 1150,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/firefly-rk3399/bootfs/boot.cmd",
    "chars": 3180,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/firefly-rk3399/bootfs/extlinux/extlinux.conf.bak",
    "chars": 264,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3399-firefly.dtb\n  APPEND root=LABEL=ROOTFS console"
  },
  {
    "path": "build-armbian/armbian-files/different-files/gzpeite-p01/bootfs/armbianEnv.txt",
    "chars": 242,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-gzpeite.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,error"
  },
  {
    "path": "build-armbian/armbian-files/different-files/gzpeite-p01/bootfs/boot.cmd",
    "chars": 3180,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/gzpeite-p01/bootfs/extlinux/extlinux.conf.bak",
    "chars": 289,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3568-gzpeite.dtb\n  APPEND root=LABEL=ROOTFS console"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h28k/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3528-hlink-h28k.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h28k/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h28k/rootfs/etc/balance_irq",
    "chars": 326,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h66k/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3568-hlink-h66k.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h66k/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h66k/rootfs/etc/balance_irq",
    "chars": 596,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h68k/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3568-hlink-h68k.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h68k/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h68k/rootfs/etc/balance_irq",
    "chars": 967,
    "preview": "# H68K 网卡中断优化配置\n# 映射关系: 1->CPU0, 2->CPU1, 3->CPU2, 4->CPU3\n\n# ==========================\n# 1. GMAC LAN (eth0, eth1)\n# 负载"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h69k/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3568-hlink-h69k.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h69k/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h69k/rootfs/etc/balance_irq",
    "chars": 539,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h88k/bootfs/armbianEnv.txt",
    "chars": 374,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588-hlink-h88k.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h88k/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/h88k/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  7\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h88k-v3/bootfs/armbianEnv.txt",
    "chars": 377,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588-hlink-h88k-v3.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h88k-v3/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/h88k-v3/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  7\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h96-max-m2/bootfs/armbianEnv.txt",
    "chars": 229,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3528-mangopi-m28k.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,"
  },
  {
    "path": "build-armbian/armbian-files/different-files/h96-max-m2/bootfs/boot.cmd",
    "chars": 3834,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/hk1-rbox-k8s/bootfs/armbianEnv.txt",
    "chars": 418,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3528-hk1-rbox-k8s.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,e"
  },
  {
    "path": "build-armbian/armbian-files/different-files/hk1-rbox-k8s/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/hk1-rbox-k8s/rootfs/etc/balance_irq",
    "chars": 326,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ht2/bootfs/armbianEnv.txt",
    "chars": 409,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3528-ht2.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,errors=rem"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ht2/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ht2/rootfs/etc/balance_irq",
    "chars": 326,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/hugsun-zm/rootfs/root/led-control/aw2028.c",
    "chars": 6533,
    "preview": "#include <stdio.h>\n#include <stdint.h>\n#include <stdlib.h>\n#include <err.h>\n#include <errno.h>\n\n#include <linux/types.h>"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ipc-r/bootfs/armbianEnv.txt",
    "chars": 401,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588-nvr-demo-v10-android.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=btrfs\nrootf"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ipc-r/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/ipc-r/rootfs/etc/balance_irq",
    "chars": 539,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/jp-tvbox/bootfs/armbianEnv.txt",
    "chars": 427,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3566-jp-tvbox.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,error"
  },
  {
    "path": "build-armbian/armbian-files/different-files/jp-tvbox/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/lckfb-tspi/bootfs/armbianEnv.txt",
    "chars": 432,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3566-taishanpi-v10.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,"
  },
  {
    "path": "build-armbian/armbian-files/different-files/lckfb-tspi/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/lz-d3588/bootfs/armbianEnv.txt",
    "chars": 165,
    "preview": "verbosity=1\nbootlogo=true\nconsole=both\nextraargs=cma=256M\noverlay_prefix=rockchip-rk3588\nfdtfile=rockchip/rk3588-lz-d358"
  },
  {
    "path": "build-armbian/armbian-files/different-files/lz-d3588/bootfs/boot.cmd",
    "chars": 3834,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/mrkaio-m68s/bootfs/armbianEnv.txt",
    "chars": 417,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-mrkaio-m68s.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,e"
  },
  {
    "path": "build-armbian/armbian-files/different-files/mrkaio-m68s/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/mrkaio-m68s/rootfs/etc/balance_irq",
    "chars": 517,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nanopc-t6/bootfs/armbianEnv.txt",
    "chars": 255,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3588-nanopc-t6.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nanopc-t6/bootfs/boot.cmd",
    "chars": 3834,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/nanopi-m5/bootfs/armbianEnv.txt",
    "chars": 148,
    "preview": "verbosity=1\nbootlogo=true\nconsole=both\noverlay_prefix=rk35xx\noverlays=\nfdtfile=rockchip/rk3576-nanopi-m5.dtb\nrootdev=/de"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nanopi-m5/bootfs/boot.cmd",
    "chars": 4078,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x48000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g16-plus/bootfs/armbianEnv.txt",
    "chars": 307,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-nsy-g16-plus.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g16-plus/bootfs/boot.cmd",
    "chars": 3840,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g16-plus/bootfs/extlinux/extlinux.conf.bak",
    "chars": 282,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3568-nsy-g16-plus.dtb\n  APPEND root=LABEL=ROOTFS co"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g16-plus/rootfs/etc/modules-load.d/bridge.conf",
    "chars": 13,
    "preview": "br_netfilter\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g16-plus/rootfs/etc/sysctl.d/99-custom.conf",
    "chars": 218,
    "preview": "# Enable IP forwarding\nnet.ipv4.ip_forward = 1\n\n# Configure bridged traffic to bypass the firewall\nnet.bridge.bridge-nf-"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g68-plus/bootfs/armbianEnv.txt",
    "chars": 247,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-nsy-g68-plus.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g68-plus/bootfs/boot.cmd",
    "chars": 3180,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g68-plus/bootfs/extlinux/extlinux.conf.bak",
    "chars": 294,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3568-nsy-g68-plus.dtb\n  APPEND root=LABEL=ROOTFS co"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g68-plus/rootfs/etc/modules-load.d/bridge.conf",
    "chars": 13,
    "preview": "br_netfilter\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/nsy-g68-plus/rootfs/etc/sysctl.d/99-custom.conf",
    "chars": 218,
    "preview": "# Enable IP forwarding\nnet.ipv4.ip_forward = 1\n\n# Configure bridged traffic to bypass the firewall\nnet.bridge.bridge-nf-"
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-3b/bootfs/armbianEnv.txt",
    "chars": 160,
    "preview": "verbosity=1\nbootlogo=false\nconsole=both\nextraargs=cma=256M\noverlay_prefix=rk3566\nfdtfile=rockchip/rk3566-orangepi-3b.dtb"
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-3b/bootfs/boot.cmd",
    "chars": 4077,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-5-plus/bootfs/armbianEnv.txt",
    "chars": 396,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588-orangepi-5-plus.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=btrfs\nrootflags="
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-5-plus/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-5-plus/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  7\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-5b/bootfs/armbianEnv.txt",
    "chars": 393,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588s-orangepi-5b.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=btrfs\nrootflags=com"
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-5b/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/orangepi-5b/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb2  2\nxhci-hcd:usb7  3\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/panther-x2/bootfs/armbianEnv.txt",
    "chars": 392,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3566-panther-x2.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/panther-x2/bootfs/boot.cmd",
    "chars": 3310,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/photonicat/bootfs/armbianEnv.txt",
    "chars": 256,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-photonicat.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,er"
  },
  {
    "path": "build-armbian/armbian-files/different-files/photonicat/bootfs/boot.cmd",
    "chars": 3208,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/photonicat/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  6\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/r66s/rootfs/etc/balance_irq",
    "chars": 509,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/r68s/bootfs/armbianEnv.txt",
    "chars": 433,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3568-fastrhino-r68s.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw"
  },
  {
    "path": "build-armbian/armbian-files/different-files/r68s/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/r68s/rootfs/etc/balance_irq",
    "chars": 539,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock-5-itx/bootfs/armbianEnv.txt",
    "chars": 167,
    "preview": "verbosity=1\nbootlogo=true\nconsole=both\nextraargs=cma=256M\noverlay_prefix=rockchip-rk3588\nfdtfile=rockchip/rk3588-rock-5-"
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock-5-itx/bootfs/boot.cmd",
    "chars": 3834,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock5b/bootfs/armbianEnv.txt",
    "chars": 388,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3588-rock-5b.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=btrfs\nrootflags=compress"
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock5b/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock5b/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  7\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock5c/bootfs/armbianEnv.txt",
    "chars": 178,
    "preview": "verbosity=1\nbootlogo=false\noverlay_prefix=rk3588\nfdtfile=rockchip/rk3588s-rock-5c.dtb\nrootdev=/dev/mmcblk0p2\nextraargs=r"
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock5c/bootfs/boot.cmd",
    "chars": 4173,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/rock5c/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  6\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ruisen-box/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3568-ruisen-box.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ruisen-box/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/ruisen-box/rootfs/etc/balance_irq",
    "chars": 596,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/s922x-oes-plus/bootfs/extlinux/extlinux.conf.bak",
    "chars": 462,
    "preview": "label Armbian\n    kernel /zImage\n    initrd /uInitrd\n    fdt /dtb/amlogic/meson-g12b-s922x-oes-plus-00050000.dtb\n    app"
  },
  {
    "path": "build-armbian/armbian-files/different-files/s922x-oes-plus/bootfs/uEnv.txt",
    "chars": 435,
    "preview": "LINUX=/zImage\nINITRD=/uInitrd\nFDT=/dtb/amlogic/meson-g12b-s922x-oes-plus-00050000.dtb\nAPPEND=root=LABEL=ROOTFS console=t"
  },
  {
    "path": "build-armbian/armbian-files/different-files/s922x-oes-plus/rootfs/etc/armbian-board-release.conf",
    "chars": 2397,
    "preview": "#===========================================================================\n#\n# This file is a part of the Rebuild Armb"
  },
  {
    "path": "build-armbian/armbian-files/different-files/s922x-oes-plus/rootfs/etc/fw_env.config",
    "chars": 90,
    "preview": "/dev/mmcblk2    0x7400000  0x10000  0x10000\n#/dev/mmcblk2    0x27400000  0x10000  0x10000\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/smart-am60/bootfs/armbianEnv.txt",
    "chars": 382,
    "preview": "verbosity=9\nbootlogo=true\nfdtfile=rockchip/rk3588-smart-am60.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=compre"
  },
  {
    "path": "build-armbian/armbian-files/different-files/smart-am60/bootfs/boot.cmd",
    "chars": 3334,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/smart-am60/rootfs/etc/balance_irq",
    "chars": 34,
    "preview": "xhci-hcd:usb5  5\nxhci-hcd:usb7  7\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/station-m2/bootfs/armbianEnv.txt",
    "chars": 282,
    "preview": "verbosity=1\nbootlogo=true\nfdtfile=rockchip/rk3566-roc-pc.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=compress=z"
  },
  {
    "path": "build-armbian/armbian-files/different-files/station-m2/bootfs/boot.cmd",
    "chars": 4077,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/swan1-w28/bootfs/armbianEnv.txt",
    "chars": 416,
    "preview": "verbosity=9\nbootlogo=false\nfdtfile=rockchip/rk3568-swan1-w28.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,err"
  },
  {
    "path": "build-armbian/armbian-files/different-files/swan1-w28/bootfs/boot.cmd",
    "chars": 3178,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x39000000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/swan1-w28/rootfs/etc/balance_irq",
    "chars": 517,
    "preview": "# /etc/balance_irq\n# 用于中断设备的负载均衡\n# 用法:\n# 首先, 用 cat /proc/interrupts 进行观察\n#        如果某个cpu负载过重,可以把对应的中断设备迁移到其它cpu\n#  /pro"
  },
  {
    "path": "build-armbian/armbian-files/different-files/vplus/rootfs/usr/bin/rgb-vplus",
    "chars": 5236,
    "preview": "#!/usr/bin/env perl\n\nuse strict;\nuse threads;\nuse Getopt::Long qw(:config no_ignore_case);\n\nmy $version=\"1.0.0\";\n\nmy %le"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wocyber-a3/bootfs/armbianEnv.txt",
    "chars": 256,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3568-wocyber-a3.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags=rw,er"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wocyber-a3/bootfs/boot.cmd",
    "chars": 3180,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect/bootfs/armbianEnv.txt",
    "chars": 311,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=rockchip/rk3566-wxy-oec-turbo-4g.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect/bootfs/boot.cmd",
    "chars": 8061,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv scriptaddr \"0x3200000"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect/bootfs/extlinux/extlinux.conf.bak",
    "chars": 322,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3566-wxy-oec-turbo-4g.dtb\n  APPEND root=LABEL=ROOTF"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect/rootfs/etc/armbian-board-release.conf",
    "chars": 1022,
    "preview": "#===========================================================================\n#\n# This file is a part of the Rebuild Armb"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect/rootfs/etc/fw_env.config",
    "chars": 39,
    "preview": "/dev/mmcblk0 0x9000000 0x10000 0x10000\n"
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect-mod/bootfs/armbianEnv.txt",
    "chars": 433,
    "preview": "verbosity=7\nbootlogo=true\nfdtfile=rockchip/rk3566-wxy-oec-turbo-4g.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags="
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect-mod/bootfs/boot.cmd",
    "chars": 3310,
    "preview": "# DO NOT EDIT THIS FILE\n#\n# Please edit /boot/armbianEnv.txt to set supported parameters\n#\n\nsetenv load_addr \"0x9000000\""
  },
  {
    "path": "build-armbian/armbian-files/different-files/wxy-oect-mod/bootfs/extlinux/extlinux.conf.bak",
    "chars": 357,
    "preview": "LABEL Armbian\n  LINUX /Image\n  INITRD /uInitrd\n  FDT /dtb/rockchip/rk3566-wxy-oec-turbo-4g.dtb\n  APPEND root=LABEL=ROOTF"
  },
  {
    "path": "build-armbian/armbian-files/platform-files/allwinner/bootfs/armbianEnv.txt",
    "chars": 264,
    "preview": "verbosity=1\nbootlogo=false\nfdtfile=allwinner/sun50i-h6-vplus-cloud.dtb\nrootdev=/dev/mmcblk0p2\nrootfstype=ext4\nrootflags="
  },
  {
    "path": "build-armbian/armbian-files/platform-files/allwinner/bootfs/armbian_first_run.txt.template",
    "chars": 1536,
    "preview": "#-----------------------------------------------------------------\n# Armbian first run configuration\n# Set optional end "
  }
]

// ... and 395 more files (download for full content)

About this extraction

This page contains the full source code of the ophub/amlogic-s9xxx-armbian GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 595 files (1.4 MB), approximately 477.8k tokens, and a symbol index with 11 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!