Commit Graph

17284 Commits

Author SHA1 Message Date
Mecid
efb4c684c6 Rename linux-genio-collabora.config to linux-genio-edge.config 2026-03-01 10:16:16 +01:00
Mecid Urganci
210e40b404 Genio: Rename collabora branch to edge for alignment 2026-03-01 10:16:16 +01:00
Igor
7972ddbc4c
Fix kernel 6.18/6.19 patch compilation and cleanup upstreamed patches (#9447)
* uefi-arm64-6.18: fix stmmac Phytium driver compilation

Remove obsolete 'has_gmac' member assignment from struct plat_stmmacenet_data.
The field was removed in newer kernels as MAC version detection is now
handled automatically from hardware registers.

Fixes compilation error:
  error: 'struct plat_stmmacenet_data' has no member named 'has_gmac'

* meson64-6.19: drop upstreamed odroid regulator boot-on patch

The Odroid HC4 regulator-boot-on fix has been upstreamed in kernel 6.19.

Original patch:
  Fixes: 164147f094ec ("arm64: dts: meson-sm1-odroid-hc4: add regulators")
  Fixes: 45d736ab17b4 ("arm64: dts: meson-sm1-odroid: add 5v regulator gpio")
  Fixes: 1f80a5cf74a6 ("arm64: dts: meson-sm1-odroid: add missing enable gpio")
  Fixes: 88d537bc92ca ("arm64: dts: meson: convert meson-sm1-odroid-c4 to dtsi")

* meson64-6.18: update meson-axg mmc phase configuration

Add amlogic,mmc-phase properties to sd_emmc_b and sd_emmc_c nodes
for proper MMC timing configuration on Amlogic AXG SoCs.

* Disable Pythium onboard nic driver
2026-03-01 01:19:43 +01:00
Igor Velkov
1b74748622
Extension: ccache-remote — shared compilation cache via Redis/HTTP (#9369)
* add hook to allow customizing before kernel make env creation
* Hook runs in docker_cli_prepare_launch() just before DOCKER_EXTRA_ARGS
is processed, allowing extensions to add Docker arguments with a more
descriptive hook name than add_host_dependencies.
* Extension: ccache-remote

Enables ccache with remote Redis storage for sharing compilation cache across build hosts.

Features:
- Auto-discovery via Avahi/mDNS (ccache.local hostname)
- Explicit Redis server configuration via CCACHE_REMOTE_STORAGE
- Build statistics display at end of build (hit/miss/error rates)
- Support for both Docker and native builds
- Hooks for kernel and u-boot compilation environments

Documentation includes server setup instructions with security warnings,
client mDNS configuration, and cache sharing requirements.


* uboot: fix ccache environment and add extension hook

U-Boot build uses `env -i` which clears all environment variables.
CCACHE_DIR and CCACHE_TEMPDIR were not explicitly passed to make,
unlike kernel build (kernel-make.sh). This caused ccache to use
default directory instead of configured Armbian one, breaking
cache statistics and shared cache functionality.

Changes:
- Add CCACHE_DIR and CCACHE_TEMPDIR to uboot_make_envs
- Add uboot_make_config hook for extensions (similar to kernel_make_config),
  allowing modification of environment variables before compilation

* add long list of allowed ccache-related env vars
* set permissions to ccache files RW for everyone if cache not private
* ccache: add ccache_post_compilation hook for extensions
* ccache-remote: use ccache_post_compilation hook instead of cleanup handler

Show remote ccache stats after each compilation (kernel, uboot) via hook,
instead of once at the end via cleanup handler. Stats now shown even on
build failure.

* ccache: show stats with safe arithmetic
* ccache/uboot: improve code comments per review feedback

- uboot.sh: clarify ARMBIAN=foe workaround for dual-compiler scenario
- ccache-remote.sh: document that CCACHE_REDIS_CONNECT_TIMEOUT must be
  set before extension loads

* ccache-remote: mask storage URLs in logs

Mask CCACHE_REMOTE_STORAGE when emitting Docker env debug logs.

* ccache-remote: extract ccache_inject_envs() helper to deduplicate passthrough loops

Extract ccache_inject_envs() helper to deduplicate identical passthrough
loops in kernel and uboot make config hooks.

ccache-remote: rename functions to follow project naming conventions

Rename get_redis_stats and mask_storage_url to ccache_get_redis_stats
and ccache_mask_storage_url to follow project naming conventions.

ccache-remote: mask credentials in debug log output for passthrough loops

Mask CCACHE_REMOTE_STORAGE value through ccache_mask_storage_url() before
logging in both Docker env and make env passthrough loops to avoid leaking
credentials into build logs.

* ccache-remote: add HTTP/WebDAV backend and DNS discovery
* ccache-remote: move extension script into directory layout
* ccache-remote: add server setup docs and config files
* ccache-remote: validate Redis credentials in URLs
* ccache-remote: document Redis auth options and safe passwords

Add separate insecure config example for trusted networks.

Recommend URL-safe hex passwords and update setup docs.

* ccache-remote: improve Docker loopback handling and IPv6 host parsing
2026-03-01 01:18:35 +01:00
Mecid Urganci
3f22500237 qcs6490: Use 6.18.2 from radxa 2026-03-01 01:16:55 +01:00
Igor Velkov
986f77495b drop deprecated KERNEL_UPGRADE_FREEZE feature
Was only used once (orangepi5pro.csc) and has been deprecated.
Remove the implementation, the board config, and the README entry.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 01:15:10 +01:00
Igor Velkov
ac9d08cc97 (#9400 P3c) armbian-bsp-cli-deb: safe array assignment from word splitting
Replace unquoted array assignment `arr=(${var})` with
`IFS=' ' read -ra arr <<< "${var}"` to prevent glob expansion.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 01:15:10 +01:00
Igor Velkov
cb3bedf527 (#9400 P3b) patching: add missing -r flag to read
Other read calls in the same file already use -r.
Without -r, backslashes in user input are interpreted as escape characters.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 01:15:10 +01:00
igorpecovnik
6c44ac5732 Automatic board configs status synchronise 2026-02-28 22:30:57 +01:00
Igor Velkov
4222417736 extensions: add kernel-rust extension for Rust support in kernel builds
Add extension that enables CONFIG_RUST in kernel menuconfig and
configures the build environment (rustc, rustfmt, bindgen, rust-src)
using versioned APT packages from noble-security/noble-updates.

Handles env -i in run_kernel_make_internal by passing tool paths
via RUSTC, RUSTFMT, BINDGEN make params and RUST_LIB_SRC env var.

Includes optional RUST_KERNEL_SAMPLES=yes for building sample
Rust modules (rust_minimal, rust_print, rust_driver_faux) as a
toolchain smoke test.

Tested: kernel 6.19 build for rockchip64 on aarch64, both with
and without Docker.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 22:30:37 +01:00
EvilOlaf
9b2497deb6 zeropi: possible fix for booting 2026-02-28 22:29:33 +01:00
Igor Velkov
a0123f5d7a fix(kernel-headers): preserve build-time autoconf.h across postinst olddefconfig (#9425)
При упаковке linux-headers скомпилированные бинарники из scripts/ удаляются,
так как они собраны под хост сборки, а не под целевую машину (типичный случай
кросс-сборки). Поэтому postinst при установке пакета пересобирает их нативно,
предварительно запустив `make olddefconfig`.

Однако olddefconfig не только подготавливает окружение — он заново вычисляет
конфигурацию ядра, проверяя тулчейн, доступный на целевом хосте при установке.
Если инструменты, использовавшиеся при сборке ядра, на целевой машине отсутствуют
или имеют другую версию, olddefconfig молча отключает соответствующие CONFIG_*
опции (например, CONFIG_CC_IS_CLANG, CONFIG_LTO_CLANG, CONFIG_DEBUG_INFO_BTF).

В результате установленный пакет заголовков описывает не то ядро, которое
реально собрано и работает, а то, которое можно было бы собрать на данном хосте.

Это затрагивает:
- include/generated/autoconf.h (используется препроцессором C)
- include/config/auto.conf + маркер-файлы include/config/ (используются
  make-правилами kbuild)
- include/generated/rustc_cfg (используется Rust-сборками)

Все эти файлы — артефакты сборки и должны описывать скомпилированное ядро,
а не возможности хоста установки.

Исправление: при упаковке сохраняем сайдкар-тарбол с build-time версиями
include/config/ и include/generated/{autoconf.h,rustc_cfg}; восстанавливаем
его в postinst в самом конце, после всех make-шагов.

Fixes: https://github.com/armbian/build/issues/9425

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-28 22:29:08 +01:00
RichN
c980f497eb Add new wallpapers for Armbian
Add new wallpapers and optimize them using tinypng.
2026-02-28 22:28:49 +01:00
Milivoje Legenovic
d68d84ae68 Odroid-M2: Enable HDMI audio
Signed-off-by: Milivoje Legenovic <m.legenovic@gmail.com>
2026-02-28 22:28:39 +01:00
EvilOlaf
8821837c01 orangepi5: bump u-boot to v2026.04-rc3 2026-02-28 22:28:29 +01:00
retro98boy
54ade91808 rockchip64: Drop upstreamed i2s-tdm patch 2026-02-28 08:42:08 +01:00
Ricardo Pardini
12f4e9f91b rockchip64-6.19: mekotronics-r58x-pro: fix LED swap
- LED on gpio3 RK_PC5 is actually the WIFI led (not 4G)
- 4G LED is routed into the mini-pci slot and not SoC-controllable
2026-02-25 07:49:59 -03:00
Ricardo Pardini
08d821437c rockchip64-6.19: mekotronics-r58x-pro: drop duplicate usb_host0_xhci & fix USB3 Type-A port
- that was for otg/ums bringup
- now `-u-boot.dts` does it instead
- add missing usbdp_phy0 with lane mux split with DP (type-c/DP)
- drop DP mux from usbdp_phy1 (which should just be type-a and no DP)
2026-02-25 07:49:59 -03:00
Ricardo Pardini
6d16c7b1ac mekotronics-r58x-pro: add systemd service/timer for LCD clock
- very simple once kernel driver + DT is in place
2026-02-25 07:49:59 -03:00
Ricardo Pardini
8f86f24f0f rockchip64-6.19: mekotronics-r58x-pro: add vk2c21 DT node
- for the LCD, using new bit-banging driver
2026-02-25 07:49:59 -03:00
Ricardo Pardini
68254a8cac rockchip64-6.19/edge: CONFIG_LCD_VK2C21=m
- for the LCD on mekotronics-r58x-pro, using new bit-banging driver
2026-02-25 07:49:59 -03:00
Ricardo Pardini
5ee03afdb5 rockchip64-6.19: auxdisplay: add a driver for Vinka VK2C21 Segment LCD Controller
- for the Mekotronics R58X Pro LCD
- The Vinka VK2C21 (and pin-compatible VK2C21A/VK2C21B) is a memory-mapping
  segment LCD controller that communicates over I2C.  It can drive up to
  128 segments (e.g. 32 SEG × 4 COM in 1/3 bias mode).
- Some SBCs wire this chip to GPIO pins without I2C pull-up
  resistors, making the standard i2c-gpio (open-drain) driver unusable.
  This driver therefore bit-bangs I2C in push-pull mode directly via GPIO,
  requiring no external pull-ups.
- extra glyphs and fix for top-bar

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>
2026-02-25 07:49:59 -03:00
Ricardo Pardini
692583a57c mekotronics-r58x-pro: mainline u-boot v2026.04-rc2; mainline 6.19 kernel (edge)
- with its own defconfig (identical to r58x-4g)
- own DT symlink
- fix the vendor DT (was missing the `maizhuo` suffix - no dial gpio keys)
2026-02-25 07:49:59 -03:00
Ricardo Pardini
a1d85a2a3a rockchip64-6.19: mekotronics-r58x-pro: add gpio-keys for the big dial in the front 2026-02-25 07:49:59 -03:00
Ricardo Pardini
4db14082b8 rockchip64-6.19: mekotronics-r58x-pro: model/compatible 2026-02-25 07:49:59 -03:00
Ricardo Pardini
5c63ed9b3c rockchip64-6.19: mekotronics-r58x-pro: copy from r58x-4g
- it is very similar
- new DT name, as I will submit those to linux-rockchip eventually
2026-02-25 07:49:59 -03:00
EvilOlaf
ce2506ddf1 uefi-x86-current: rewrite patches 2026-02-24 15:01:53 +01:00
EvilOlaf
11823ab0d1 meson64-current: rewrite patches 2026-02-24 15:01:53 +01:00
EvilOlaf
20050860f0 rockchip64-edge: rewrite patches 2026-02-24 15:01:53 +01:00
EvilOlaf
15393d6dc6 rockchip64-current: rewrite patches 2026-02-24 15:01:53 +01:00
Patrick Yavitz
57694c740d Set devtype devnum and distro_bootpart var when booting from nvme
This will ensure future boot scripts should function correctly.

Tested-on: BPI-F3 and MusePi Pro
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-02-24 08:17:39 -05:00
Patrick Yavitz
a4de6bfd42 SpacemiT: Quiet MBR support
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-02-24 08:17:39 -05:00
Patrick Yavitz
0d8faf47da SpacemiT: Update OpenSBI/U-Boot to k1-bl-v2.2.9-release
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-02-24 08:17:39 -05:00
SuperKali
a8977dcd7d kernel: centralize netfilter legacy xtables config for all families
Add version-gated NETFILTER_XTABLES_LEGACY and BRIDGE_NF_EBTABLES_LEGACY
support in armbian-kernel.sh for kernels >= 6.18. Also add missing
ebtables table modules (BRIDGE_EBT_BROUTE, BRIDGE_EBT_T_FILTER,
BRIDGE_EBT_T_NAT) unconditionally to the nftables config function.

This ensures all hardware families automatically get legacy xtables
support when building kernels 6.18+, fixing Docker and Proxmox
firewall breakage without requiring per-family config changes.
2026-02-24 04:46:50 +01:00
chainsx
fdc58def79 station-m2: fix sata 2026-02-23 23:05:36 +01:00
Austin Lane
36a50552b5 rockchip-vendor: Enable spidev support
Simple change, enable spidev support on `rockchip` (armhf) vendor kernel.
2026-02-23 23:02:31 +01:00
dependabot[bot]
8d03034706 build(deps): bump oras from 0.2.39 to 0.2.41
Bumps [oras](https://github.com/oras-project/oras-py) from 0.2.39 to 0.2.41.
- [Release notes](https://github.com/oras-project/oras-py/releases)
- [Changelog](https://github.com/oras-project/oras-py/blob/main/CHANGELOG.md)
- [Commits](https://github.com/oras-project/oras-py/compare/0.2.39...0.2.41)

---
updated-dependencies:
- dependency-name: oras
  dependency-version: 0.2.41
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 23:01:54 +01:00
retro98boy
79910a5dd7 rockchip64: Fix RTL8211 phy LED dts setting patch 2026-02-23 23:00:14 +01:00
Martin Schmiedel
59b45120eb MBa8MPxL: update linux and u-boot
- update linux to 6.18.y
- use latest tq-uboot

Signed-off-by: Martin Schmiedel <martin.schmiedel@tq-group.com>
2026-02-23 22:59:11 +01:00
dependabot[bot]
0e70c1859f build(deps): bump tj-actions/changed-files from 47.0.2 to 47.0.4
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 47.0.2 to 47.0.4.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](8cba46e29c...7dee1b0c15)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-version: 47.0.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 22:58:31 +01:00
dependabot[bot]
df7172e664 build(deps): bump rich from 14.3.2 to 14.3.3
Bumps [rich](https://github.com/Textualize/rich) from 14.3.2 to 14.3.3.
- [Release notes](https://github.com/Textualize/rich/releases)
- [Changelog](https://github.com/Textualize/rich/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Textualize/rich/compare/v14.3.2...v14.3.3)

---
updated-dependencies:
- dependency-name: rich
  dependency-version: 14.3.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-23 22:57:40 +01:00
Igor Pecovnik
e21f0fd793 Khadas VIM1S/VIM4 disable wayland and default to X as its fairly unstable 2026-02-23 12:35:50 +01:00
Timothy Parys
aaad48ef6b Properly handle git submodules when GIT_FIXED_WORKDIR is set 2026-02-23 00:51:03 +01:00
Vitalij Borissow
185f7978bf Add IOMMU GFP_DMA32 patch for RK3568 8GB systems
Force GFP_DMA32 allocation for Rockchip IOMMU v2 page tables to fix
NPU operation on systems with >4GB RAM. Without this patch, IOMMU
allocates page tables above 4GB which the NPU cannot access, causing
DMA mapping failures.

Tested on ODROID-M1 with 8GB RAM, kernel 6.18.9-current-rockchip64.
2026-02-23 00:40:34 +01:00
Igor Pecovnik
b62e9fa94e Armbian: improve APT pinning for Firefox/Thunderbird
- Change Pin from origin domain to release origin for more reliable pinning
- Improve comments to clarify priority behavior (1001 prevents downgrades)
- Add explanatory comments for Ubuntu repository deprioritization
- Fix typo in upstream comment

This ensures Firefox and Thunderbird are consistently installed from the
Armbian repository with proper pinning rules.
2026-02-22 17:19:00 +01:00
Aurimas Niekis
e832bb3129 feat(drivers): add RTL8812EU/RTL8822EU wireless driver for EXTRA_WIFI
Integrate the libc0607/rtl88x2eu-20230815 out-of-tree driver into the build
system under EXTRA_WIFI for kernels >= 3.14 and < 6.19.

- Fetch pinned upstream commit ccb31f4ee346d5c2dd45475d276171b2f8de8350
- Install sources under drivers/net/wireless/rtl8822eu
- Enable AP and P2P modes in driver Makefile
- Hook into kernel Kconfig and Makefile via CONFIG_RTL8822EU

Tested working on `6.12.74-current-sunxi` and `6.6.75-legacy-sunxi`.
2026-02-22 16:59:49 +01:00
Mecid
77f919f6cd
Rock-4D: Add Edge + RK3576 Mainline U-Boot (with UFS support) (#9421)
* Rock-4D: Edge (u-boot and kernel)

* RK3576: Mainline u-boot ufs boot enablement patches

* Rock-4D: Use Mainline u-boot 2026.04-rc2

* Rock-4D: Update KERNEL_TEST_TARGET to edge

* Rock-4D: Use Mainline u-boot on vendor and edge

* Remove vendor branch check for mainline uboot
2026-02-20 21:55:32 +01:00
Igor Pecovnik
7a42186d40 KDE Neon: add konsole terminal emulator to base packages
Add konsole to the kde-neon base package list for a complete terminal experience.

Also add bluedevil, kscreen, pipewire-audio, pipewire-pulse, and wireplumber,
and sort the entire package list alphabetically.
2026-02-20 20:39:42 +01:00
Sven-Ola Tuecke
db44df7501 Spacemit: fix high CPU load caused by rCPU remoteproc communication kthread
Signed-off-by: Sven-Ola Tuecke <sven-ola@gmx.de>
2026-02-19 22:10:34 -05:00
Sven-Ola Tuecke
4367b85577 Spacemit: prevent uninitialized thread shutdown (triggerd by the rabbit)
Signed-off-by: Sven-Ola Tuecke <sven-ola@gmx.de>
2026-02-19 22:10:34 -05:00