I have no input on anything Allwinner, but the first action is always to test the latest available dev image and see if the issue persists or has magically fixed itself. Also check HDMI-CEC options in Kodi as the libCEC versions have bumped.
Thanks for the reply!
I tested the latest nightly (nightly-20261024-96d9f0f, 13.0, kernel 7.3.0)
on a fresh SD card. CEC doesn't work there either, and it's actually
worse: the EDID isn't read at all, so Kodi only offers 640x480, 800x600,
848x480 and 1024x768 (the kernel's no-EDID fallback modes) and 1080p
can't be selected.
Regarding libCEC: I don't think this is a libCEC/Kodi settings issue,
because the problem is visible at the kernel level, below libCEC. The
kernel CEC adapter never gets a valid physical address, so libCEC can't
allocate a logical address no matter what is configured in Kodi. I
checked the Kodi CEC settings and tried the physical address override
with 0 (auto) and 1000 - no change. Setting it via cec-ctl is refused
by the driver ("The CEC adapter doesn't allow setting the physical
address manually").
Comparison on the same board, TV (Panasonic TX-P42U20E plasma) and cable:
12.0.2 12.2.1 13.0 nightly
Kernel 6.6.71 6.16.12 7.3.0
HDMI status connected connected connected
EDID size 256 256 0
Physical Address 1.0.0.0 f.f.f.f f.f.f.f
Logical Address 4 (Playback) Not Allocated Not Allocated
DRM connector 51 53 -
Max resolution 1080p 1080p 1024x768
On 12.2.1 the EDID is read correctly and contains a valid CEC physical
address, but it's not passed on to the CEC adapter:
$ edid-decode /sys/class/drm/card0-HDMI-A-1/edid | grep -i "physical address"
Source physical address: 1.0.0.0
On 13.0 the EDID isn't read at all. There are no EDID read errors in
dmesg, only empty ELD warnings:
hdmi-audio-codec hdmi-audio-codec.3.auto: HDMI: Unknown ELD version 0
/connector: Fixed dependency cycle(s) with /soc/hdmi@6000000
So it looks like the HDMI/EDID -> CEC chain of sun8i-dw-hdmi on H6 broke
with the newer kernels (6.16 and 7.3), while 6.6.71 works fine.
Side note: Ethernet doesn't work on 13.0 either (enabling it in the GUI
doesn't stick). The PHY isn't found:
mdio_bus stmmac-0: MDIO device at address 1 is missing.
dwmac-sun8i 5020000.ethernet eth0: cannot attach to PHY (error: -ENODEV)
Full dmesg from 13.0: https://paste.libreelec.tv/unradioactive-magnolia.log
I'm back on 12.0.2 for now, but I have spare SD cards with 12.2.1 and
13.0 and I'm happy to test patches or new nightlies.