Repository navigation
Mixtile OpenWrt Maintenance
evtest-hash edited this page May 29, 2026
·
4 revisions
Mixtile maintains OpenWrt firmware for two Rockchip ARMv8 boards:
- Edge2 (RK3568)
- Blade3 (RK3588)
The fork tracks upstream release tags only. Each branch has exactly 2 Mixtile commits on top of the upstream tag:
- Device support — U-Boot patches, kernel device tree, WiFi firmware, network config, board defconfigs
-
CI/CD workflow —
.github/workflows/mixtile-release.yml
# List recent upstream releases
curl -s "https://api.github.com/repos/openwrt/openwrt/releases?per_page=5" | \
python3 -c "import json,sys; [print(f'{r[\"tag_name\"]:15s} {r[\"published_at\"][:10]}') for r in json.load(sys.stdin)]"
# Check current Mixtile tags
git ls-remote --tags https://github.com/mixtile-rockchip/openwrt.git | grep mixtileBranches:
openwrt-24.10 ← 2 Mixtile commits on upstream v24.10.x tag
openwrt-25.12 ← 2 Mixtile commits on upstream v25.12.x tag
main ← mirrors openwrt-25.12
gh-pages ← firmware + kmod download site
Tag naming:
mixtile-v{UPSTREAM_VERSION}
e.g. mixtile-v24.10.6, mixtile-v25.12.4
gh-pages layout (mirrors upstream):
releases/{VERSION}/targets/rockchip/armv8/
├── *.img.gz ← firmware images
├── sha256sums ← checksums
└── packages/ ← kmod packages (~1093)
When upstream releases a new version (e.g. v24.10.7 after v24.10.6):
git clone https://github.com/mixtile-rockchip/openwrt.git
cd openwrt
git checkout openwrt-24.10
# Note the two Mixtile commits (top 2 after upstream)
git log --oneline | head -5
# e1961de7 ci: add mixtile-release workflow
# 3511a691 rockchip: add Mixtile Edge2 and Blade3 support
# ec8eeaa8 OpenWrt v24.10.6: adjust config defaults ← upstream starts hereRecord these two SHAs: 3511a691 (device) and e1961de7 (workflow).
git clone --branch v24.10.7 --single-branch \
https://git.openwrt.org/openwrt/openwrt.git ../v24.10.7-work
cd ../v24.10.7-work
git remote add mixtile https://github.com/mixtile-rockchip/openwrt.git
git fetch mixtile openwrt-24.10
# Cherry-pick both commits (keep as separate commits)
git cherry-pick 3511a691
git cherry-pick e1961de7If cherry-pick conflicts:
| File | Why | How to resolve |
|---|---|---|
uboot-rockchip/Makefile |
Upstream bumped U-Boot version | Keep upstream version number, keep Mixtile board entries |
armv8.mk |
Upstream added new devices | Keep both upstream and Mixtile entries |
02_network |
Upstream changed network logic | Merge both changes |
| Kernel patches path | Only when crossing series (24.10→25.12) | Rename patches-6.6/ → patches-6.12/
|
./scripts/feeds update -a && ./scripts/feeds install -a
cp configs/mixtile-edge2-24.10.config .config && make defconfig
make -j$(nproc) BUILD_LOG=1
# Verify: bin/targets/rockchip/armv8/ should contain *mixtile_edge2* imagesgit checkout -b openwrt-24.10
git push --force origin openwrt-24.10
git tag mixtile-v24.10.7 HEAD
git push origin mixtile-v24.10.7Tag push triggers CI/CD automatically:
- Build Edge2 + Blade3 firmware
- Publish to gh-pages:
releases/24.10.7/targets/rockchip/armv8/ - Create Draft GitHub Release (4 firmware images)
Old versions on gh-pages are preserved. Each version gets its own directory.
# Check draft release
gh release view mixtile-v24.10.7 --repo mixtile-rockchip/openwrt
# Verify gh-pages content
curl -s https://mixtile-rockchip.github.io/openwrt/releases/24.10.7/targets/rockchip/armv8/sha256sums
# Publish after verification
gh release edit mixtile-v24.10.7 --repo mixtile-rockchip/openwrt --draft=false- Fix the issue locally
- Delete the failed draft release:
gh release delete mixtile-v24.10.7 --yes - Delete the tag:
git push --delete origin mixtile-v24.10.7 - Fix on the branch, push, re-tag and push again
# Delete existing release + tag
gh release delete mixtile-v24.10.7 --repo mixtile-rockchip/openwrt --yes
git push --delete origin mixtile-v24.10.7
# Clean gh-pages for this version
git clone --branch gh-pages --single-branch \
https://github.com/mixtile-rockchip/openwrt.git /tmp/gh-pages
cd /tmp/gh-pages
rm -rf releases/24.10.7/
git add -A
git commit --amend --no-edit
git push --force origin gh-pages
# Re-tag and push to trigger new build
cd ../v24.10.7-work
git tag mixtile-v24.10.7 HEAD
git push origin mixtile-v24.10.7Firmware images have the kmod feed URL pre-configured in /etc/opkg/customfeeds.conf:
src/gz mixtile_kmod https://mixtile-rockchip.github.io/openwrt/releases/{VERSION}/targets/rockchip/armv8/packages
Users can install kernel modules directly:
opkg update
opkg install kmod-xxx