Mainline TF-A doesn't initialize SGRF_SOC_CON8-CON15 which control DMAC0 and DMAC1 configuration. Without this, the PL330 DMA controllers cannot be accessed from Linux and PERIPH_ID reads as 0x0. The fix configures SGRF registers to set DMAC manager threads to running state and non-secure mode, then pulses DMAC reset to apply the new configuration. Based on community reverse-engineering: - https://lists.denx.de/pipermail/u-boot/2023-April/514267.html - https://gist.github.com/CrystalGamma/a68333fa4c9fda7eb6c09d30ad4937fe Tested on Helios64 (RK3399). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .github | ||
| .vscode | ||
| config | ||
| extensions | ||
| lib | ||
| packages | ||
| patch | ||
| tools | ||
| .coderabbit.yaml | ||
| .editorconfig | ||
| .gitignore | ||
| action.yml | ||
| compile.sh | ||
| CONTRIBUTING.md | ||
| CREDITS.md | ||
| LICENSE | ||
| README.md | ||
| requirements.txt | ||
| shell.nix | ||
| VERSION | ||
Purpose of This Repository
The Armbian Linux Build Framework creates customizable OS images based on Debian or Ubuntu for single-board computers (SBCs) and embedded devices.
It builds a complete Linux system including kernel, bootloader, and root filesystem, giving you control over versions, configuration, firmware, device trees, and system optimizations.
The framework supports native, cross, and containerized builds for multiple architectures (x86_64, aarch64, armhf, riscv64) and is suitable for development, testing, production, or automation.
Looking for prebuilt images? Use Armbian Imager — the easiest way to download and flash Armbian to your SD card or USB drive. Available for Linux, macOS, and Windows.
Quick Start
git clone https://github.com/armbian/build
cd build
./compile.sh
Build Host Requirements
Hardware
- RAM: ≥8GB (less with
KERNEL_BTF=no) - Disk: ~50GB free space
- Architecture: x86_64, aarch64, or riscv64
Operating System
- Native builds: Armbian or Ubuntu 24.04 (Noble)
- Containerized: Any Docker-capable Linux
- Windows: WSL2 with Armbian/Ubuntu 24.04
Software
- Superuser privileges (
sudoor root) - Up-to-date system (outdated Docker or other tools can cause failures)
Resources
- Documentation — Comprehensive guides for building, configuring, and customizing
- Website — News, features, and board information
- Blog — Development updates and technical articles
- Forums — Community support and discussions
Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines on reporting issues, submitting changes, and contributing code.
Support
Community Forums
Get help from users and contributors on troubleshooting, configuration, and development. 👉 forum.armbian.com
Real-time Chat
Join discussions with developers and community members on Discord, IRC, or Matrix. 👉 Community Chat
Paid Consultation
For commercial projects, guaranteed response times, or advanced needs, paid support is available from Armbian maintainers. 👉 Contact us
Contributors
Thank you to everyone who has contributed to Armbian!
Armbian Partners
Our partnership program supports Armbian's development and community. Learn more about our Partners.

