Skip to content

arm64: dts: rockchip: overlay: yy3588: disable eDP overlay temporarily#1

Closed
SuperKali wants to merge 32 commits into
rk-6.1-rkr5.1from
fix/yy3588-disable-edp-overlay
Closed

arm64: dts: rockchip: overlay: yy3588: disable eDP overlay temporarily#1
SuperKali wants to merge 32 commits into
rk-6.1-rkr5.1from
fix/yy3588-disable-edp-overlay

Conversation

@SuperKali

Copy link
Copy Markdown
Member

The 11.6 inch eDP kit panel we have shows severe image retention that gets worse with use, and as it degrades it can hang the display-subsystem bind at boot. That leaves the eDP overlay impossible to validate on a known-good panel right now.

This renames the overlay to .disabled and drops it from the overlay Makefile so it is not built or offered until a working panel is available to re-verify the path. The DSI overlays are untouched and keep working.

The pending backlight-PWM and regulator fixes for this overlay are parked and will land together with the re-enable once the eDP path can be tested on good hardware.

ackPeng and others added 30 commits May 16, 2026 17:49
- this never worked, except for `123456` display on boot
- was always built-in (not a module, and =y always)
- This reverts commit 5e14078
- Original from armbian/build@5ee03af
- backported from 7.0.y mainline version to 6.1.y
  - `.remove` returns void at 6.1.y

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 x 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.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>
- backported driver which works
- also eat trailing whitespace
… ipex.

Currently the luckfox-lyra-zero-w defaults to using the ipex connector for wifi (not the onboard antenna). This has lead to user confusion.

Use a gpio hog to set the antenna selection pin HIGH at boot, selecting the onboard by default. Add an overlay for switching to the ipex connector.
Adds spidev overlays for `ebyte-ecb41-pge` compatible with raspberry pi 40pin layout.

Also increases CMA for Ebyte-ECB41-PGE from 4MB to 8MB to correct current CMA allocation errors when enabling these overlays + ethernet at the same time.
… (RK3588) board support (armbian#486)

* easepi-a2, easepi-r2: add device tree support for vendor kernel 6.1

Add board device tree files for EasePi A2 (RK3568) and EasePi R2 (RK3588):

- rk3568-easepi-a2.dts: Board DTS for EasePi A2, includes shared
  carrier board definition rk3568-roc-k40pro.dtsi
- rk3568-roc-k40pro.dtsi: Shared hardware config for the
  ROC-RK3568-PC carrier platform (PMIC, regulators, GPIO, etc.)
- rk3588-easepi-r2.dts: Board DTS for EasePi R2, self-contained
  with includes for rk3588-rk806-single.dtsi and rk3588-linux.dtsi

Signed-off-by: ifroncy01 <ifroncy01@github.com>

* easepi-a2: Merge roc-k40pro.dtsi into standalone DTS

Combine rk3568-roc-k40pro.dtsi carrier board config into
rk3568-easepi-a2.dts, making it self-contained:

- Merge full root node hardware description (PMIC, regulators, leds)
- Apply easepi-a2 specific root node properties
- Replace ethernet aliases to use pcie_eth0
- Append all easepi-a2 label overrides (gmac0/1 disabled, pcie enabled, etc.)
- Remove rk3568-roc-k40pro.dtsi as it is no longer needed

* easepi-a2: fix DTC pci_device_reg warning

Change PCIe bridge node address from pcie@10 to pcie@10,0 to follow
standard PCI device tree address format (device,function).

* easepi-a2: fix pci_device_reg DTS warning

Change PCIe bridge node address from pcie@10 to pcie@10,0 to follow
standard PCI device tree address format (device,function).

Fixes a DTS warning:
Warning (pci_device_reg): /pcie@fe260000/pcie@10: PCI unit address format error, expected "0,0"

* easepi: various DTS fixes and cleanups

For easepi-a2:
- Fix adc-keys press-threshold-microvolt from 1750 to 175000
- Disable rk809-sound (audio card not present on board)
- Formatting fix on i2s1_8ch pinctrl indentation
- Translate Chinese comments to English

For easepi-r2:
- Fix compatible string to "easepi,r2"
- Fix comment formatting and translate Chinese comments to English
- Fix sdio status placement

* easepi-a2: DTS fix

---------

Signed-off-by: ifroncy01 <ifroncy01@github.com>
… OPP tables (armbian#484)

* arm64: dts: rockchip: rk3576: remove empty rockchip,supported-hw from OPP tables

The bare "rockchip,supported-hw;" property with no value makes the OPP
framework require opp-supported-hw on every OPP entry, but only opp-j-m-*
entries have it. This causes all generic OPP entries to be rejected,
resulting in GPU stuck at a fixed ~100 MHz without devfreq.

Remove the empty property so standard opp-* entries are always available
for non-J/M chips.

Affects: cluster0, cluster1, bus_a72, dmc, npu, gpu, vop OPP tables.

Signed-off-by: mingzq <north_sea@qq.com>

* arm64: dts: rockchip: keep rk3576 supported-hw outside GPU

---------

Signed-off-by: mingzq <north_sea@qq.com>
PR armbian#486 is based on the v1.0 board, but the actual board sold is v1.2.

Changes in v1.2:
1. Remove power supply control for the TF card to support booting from the TF card.
2. Remove power supply control for the PI6C clock, now it's directly powered.
3. Export the I2C7 pinout.

Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
…mputer devkits (armbian#483)

The volumeup-key press-threshold-microvolt was set to 1750 instead of
1750000 (1.75V), off by a factor of 1000. Fix for both rk3576 and rk3588
recomputer devkit boards.
…i5U (armbian#488)

* media: rockchip: hdmirx: add edid version to disable NV24

Add two new EDID variants (HDMIRX_EDID_340M_NV12 = 3 and
HDMIRX_EDID_600M_NV12 = 4) that omit the YCbCr 4:4:4 (NV24) capability
bit and let the driver fix up the EDID checksum accordingly. Read the
selected variant from the new `edid-version` DT property on the
hdmirx_ctrler node so per-board defaults can be chosen without
requiring userspace to poke the edid sysfs file at boot.

This is a direct prerequisite for board DTS files that want to advertise
a default EDID other than the hard-coded 340MHz variant.

Signed-off-by: jensen <jensenhuang@friendlyarm.com>
[smazurov@gmail.com: cherry-picked unmodified from friendlyarm/kernel-rockchip
 commit ee391fb22 on branch nanopi6-v6.1.y. Applies cleanly on top of
 armbian/linux-rockchip rk-6.1-rkr5.1 (with offsets, due to subsequent
 unrelated drift). Tested on Orange Pi 5 Ultra (RK3588) with both 1080p60
 and 4K60 HDMI sources; required by the companion DTS patch which sets
 edid-version = <2> for OPi5U.]
Tested-by: Stepan Mazurov <smazurov@gmail.com>
Signed-off-by: Stepan Mazurov <smazurov@gmail.com>

* arm64: dts: rockchip: opi5-ultra: default hdmirx edid-version to 600M

Set edid-version = <2> (HDMIRX_EDID_600M) on the hdmirx_ctrler node so
the default EDID advertised to upstream HDMI sources includes the
TMDS-up-to-600MHz block (covering 4K@60 modes), instead of the driver's
built-in HDMIRX_EDID_340M default which advertises only up to TMDS
340MHz (1080p60 / 4K@30).

Symptom without this property on Orange Pi 5 Ultra: a 4K-capable HDMI
source (tested with a Linux desktop pushing 3840x2160@60 from a discrete
GPU) cycles indefinitely between TMDS-valid and TMDS-invalid states.
The hdmirx PHY rejects the source's 4K stream because the EDID the
source read did not advertise 4K support, yet the source insists on
4K based on its own display configuration. Writing "2" to
/sys/devices/platform/fdee0000.hdmirx-controller/hdmirx/hdmirx/edid
at runtime resolves the symptom immediately and stably; this DTS change
makes the runtime fix the default at boot.

The Rock 5B+ and NanoPC-T6 board DTS files already set similar
edid-version properties; Orange Pi 5 Ultra was missing the equivalent.

Depends on the rk_hdmirx driver reading edid-version from DT
(prerequisite patch: cherry-pick of friendlyarm/kernel-rockchip commit
ee391fb22 in the companion patch).

Tested-by: Stepan Mazurov <smazurov@gmail.com>
Signed-off-by: Stepan Mazurov <smazurov@gmail.com>

---------

Signed-off-by: jensen <jensenhuang@friendlyarm.com>
Signed-off-by: Stepan Mazurov <smazurov@gmail.com>
Co-authored-by: jensen <jensenhuang@friendlyarm.com>
which cause initramfs load rootfs failed

Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Signed-off-by: Liangbin Lian <jjm2473@gmail.com>
Read r8125 LED register/value pairs from the PCIe controller DT
"realtek,led-data" property, instead of hardcoding in the shared
driver path.

Walk up the device parent chain to find the PCIe platform device's
of_node, since PCI devices on Rockchip platforms do not have their
of_node set directly.

Parse the DT property once during probe and cache it in the driver
private struct. Apply the cached config from rtl_hw_start_8125_common
only, eliminating redundant calls and repeated memory allocation.
Signed-off-by: Ken Wang <ken@radxa.com>
Signed-off-by: Ken Wang <ken@radxa.com>
The 7" 1024x600 DSI kit on Youyeetoo R1 and YY3588 is a TPC2059 panel
whose GT911 needs the vendor cfg blob, and the 11.6" eDP kit ships a
GT928 wired portrait. Add both blobs from the youyeetoo yy3588_linux
tree as new tp-size cases 2059 and 928 so existing boards keep their
current behavior.

Signed-off-by: SuperKali <hello@superkali.me>
Vendor evb7-v11 wires HDMI-RX hotplug detect on GPIO1_D5, not
GPIO1_C6. GPIO1_C6 is the pwm15m2 pad used by the eDP kit backlight,
so keeping detect there breaks the eDP overlay pinmux.

Signed-off-by: SuperKali <hello@superkali.me>
tp-size 911 programs the WGJ89006B 4096x4096 blob, which does not
match the 7" TPC2059 sensor matrix and leaves dead zones at the
panel edges. Switch both DSI overlays to the new 2059 case that
sends the vendor 1024x600 blob with 1:1 coordinates.

Signed-off-by: SuperKali <hello@superkali.me>
…lays

Wire the three official Youyeetoo display kits from the vendor
rk3588-lcd-yyt.dtsi: 7" 1024x600 TPC2059 panels on dsi0 and dsi1
and the 11.6" 1920x1080 eDP panel with GT928 touch. The previous
dsi1 overlay described a non-existent Innolux panel. eDP runs on
VP1 because dp0 already owns VP2 on this board.

Signed-off-by: SuperKali <hello@superkali.me>
The 7" kit backlight driver is active-low: with normal polarity
raising brightness dims the panel, confirmed on R1 hardware. The
vendor Android DTB programs the same PWM inverted. Flip polarity on
all four DSI overlays; the eDP backlight stays normal per vendor.

Signed-off-by: SuperKali <hello@superkali.me>
eDP on VP1 fails: VP1 shares its PLL with VP0 so the 141.5MHz dclk
gets clamped to 132MHz and the VOP2 port mux times out on the second
modeset. Move eDP to VP2 as the vendor does and hand DP VP1 instead.
Use the BOE QV116FHB-N81 datasheet typical timing and drop the panel
enable GPIO, GPIO0_C4 is already held high by the always-on
wifi_disable regulator in the board DTS.

Signed-off-by: SuperKali <hello@superkali.me>
SuperKali added 2 commits July 5, 2026 11:57
…lays

With the vendor kernel the display-subsystem bind stalls at boot when
a display overlay is enabled without its panel attached, on eDP the
forced HPD keeps link training against a missing sink. State the
constraint in the overlay descriptions.

Signed-off-by: SuperKali <hello@superkali.me>
The 11.6 inch eDP kit panel currently available shows severe image
retention and can hang the display-subsystem bind as it degrades, so
the overlay cannot be validated on known-good hardware right now. Rename
it to .disabled and drop it from the overlay Makefile so it is not built
or offered until a working panel is available to re-verify the path.

Signed-off-by: SuperKali <hello@superkali.me>
@SuperKali SuperKali closed this Jul 7, 2026
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.

10 participants