2311 Commits

Author SHA1 Message Date
Igor Pecovnik
70b01a31ef rockchip64: add device tree for NanoPC-T6 LTS Plus (6.18 + 7.0) 2026-04-14 09:42:41 +02:00
Tomaz Zaman
61c5ff65dd gateway-dk: move SFP LED refs from SFP nodes to sfp_led_controller
The sff,sfp DT binding has additionalProperties: false, so our custom
leds property on SFP nodes violates the schema. Move LED-to-SFP
association into per-port child nodes of the sfp_led_controller.

DTS: sfp_led_controller now has port@0/port@1 sub-nodes, each with
sfp phandle and leds list. SFP nodes no longer carry leds property.

Driver: sfp_led_probe() iterates child nodes instead of sfp-ports
phandle array. sfp_led_register_port() receives the port child node,
parses the sfp phandle from it, and reads LEDs from the child node
instead of from the SFP node.
2026-04-14 07:49:18 +02:00
Tomaz Zaman
67c54b84d0 gateway-dk: enable GPIO power-off via gpio-poweroff driver
The board has a power-hold circuit controlled by GPIO3_21 (DT label &gpio2,
pin 21): driving it high cuts power. Add a gpio-poweroff node and enable
the driver so 'systemctl poweroff' actually turns the device off instead
of halting the CPU in an undefined state.

- DTS: gpio-poweroff node on &gpio2 21 active-high, 1s timeout
- Kernel: CONFIG_POWER_RESET_GPIO=y (must be builtin, not module)
2026-04-14 07:49:18 +02:00
EvilOlaf
43751f1a4f rockchip64: rewrite kernel patches against 7.0
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
2026-04-13 17:48:02 +02:00
EvilOlaf
af89f1230f rockchip64: remove patch upstreamed in 7.0 2026-04-13 17:48:02 +02:00
Tomaz Zaman
c4b99b47d4 gateway-dk: production readiness fixes for upstream PR
Board/family separation:
- Move boot chain URLs (U-Boot, ATF, RCW) from family to board config
- Family config now requires board to set all platform-specific variables
- Split bootenv into family-generic ls1046a.txt and board-specific gateway-dk.txt
- Move fancontrol/lm-sensors install and IP forwarding to board config
- Delete unused family-level BSP files (packages/bsp/ls1046a/)

Extension hardening:
- Replace bare git clone with fetch_from_repo (fmlib, fmc, libcli, FMAN ucode)
- Replace trap EXIT with Armbian add_cleanup_handler API
- Add exit_with_error to all chroot build commands and depmod
- Add prerm/postrm scripts to ASK .deb package
- Remove unnecessary host build deps (chroot-only libraries)
- Compute kernel version once (ASK_KERNEL_VER), remove 3x duplication
- Quote variables in chroot command strings
- Use GIT_CONFIG_COUNT env vars instead of git config --global
- Move conntrack sysctl to packages/bsp/ (no inline heredocs)
- Fix DEBIAN/control comment (dpkg-deb rejects # comments)
- Make ASK extension optional (ENABLE_ASK=yes by default)
- Use BOOTENV_FILE for mkenvimage (was hardcoded to ls1046a.txt)

Kernel config:
- Enable KASLR, FORTIFY_SOURCE, HARDENED_USERCOPY
- Disable SLUB_TINY (switch to standard SLUB)
- Enable NF_REJECT_IPV4, IP_NF_TARGET_REJECT, NFT_REJECT, NET_SCH_INGRESS
- Enable NET_ACT_POLICE, NET_ACT_GACT, NF_FLOW_TABLE, NFT_LIMIT, NFT_REDIR
- Enable PSTORE + MTD_PSTORE with pstore.backend=mtdoops boot args
- Enable SOFTLOCKUP_DETECTOR, DEBUG_FS_DISALLOW_MOUNT
- Disable PM_DEBUG, UIO drivers, MLX4/MLX5, HFSPLUS, UFS
- Switch NO_HZ_FULL to NO_HZ_IDLE (matches NXP reference)

Driver fixes:
- sfp-led: move debug_count into per-port struct
- sfp-led: replace rtnl_lock with rtnl_trylock to prevent deadlock
- sfp-led: consistent pushd/make pattern (matches lp5812)

Patches:
- DTS: fix typo "genenerator", remove redundant status="okay"
- DTS: update header comment, remove unused PWM include
- DTS: update patch hunk line counts
- INA234: remove Yocto Upstream-Status header
2026-04-09 19:53:51 +02:00
Tomaz Zaman
9d39097338 gateway-dk: harden board/family config for upstream PR
- Remove vim from family_tweaks (user preference, not board dep)
- Move board-specific BSP (fan control) from family to board config
- Consolidate LED module-load into single gateway-dk-leds.conf
- Make BOOTSOURCE/ATFSOURCE/RCW_SOURCE overridable via ${VAR:-default}
- Replace echo-return pattern with declare -g in ensure_fman_ucode_cached
- Replace custom ask_ensure_cached with fetch_from_repo in post_family_config
- Use mktemp -d instead of /tmp/ask-build-$$
- Add proper git-format headers and Signed-off-by to DTS patch
- Fix DTS Makefile alphabetical ordering (after fsl-ls1046a, not fsl-ls1012a)
- Fix copyright year to 2026
- Document board-specific ethact/ethprime in bootenv
- Document apt-mark hold rationale for patched ASK libraries
- Add comment explaining NXP LS1043A platform ID for DPAA1 SoCs
- Remove iproute2 from CLAUDE.md (no patches exist in ASK repo)
2026-04-09 19:53:51 +02:00
Tomaz Zaman
6a436fbe16 Board: Add Mono Gateway Development Kit (NXP LS1046A)
Add support for the Mono Gateway Development Kit, a networking gateway
based on the NXP LS1046A SoC (quad Cortex-A72) with 3x 1GbE SGMII,
2x 10GbE SFP+, eMMC, QSPI NOR, and extensive I2C peripherals.

New family: ls1046a
- NXP QorIQ kernel (lf-6.12.y) with DPAA/FMAN networking
- Custom boot chain: RCW + ATF + U-Boot (Mono forks, commit-pinned)
- FMAN microcode at 4MB eMMC offset for network initialization
- Extlinux boot via U-Boot distroboot
- Fan control (EMC2305 + cluster_thermal) with dynamic hwmon discovery

New extension: ls1046a-ask
- NXP ASK (Application Solutions Kit) hardware offloading
- Kernel modules: CDX, FCI, auto-bridge (cross-compiled from ASK repo)
- Userspace: fmlib, fmc, libfci, libcli, dpa-app, cmm
- Patched system libraries: libnetfilter-conntrack, libnfnetlink,
  iptables (QOSMARK), iproute2 (EtherIP/4RD)
- CMM daemon with systemd service (guarded by /dev/cdx_ctrl)
- All ASK sources and patches fetched from we-are-mono/ASK repo

Kernel patches:
- INA234 power sensor driver (backport, accepted upstream)
- Mono Gateway DK device tree

Signed-off-by: Tomaz Zaman <tomaz@mono.si>
2026-04-09 19:53:51 +02:00
EvilOlaf
ffb71d8eb6 sunxi-7.0: rewrite patches against 7.0-rc7
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
2026-04-08 05:25:05 +02:00
EvilOlaf
6fd64386aa sunxi-7.0: remove upstreamed patch from megi's collection 2026-04-08 05:25:05 +02:00
EvilOlaf
aa600ba0da rockchip64: rewrite kernel patches against 7.0-rc7 2026-04-08 05:25:05 +02:00
Paolo Sabatino
be8920f157 Bump rockchip armhf edge kernel to v7.0 2026-04-07 23:01:39 +02:00
Milivoje Legenovic
28862c7c0e Odroid-M2: Fix USB-C port in OTG mode
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
Signed-off-by: Milivoje Legenovic <m.legenovic@gmail.com>
2026-04-05 07:13:17 +02:00
EvilOlaf
ee436991e8 rockchip64-6.18: rewrite kernel patches against 6.18.21
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
2026-04-03 09:06:52 +02:00
Milivoje Legenovic
db136dc811 Odroid-M2: Add support for Hardkernel ODROID-Vu8S panel
Signed-off-by: Milivoje Legenovic <m.legenovic@gmail.com>
2026-04-03 07:41:18 +02:00
kay-lambdadelta
9d0073e243 Fixed missing MIPI_DSI_MODE_VIDEO
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
2026-03-31 12:49:46 +02:00
EvilOlaf
8f7e151b9d sunxi-7.0: restore original patch headers again
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
@rpardini How to prevent that?
2026-03-30 17:06:13 +02:00
EvilOlaf
ba5599d48c sunxi-7.0: rewrite kernel patches for 7.0-rc6 2026-03-30 17:06:13 +02:00
EvilOlaf
30c3bce26d uefi-x86-7.0: rewrite kernel patches for 7.0-rc6 2026-03-30 17:06:13 +02:00
EvilOlaf
41fd17871c rockchip64-7.0: rewrite patches for 7.0-rc6 2026-03-30 17:06:13 +02:00
Patrick Yavitz
57f51bc199 SpacemiT: Disable k1-usb: add disconnect function support
Patch made it upstream.

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-03-30 05:59:54 -04:00
EvilOlaf
8324bee7d6 sunxi-6.18: restore original patch headers
make them persistent against rewrites
2026-03-29 17:38:42 +02:00
EvilOlaf
9b317850f8 sunxi-6.18: rewrite kernel patches for 6.18.20 2026-03-29 17:38:42 +02:00
Igor Pecovnik
b993528b67 sunxi: remove BSP GMAC/EPHY patch that breaks H6 internal EMAC
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
The chraac BSP patch (driver-allwinner-h618-emac / 0203) introduced
conflicting out-of-tree drivers (sunxi-gmac, sunxi-ephy, sunxi-ac200)
that clash with the correct mainline AC200 stack already in place:
- sunxi-ac200.c conflicts with the mainline ac200.c (0201)
- sunxi-ephy.c conflicts with the mainline ac200-phy.c (0202)
- sunxi-gmac.c is an unnecessary BSP replacement for dwmac-sun8i
- removes of_gpio_flags enum from gpiolib-of.c, breaking other drivers
- depends on PWM_SUNXI_ENHANCE which doesn't exist in mainline

H6 internal EMAC is correctly handled by the mainline stack:
ac200.c + ac200-ephy-ctl.c (ac200-v3) + ac200-phy.c + DTS patches.
H618 EMAC is covered by dwmac-sun8i + drv-net-stmmac-dwmac-sun8i-
add-second-emac-clock patch.

Remove the patch from sunxi-6.12, 6.18 and 7.0, and drop the leftover
CONFIG_SUNXI_GMAC=m from the legacy kernel config. Also align
CONFIG_SUN4I_EMAC to =m (matching current/edge) in legacy config.

Signed-off-by: Igor Pecovnik <igor@armbian.com>
2026-03-28 22:01:33 +01:00
Shlomi Marco
01c18256c6 rockchip64: rk3528: fix ethernet PHY detection on NanoPi Zero2 (6.18 + 7.0)
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
Data: Sync board list / Send dispatch (push) Has been cancelled
Fix ethernet PHY not being detected on the NanoPi Zero2. The MDIO bus
scan was failing because the PHY reset GPIO was only defined on the
PHY child node inside the MDIO bus. The kernel processes this reset
after the MDIO scan, but the PHY needs reset released before it will
respond on the bus.

Move the reset control to the gmac1 node using snps,reset-gpios and
snps,reset-delays-us properties. The stmmac driver handles these
during MDIO bus registration, before scanning for PHY devices.

Also change CONFIG_MOTORCOMM_PHY from module (m) to built-in (y) in
the rockchip64 kernel config. As a module, the PHY driver loads too
late for the MDIO bus scan to find the PHY during boot.

Tested on hardware: ethernet link at 1000Mbps full duplex confirmed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-28 00:09:43 +01:00
Shlomi Marco
8e3d777f87 rockchip64: rk3528: enable USB OTG mode and fix PHY timer crash (6.18 + 7.0)
Enable USB OTG/gadget mode on the NanoPi Zero2 USB-C port by adding
extcon binding and snps,dis_u2_susphy_quirk to the DWC3 node. The
extcon binding coordinates role switching between the DWC3 and USB2
PHY OTG state machines, which previously conflicted and caused memory
corruption.

Also fix a use-after-free in the inno-usb2 PHY driver where the OTG
state machine delayed works (otg_sm_work, chg_work, sm_work) were not
canceled on driver removal. This caused a kernel panic ~2 seconds
after boot when dr_mode was set to "otg" or "peripheral". The fix
registers devm cleanup actions to cancel the works automatically.

Tested on hardware: USB-A host port, USB-C gadget (NCM ethernet),
and USB-C OTG mode all verified working.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-28 00:09:43 +01:00
c127dev
da89b16295 fix: address CodeRabbit review (codec error handling, Kconfig constraints and DTS typos)
Signed-off-by: c127dev <contact@c127.dev>
2026-03-28 00:08:59 +01:00
c127dev
0d118c45ec kernel: rockchip64: add ASoC es8328 LRCK sharing fix
This commit introduces a patch for the rockchip64 kernel (current 6.18 and
edge 7.0 branches) to fix audio routing issues affecting the ES8328 codec.

The patch modifies the ASoC es8328 driver to explicitly allow sharing the
LRCK (Left/Right Clock) between the microphone and playback interfaces.
This is required for hardware designs where capture and playback must share
the same clock line.

Signed-off-by: c127dev <contact@c127.dev>
2026-03-28 00:08:59 +01:00
c127dev
d7541bf0fd boards: rockchip64: rk3588: add Orange Pi 5 Pro support to edge kernel
This commit enables full support for the Orange Pi 5 Pro on the edge
Linux kernel (rockchip64-7.0). It synchronizes the device tree additions
with the current kernel and includes the necessary eFUSE MAC address fix for
the Motorcomm Ethernet controller.

Key additions and modifications:

1. Device Tree Updates (rk3588s-orangepi-5-pro.dts):
   - Added support for DisplayPort 1.4 to HDMI 2.0 (DP0/VP2).
   - Configured USB3 Type-A ports (with USB2 OTG PHY) and explicitly set the
     USB-C port to power-delivery only (no FUSB302/data/alt-mode).
   - Configured combphy2_psu for NVMe M.2 slot support by disabling
     conflicting USB3 modes.
   - Re-mapped fan to PWM2 and LEDs to PWM3/PWM15.
   - Added full AP6256 Wi-Fi/Bluetooth support (SDIO and UART9).

2. Motorcomm YT6801 Ethernet Support (Patches):
   - Included fix for Motorcomm YT6801 eFUSE MAC address read failures
     on the 7.0 kernel.

Signed-off-by: c127dev <contact@c127.dev>
2026-03-28 00:08:59 +01:00
c127dev
0982ab8879 boards: rockchip64: rk3588: add Orange Pi 5 Pro support to current kernel
This commit enables full support for the Orange Pi 5 Pro on the current
Linux kernel (rockchip64-6.18). It includes a comprehensive device tree,
board configuration updates, and a series of patches for the PCIe Motorcomm
YT6801 Ethernet controller.

Key additions and modifications:

1. Device Tree Updates (rk3588s-orangepi-5-pro.dts):
   - Added support for DisplayPort 1.4 to HDMI 2.0 (DP0/VP2).
   - Configured USB3 Type-A ports (with USB2 OTG PHY) and explicitly set the
     USB-C port to power-delivery only (no FUSB302/data/alt-mode).
   - Configured combphy2_psu for NVMe M.2 slot support by disabling
     conflicting USB3 modes.
   - Re-mapped fan to PWM2 and LEDs to PWM3/PWM15.
   - Added full AP6256 Wi-Fi/Bluetooth support (SDIO and UART9).

2. Motorcomm YT6801 Ethernet Support (Patches 1-5):
   - Added generic suspend/resume helper for PCI-based controllers.
   - Backported glue driver for Motorcomm YT6801 and YT8531S PHY support.
   - Included fixes for eFUSE MAC address read failures.
   - Resolved specific stmmac/motorcomm driver compilation errors and
     panics on kernel 6.18.

3. Board Configuration (orangepi5pro.csc):
   - Refactored U-Boot configuration selection logic, segregating mainline
     and vendor branches correctly.
   - Configured the Armbian build system to automatically enable the newly
     added Motorcomm PHY, STMMAC_ETH, and STMMAC_PLATFORM kernel configs
     for the "current" and "edge" branches.

Signed-off-by: c127dev <contact@c127.dev>
2026-03-28 00:08:59 +01:00
Maxim Medvedev
391026f0af mkspi: fix devicetree opp voltage settings
Fix for `vdd_logic: Failed to set regulator voltages: -22` bug (starting from 6.18 kernel)

With reference to:
- https://github.com/armbian/build/pull/9569
- https://github.com/redrathnure/armbian-mkspi/issues/66

(cherry picked from commit 9cbfaf1394b261e70ddad30cb510f91f3e2bee90)
2026-03-28 00:08:02 +01:00
EvilOlaf
501ad52946 sunxi-6.18: drm/gem-dma: Support dedicated DMA device for allocation
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
2026-03-27 15:19:07 +01:00
EvilOlaf
d944703ab8 sunxi-7.0: drm/gem-dma: Support dedicated DMA device for allocation 2026-03-27 15:19:07 +01:00
Patrick Yavitz
5c298a8075 SpacemiT: Update linux 6.6.99 to 6.6.100
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-03-26 19:52:06 -04:00
Patrick Yavitz
6e0ec8ba13 SpacemiT MUSE Book: Add the k1-musebook.dts
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-03-26 19:52:06 -04:00
Igor Pecovnik
c2df3920bc uefi-arm64-6.12: revert exit() API change patch
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
Remove patch 1003 which incorrectly changes exit() to pass struct device *
instead of struct platform_device *. In kernel 6.12, the signature is:
  void (*exit)(struct platform_device *pdev, void *priv);
2026-03-26 11:54:42 +01:00
Igor Pecovnik
5e9dafdd3d uefi-arm64-6.12: fix stmmac compilation errors
Remove incompatible patches that try to use non-existent kernel APIs:
- 1001: stmmac_axi_blen_to_mask() and axi_blen_regval don't exist in 6.12
- 1002: plat->core_type and DWMAC_CORE_GMAC don't exist in 6.12

The base patch (1000) already uses the correct 6.12 APIs:
- axi->axi_blen array
- plat->has_gmac field
2026-03-26 11:54:42 +01:00
EvilOlaf
f990145091 sunxi: fix iommu driver patch to allow compilation
Some checks failed
Infrastructure: Dispatch to fork / 📢 Run repository dispatch on fork (push) Has been cancelled
Infrastructure: Mirror to Codeberg / codeberg (push) Has been cancelled
Maintenance: Announce merge / announcepush (push) Has been cancelled
Maintenance: Security scan / Scorecards analysis (push) Has been cancelled
2026-03-26 07:27:57 +01:00
EvilOlaf
6ada2b002c sunxi-7.0: rewrite patches against rc5
kernel config rewrite was also done but resulted in no changes
2026-03-25 23:42:48 +01:00
EvilOlaf
8af35319e6 sunxi-7.0: fix iommu driver patch 2026-03-25 23:42:48 +01:00
EvilOlaf
d3cfe95412 sunxi-edge: rewrite kernel patches against 7.0-rc4 2026-03-25 23:42:48 +01:00
EvilOlaf
f737bb6fd6 sunxi-7.0: fix broken patch 2026-03-25 23:42:48 +01:00
EvilOlaf
7127ac5dda sunxi-7.0: adjust two patches to adapt for megi's changes 2026-03-25 23:42:48 +01:00
EvilOlaf
4daf7ffa43 sunxi-7.0: disable unneeded defcon patch from megi 2026-03-25 23:42:48 +01:00
EvilOlaf
6713e8e111 sunxi-7.0: fix context for iommu driver patch 2026-03-25 23:42:48 +01:00
EvilOlaf
a5b5766b88 sunxi-7.0: new series.conf 2026-03-25 23:42:48 +01:00
EvilOlaf
bb1753ac36 sunxi-7.0: copy over everything left 2026-03-25 23:42:48 +01:00
EvilOlaf
34ce4f9237 sunxi-7.0: extract all relevant branches from megi (again) 2026-03-25 23:42:48 +01:00
Igor Pecovnik
d99502e374 stmmac: Refactor Phytium ethernet patches into modular components
Split the monolithic Phytium ethernet driver patch into multiple
focused patches for better maintainability:

- 1000: Original Phytium onboard ethernet drivers and ACPI glue
- 1001: Adapt to stmmac removal of axi_blen array
- 1002: Adapt to stmmac replace has_xxxx with core_type
- 1003: Adapt to stmmac pass struct device to init/exit methods
- 1004: Fix stmmac compilation warnings

Signed-off-by: Igor Pecovnik <igor@armbian.com>
2026-03-25 23:39:10 +01:00
EvilOlaf
c53e3b4e2e uefi-arm64: rewrite patches for 7.0-rc4 2026-03-25 22:48:50 +01:00