Skip to content

Update devicetree-rebasing to v7.2-dts and rework the mainline device trees - #285

Merged
mariobalanica merged 5 commits into
edk2-porting:masterfrom
C-Prime90:PR-Mainline-DeviceTree-v7.2
Sep 18, 2026
Merged

mariobalanica merged 5 commits into
edk2-porting:masterfrom
C-Prime90:PR-Mainline-DeviceTree-v7.2

Conversation

@C-Prime90

Copy link
Copy Markdown
Contributor

Bumps devicetree/mainline/upstream to v7.2-dts, plus the three device
tree changes that need it.

  • v7.2-dts bump (1826bba6).

  • Drop three redundant fixups. The NanoPC-T6, ROCK 5 ITX and
    Indiedroid Nova fixups only enabled hdmi0_sound and i2s5_8ch, which
    v7.2 does for all three. Built with this project's dtc flags, fixup and
    upstream source give identical blobs, so they were pure indirection.
    ROCK 5A still needs its fixup (no hdmi0_sound upstream), so that one
    just got reindented.

  • PowerStation 6 rework. Reordered to upstream's layout, little-core
    CPU supplies added, red LED polarity fixed. Also describes USB-C
    DisplayPort, which was missing entirely — no dp0 node, and the USBDP
    PHY still had the old altmode-mux graph with nowhere for a DP link to
    attach. Verified byte-for-byte against what the board is running.

  • NanoPi R6C / R6S at HS400. Upstream stops at HS200 on these two,
    about half the bandwidth, while the NanoPC-T6 already does HS400 with
    enhanced strobe. Same carrier, same eMMC part, and FriendlyELEC sets
    HS400 for the whole family from one dtsi. Not verified on hardware — a
    check from someone with either board would be welcome.

#281 needs this first. Its Edge2 and Orange Pi 5 Plus fixups override
&dp0, &dp0_in and &dp0_out, which don't exist in the pin master
currently carries — they arrive with v7.2. It won't build without this.

The NanoPC-T6, ROCK 5 ITX and Indiedroid Nova fixups only enabled
hdmi0_sound and i2s5_8ch, which devicetree-rebasing v7.2 already does
for all three boards. Compiling each fixup and its upstream source with
the project's own dtc flags gives byte-identical blobs, so the files are
pure indirection. Drop them and point those platforms at the upstream
device tree directly.

The ROCK 5A fixup is still needed -- upstream leaves hdmi0_sound off
there -- so only fix up its indentation.
Rebuild the board's device tree against devicetree-rebasing v7.2:
reorder the overrides to upstream's layout, add the little-core CPU
supplies, and correct the red LED's polarity and power-on state.

Wire the USB-C DisplayPort path, which was not described at all before.
There was no dp0 node, and the USBDP PHY still carried the old
orientation-switch and altmode-mux graph, which has nowhere to attach a
DP link. Move it to the current four-endpoint binding and add the dp0
pipeline behind it.

HDMI0 keeps VP0 and DP0 takes VP2, which is both what the vendor device
tree ends up with and what the blob the board is running already has.

Verified byte-for-byte against the device tree running on the board.
Upstream stops at HS200 on these two boards, roughly half the available
bandwidth, while the NanoPC-T6 already runs HS400 with enhanced strobe.
The R6C, the R6S and the T6 are the same nanopi6 carrier design with the
same eMMC part, and FriendlyELEC's own tree sets HS400 with enhanced
strobe for the whole family from one shared dtsi, with none of the three
overriding it.

The fixups these replace only enabled hdmi0_sound and i2s5_8ch, which
v7.2 already does, so nothing is lost by reusing them.

Not yet verified on hardware.
Comment thread devicetree/mainline/rk3588-rock-5-itx-fixup.dts
Dropped by mistake while preparing this series. The earlier commit claimed
all three fixups it removed were pure indirection, which holds for the
NanoPC-T6 and the Indiedroid Nova but not for this board -- its fixup does
considerably more than enable sound.

It deletes the pcie-oscillator node and rewrites the pcie3x2 and pcie3x4
clock lists to drop pcie30_refclk, keeping compatibility with kernels older
than v6.13-rc1 and avoiding a hang where pcie3x2 probes before pcie3x4 and
dies on DBI access because the clock was never enabled. v7.2 carries none
of that: it still defines pcie-oscillator and still lists
<&pcie30_port1_refclk> under the "ref" clock-name.

Only the hdmi1_sound and i2s6_8ch overrides became redundant. Compiling the
fixup and the upstream source with this project's dtc flags against v7.2
gives blobs differing in clocks, clock-names, vpcie3v3-supply,
pcie-oscillator and pcie30_refclk, so the file is restored unchanged.
@mariobalanica
mariobalanica merged commit ef2d089 into edk2-porting:master Sep 18, 2026
23 checks passed
@C-Prime90
C-Prime90 deleted the PR-Mainline-DeviceTree-v7.2 branch September 18, 2026 08:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants