Commit Graph

5016 Commits

Author SHA1 Message Date
EvilOlaf
c0e8ba8423 meson64: remove upstreamed patch 2026-01-14 13:24:10 +01:00
Ricardo Pardini
0a0889501b mixtile-core3588e: alias ethernet0 to gmac0 for stable MAC address
- phew. this was all it takes. u-boot does the rest of the magic
2026-01-13 20:39:37 +01:00
Ricardo Pardini
6a1cfbc613 rockchip64-6.19: arm64: dts: rockchip: describe pcie ethernets on FriendlyElec NanoPC-T6
- By fully describing the pcie hardware for the RTL8125s (rtl8169) present on the
  board, we get to alias them to ethernet0/1. In return, (mainline) u-boot will by
  default patch the runtime FDT though it's fdt_fixup_ethernet() implementation,
  hopefully resulting in fully stable MAC addresses without the need to program
  the RTL NIC's EEPROM; as an added benefit, u-boot MAC & kernel MAC would match,
  facilitating network-boot setups.
2026-01-13 20:39:22 +01:00
Jianfeng Liu
801b4c9e0f rockchip64-6.19: add patches for verisilicon av1 decoder 2026-01-13 20:39:02 +01:00
Jianfeng Liu
2499a2b446 rockchip64-6.18: add patches for verisilicon av1 decoder 2026-01-13 20:39:02 +01:00
Viacheslav Bocharov
b24a33b917 jethub d2: update device tree files 2026-01-13 09:00:36 +03:00
Patrick Yavitz
3e40fe954b Meson64: Delete patches that are not required
general-input-touchscreen-Add-D-WAV-Multitouch.patch (not enabled)
general-memory-marked-nomap.patch (not required)

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-01-12 19:38:40 -05:00
Igor Velkov
18848f530d rockchip64: Helios64: fix Type-C PHY and TCPM registration
Problem:
On Helios64 boot, the Type-C PHY (ff7c0000.phy) gets stuck in
"deferred probe" state with unknown reason. This causes:
- USB 3.0 SuperSpeed via Type-C port not working
- DisplayPort via Type-C (Alt Mode) not working

The following messages appear in dmesg:
  platform ff7c0000.phy: deferred probe pending: (reason unknown)
  platform fe800000.usb: deferred probe pending: wait for supplier /phy@ff7c0000/usb3-port
  platform fec00000.dp: deferred probe pending: wait for supplier /phy@ff7c0000/dp-port

Along with dependency cycle warnings:
  /phy@ff7c0000/dp-port: Fixed dependency cycle(s) with /i2c@ff3d0000/typec-portc@22/connector

Root cause:
The Helios64 DTS uses a legacy Type-C connection method:

  &tcphy0 {
      extcon = <&fusb0>;  // Expects extcon from fusb302
  };

However:
1. The FUSB302 driver with TCPM support (since kernel ~4.14) does NOT
   create extcon devices
2. Instead, it uses the Type-C connector class (/sys/class/typec/)
3. The phy-rockchip-typec driver calls extcon_get_edev_by_phandle(),
   fails to find an extcon device at the specified phandle, and
   returns -EPROBE_DEFER
4. The PHY remains in deferred probe indefinitely

The extcon-cables property is present in the DTS, but without a
typec_extcon_bridge node it serves no purpose.

This bug has existed since Type-C support was added to Helios64
(at least since kernel 6.6). It likely worked with older fusb302
driver versions, but broke after the transition to TCPM.

Solution:
Use the typec-extcon-bridge driver (Armbian patch from Ondrej Jirman/megi)
which translates Type-C connector class events to the extcon interface.

The Pinebook Pro patch (board-pbp-add-dp-alt-mode.patch) implements this
correctly: it has a typec_extcon_bridge node, and all extcon references
point to it rather than directly to fusb0.

Changes:
1. Add typec_extcon_bridge node with compatible = "linux,typec-extcon-bridge"
2. Change extcon = <&fusb0> to extcon = <&typec_extcon_bridge> in
   tcphy0, cdn_dp, u2phy0, usbdrd_dwc3_0 nodes
3. Add usb-role-switch, mode-switch, orientation-switch properties
   to fusb0 connector for integration with the bridge
4. Update PDO definitions with DUAL_ROLE and DATA_SWAP flags
5. Convert typec-altmodes property to modern altmodes subnode format
   (required for TCPM port registration)
6. Add extcon,ignore-usb to u2phy0 (following Pinebook Pro pattern)
7. Add snps,usb3-phy-reset-quirk to usbdrd_dwc3_0

After this fix:
- Type-C PHY (ff7c0000.phy) no longer stuck in deferred probe
- USB 3.0 SuperSpeed via Type-C port should work
- DisplayPort via Type-C (Alt Mode) should work
- Correct cable orientation detection
- USB role switching (host/device)

Known remaining issues:
- FUSB302 fails to register TCPM port with error:
    4-0022    typec_fusb302: cannot register tcpm port
  This prevents USB Power Delivery negotiation. The root cause
  appears to be in the connector configuration and requires
  further investigation.
2026-01-12 23:36:43 +01:00
EvilOlaf
b6da7a9b4c rewrite everything 2026-01-12 23:34:35 +01:00
EvilOlaf
3e5da30cc7 rename already independent patch 2026-01-12 23:34:35 +01:00
EvilOlaf
29da31a00d cb1: combine patches 2026-01-12 23:34:35 +01:00
EvilOlaf
892bf74638 ac200: split hunks to combine 3 into 2 logical patches removing cross patch dependency 2026-01-12 23:34:35 +01:00
EvilOlaf
2e63422c7f combine drm sun4i hdmi patches 2026-01-12 23:34:35 +01:00
EvilOlaf
3d947f6108 re-add Makefile entries 2026-01-12 23:34:23 +01:00
TuAFBogey
c9f8f3caef Address rpardini review: remove BTF patches, use full kernel config, use fetch_from_repo for OP-TEE 2026-01-12 13:18:53 +01:00
TuAFBogey
c6e8c5b680 board: add Nuvoton MA35D1 NuMaker IoT board support
Add support for Nuvoton MA35D1 SoC family:
- ARM Cortex-A35 dual-core @ 800MHz + Cortex-M4 heterogeneous
- NuMaker IoT MA35D16F90 board (512MB DDR)
- Vendor kernel 5.10.140 from Nuvoton GitHub
- TF-A (BL2/BL31) + OP-TEE (BL32) + U-Boot (BL33) boot chain
- SD card boot support

Vendor kernel modules (pending):
Nuvoton provides closed-source Verisilicon licensed drivers:
- dcultrafb.ko (DCUltra display controller)
- ma35d1-vc8000.ko (H.264 video codec)
- galcore.ko (GPU driver)

These modules require exact kernel vermagic match:
  5.10.140-vendor-nuvoton-ma35d1 SMP mod_unload aarch64

Nuvoton is preparing custom builds of these modules for Armbian.

Signed-off-by: TuAFBogey <uguvenen@gmail.com>
2026-01-12 13:18:53 +01:00
Alex Ling
02475685e7 rockchip64: Automatic fan speed and USB 3.0 fix for station-m3
Signed-off-by: Alex Ling <ling_kasim@hotmail.com>
2026-01-11 23:19:24 +01:00
Werner
d79582dd76
sunxi: refactor full patchset 2026-01-11 19:54:48 +01:00
EvilOlaf
3874bc250b fix patching config
`overlay-directories:` has been commented by accident
2026-01-10 11:10:27 +01:00
EvilOlaf
6d7c35e244 rewrite 2026-01-10 11:10:27 +01:00
EvilOlaf
c4975eed99 sunxi64: move whole device trees out of patches
adjust patches which modify the dts afterwards
adjust series
2026-01-10 11:10:27 +01:00
EvilOlaf
5d007ab5bc sunxi: move whole new device tree out of patches 2026-01-10 11:10:27 +01:00
EvilOlaf
6881a93e06 sunxi: cleanup old patchsets
leave 6.15 for reference
2026-01-10 09:50:11 +01:00
Ricardo Pardini
cbfbfb680e sunxi-6.18: rename patch that does fixups for clarity 2026-01-09 20:49:21 +01:00
EvilOlaf
ffcc7b713e adjust series 2026-01-09 20:34:24 +01:00
EvilOlaf
857c6edb1a adjust patching_config, remove overlays from patches 2026-01-09 20:34:24 +01:00
EvilOlaf
00ca186341 actually copy everything and adjust do not commit regex 2026-01-09 20:34:24 +01:00
EvilOlaf
e082431348 copy arm64 overlays 2026-01-09 20:34:24 +01:00
EvilOlaf
e8a8754a04 copy armhf overlays 2026-01-09 20:34:24 +01:00
EvilOlaf
9dec3a39af rewrite for cleanup, disable dt patch which was moved for testing beforehand, enable overlay autopatcher 2026-01-09 20:34:24 +01:00
Ricardo Pardini
c02a76b1dd sunxi/sunxi64-6.18: rework patching config for 32/64; extract one DT from null-patch to bare
- now each arch has its own dt folder, with its own Makefile auto-patched
- simple Makefile autopatching with `add-only: true`
- as example convert 01 null-patch to bare-dt in `dt_32/` (drop from series too)
2026-01-09 20:29:08 +01:00
Ricardo Pardini
0770f880ea genio-6.19: switch to add-only DT Makefile AutoPatcher 2026-01-09 20:29:08 +01:00
Ricardo Pardini
d03b9a924a rockchip64-6.19: switch to add-only DT Makefile AutoPatcher 2026-01-09 20:29:08 +01:00
Igor Pecovnik
d7a4c1b3ab Fix broken patch due to upstream changes, drop edge kernel as its not used 2026-01-08 21:38:09 +01:00
Igor Pecovnik
4eac206ecf Fix rootfs compilation (dropping deprecated gtk2 engines), broken patch on meson64, series update 2026-01-08 19:27:48 +01:00
EvilOlaf
ee4c79b19a rewrite everything
except patches adding overlays for sunxi and sunxi64
2026-01-08 17:58:43 +01:00
EvilOlaf
45aac305ac fix broken patch 2026-01-08 17:58:43 +01:00
EvilOlaf
881e231ba5 rewrite all patches 2026-01-08 15:38:23 +01:00
EvilOlaf
ee06d8cdd7 fix borked tz data 2026-01-08 15:38:23 +01:00
EvilOlaf
40173173cf fix broken patch 2026-01-08 15:38:23 +01:00
Igor Pecovnik
63cf880b6e Rockchip maint: drop upstreamed patch 2026-01-08 15:36:51 +01:00
Ricardo Pardini
55b14505dd genio-6.19: add patching config, -extra DT for Radxa NIO-12L
- this prepares everything for the more boards in the family
  - which will need `dt/` folder to avoid null-patches
- label & make LEDs useful
- alias mmc0/mmc1 so they match u-boot
- expose i2c3 which is exposed in the 40-pin 27:SCL3 28:SDA3 (blue pins)
  - shows up at i2c1 to userspace; why would Collabora alias an undescribed bus?
2026-01-08 12:09:02 +01:00
Ricardo Pardini
3be9a59c8d uefi-loong64-6.19: rewrite against 6.19-rc4 2026-01-08 12:08:49 +01:00
Ricardo Pardini
7e2a0b362f rockchip-6.19: rewrite against 6.19-rc4 2026-01-08 12:08:49 +01:00
Ricardo Pardini
9c4f8fa339 mixtile-blade3: mainline: updates to mainline DT with "working" RTL8169's
- For 6.18 + 6.19
- mixtile-blade3: add 4-pin header fan at 40c
- mixtile-blade3: add gpu nodes
- mixtile-blade3: add vcc5v0-host-en "usb" pinctrl
  - somehow results in 2 working RTL8169's behind the ASM1182e on pcie2x1l0
  - which just means the _schematics lie_
- mixtile-blade3: drop rst pinctrl from  pcie2x1l0 and pcie2x1l1
  - this is me probably being stupid, but also required for working ASM1182e/RTL8169
- Status of this mainline port:
  - Initially started by Joshua Riek (2023?)
  - I then added some PCIe3x4 stuff, but never got around to finishing it
  - Specifically, the 2 FUSB302's are beyond me for now
    - One of them _powers_ the board. To use with mainline, power the board some other way with 12V, otherwise kaboom.
      - See sre's talk on this issue; Blade3 should be similar to Rock-5b in this aspect.
  - A challenge has been the PCI2x1 lanes to the miniPCIe and ASM1182e switch
    - Which by themselves seem to work, but the devices behind them (Switch + RTL8169 NICs) do not get powered
    - Until one day I tried to describe a (in theory) USB-related power pin, and suddenly both PCIe NICs started working!
  - All that said, the board is really not stable with this; end-users are much better off with vendor kernel for now.
  - Any and all help is appreciated. Those boards are nice, they've 2 FUSB302, and fancy PCIe Endpoint mode stuff.
  - Schematics we have access to are in https://damwold5pt25n.cloudfront.net/blade3/file/Schematic_Blade_3_v1.1.0.pdf
    - Those clearly lie.
2026-01-08 12:06:59 +01:00
Ricardo Pardini
63192a5e21 rockchip64-6.19: rewrite against 6.19-rc4 2026-01-06 21:47:54 +01:00
Ricardo Pardini
a16da53a5f rockchip64-6.19: drop mainline-overwriting DT rk3568-9tripod-x3568-v4
- as confirmed in https://github.com/armbian/build/pull/9067#issuecomment-3698058523
2026-01-06 21:47:54 +01:00
Ricardo Pardini
6a8e3f20d5 rockchip64-6.19: Enable audio for HDMI0 on station-m3 (repick from 6.18)
- from 545b6e28bb
2026-01-06 21:47:54 +01:00
Ricardo Pardini
2b9699c601 rockchip64-6.19: update rk3588 NPU patches; remove always-on from NPU regulator
- I've submitted upstream, and got feedback ref the always-on.
- See https://lore.kernel.org/linux-rockchip/20260101-arm64-dts-rockchip-rk3588-npu-enablements-v2-0-013cf5d5c39d@pardini.net
- update: merged to linux-rockchip for-next, should land in 6.20/7.0
2026-01-06 21:47:54 +01:00
Ricardo Pardini
a086111128 rockchip64-6.19: rewrite against 6.19-rc3 2026-01-06 21:47:54 +01:00