Wiadomość napisana przez Piotr Oniszczuk piotr.oniszczuk@gmail.com w dniu 14.05.2022, o godz. 15:58:
Wiadomość napisana przez Peter Geis pgwipeout@gmail.com w dniu 09.05.2022, o godz. 18:00:
If you want to confirm the hardware is configured correctly you can remove the cec pin from the hdmi node and set up a cec-gpio node. https://elixir.bootlin.com/linux/v5.18-rc5/source/Documentation/devicetree/b...
Peter, Sascha
I configured cec-gpio and can confirm: with gpio cec works on my rock3-a board v1.31.
So summarising my tests:
rock3-a v1.1 rock3-a v1.31 rock3-b
radxa debian: ok ok ok
other ppl mainline 5.18: ok n/t n/t
me with mainline 5.18: n/t nok ok
me with mainline 5.18 gpio-cec: n/t ok n/t
Non-working combination is: rock3-a v1.31 hw on mainline 5.18. For me it looks like there is bug in case when rk3568 using cec on hdmitxm1_cec line. (The same binaries working ok on my rock3-b where cec is on hdmitxm0_cec line. It also works on Peter's rock3a v1.1 - which also uses hdmitxm0_cec line).
It looks like upper cec driver can talk to lower driver (dw-hdmi?) but nothing is received from lower driver, as my app says: CECAdapter: CEC device can't poll TV: TV does not respond to CEC polls
btw: I verified with oscilloscope connected to hdmitxm1_cec line: starting cec-compliance -v -T shows expected series of 0V pulses on hdmitxm1_cec line....
Sascha, Peter
I returned to trying to find why hdmi-cec is not working on rock3-a v1.31 hw.
I'm on vop2 v11 on 5.18 mainline.
Current findings:
(1) the same sw. stack/binaries works on rock-3b (where cec uses hdmitx_m0 instead of hdmitx_m1 I/O line);
(2) gpio-cec however works no problem on rock3-a;
(3) monitoring cec messages with v4-utils 'cec-follower -s' shows exact the same events in non-working rock3-a and working rock3-b (tested by issue configure cec by 'cec-ctl -d /dev/cec0 --phys-addr=1.0.0.0 --playback' command)
--> i'm interpreting this as confirmation that low level phy layer receives ok cec data from connected device on non-working rock3-a;
(4) debug sysfs for cec shows "has CEC follower (in passthrough mode)" for working rock-3b and there is NO "has CEC follower" debug message in failing rock3-a.
For me It looks like low-level hdmi-cec works ok on failing rock3-a - but upper layers (in hdmi vop2?) are not registering (or failing to register) cec-follower filehandle. This happens just when hdmitx I/O in DT is changed from hdmitx_m0 to hdmutx_m1. A bit strange - but all my tests consistently confirming this observation....
I'm too weak in kernel cec internals - so maybe you have any pointers how to further debug/investigate this issue?
BTW: i'm not alone with cec issue on rock3a v1.31 - already 2 other users contacted me with the same issue...