From: Stefan Agner <stefan@agner.ch>
To: Alexander Stein <alexander.stein@mailbox.org>
Cc: narmstrong@baylibre.com, linux-amlogic@lists.infradead.org,
linux-media@vger.kernel.org
Subject: Re: (EXT) HDMI CEC on ODROID-N2+
Date: Sat, 15 Jan 2022 14:28:01 +0100 [thread overview]
Message-ID: <772e1613cd49ddac3941ae584e0e89c2@agner.ch> (raw)
In-Reply-To: <8112d37eaed169735ca8b46e5d587210@agner.ch>
Hi Alexander, Hi Neil,
On 2022-01-15 11:52, Stefan Agner wrote:
> Hi Alexander,
>
> On 2022-01-15 11:02, Alexander Stein wrote:
>> Hi Stefan,
>>
>> Am Donnerstag, 13. Januar 2022, 15:36:38 CET schrieb Stefan Agner:
>>> Hi Neil,
>>>
>>> I am trying to use HDMI CEC on ODROID-N2+ using Linux 5.10.91. However,
>>> I was unsuccessful: As far as I can tell cec-client uses the right
>>> device (I disabled CONFIG_DRM_DW_HDMI_CEC since my kernel is still
>>> missing your patch "drm/meson: dw-hdmi: disable DW-HDMI CEC
>>> sub-driver"). But communication won't work, and dmesg prints timeout
>>> messages:
>>>
>>> [ 68.831253] cec-meson_g12a_ao_cec: message ff 84 20 00 06 timed out
>>> [ 71.134987] cec-meson_g12a_ao_cec: message ff 87 00 15 82 timed out
>>> [ 73.438826] cec-meson_g12a_ao_cec: message f0 timed out
>>> [ 75.742677] cec-meson_g12a_ao_cec: message f0 timed out
>>> [ 78.046555] cec-meson_g12a_ao_cec: message f0 timed out
>>> [ 80.350446] cec-meson_g12a_ao_cec: message f0 timed out
>>> [ 82.654358] cec-meson_g12a_ao_cec: message 11 timed out
>>> [ 84.958285] cec-meson_g12a_ao_cec: message 11 timed out
>>> [ 87.262194] cec-meson_g12a_ao_cec: message 11 timed out
>>> [ 89.566130] cec-meson_g12a_ao_cec: message 11 timed out
>>>
>>> I did a quick test with CoreELEC which uses the 4.9 downstream kernel,
>>> CEC seems to work there. So it does not seem to be my hardware setup.
>>>
>>> A quick test with the latest Linux 5.16 shows the same errors.
>>>
>>> Do you happen to have an idea? Do you know if HDMI CEC using upstream
>>> kernels worked at one point on that particular platform?
>>
>> I'm using Arch Linux on my ODROID-n2 (non-plus) and HDMI CEC works as
>> expected.
>> Currently I'm running a 5.15.13-1-aarch64-ARCH kernel. AFAICS the mentioned
>> patch is mainline since v5.14. I can see my TV without issues. I have to add
>> that not every cable is suitable for HDMI CEC, I have one where CEC does not
>> work (in general).
>
> Hm, interesting, thanks for the datapoint!
>
> I tried to reproduce your findings, unfortunately I am not successful in
> booting mainline using Arch Linux ARM so far. It seems it comes with
> downstream 4.9 kernel by default (where CEC seems to work in this case
> too). I then installed linux-aarch64 and adjusted the device tree, but
> it seems that the downstream U-Boot 2015.01-10 has some hardcoded
> "rsvmem" command which fails. How are you booting v5.14?
FWIW, adjusted U-Boot load addresses fixed that issue:
# Set load addresses
setenv dtb_loadaddr "0x20000000"
setenv loadaddr "0x1080000"
setenv initrd_loadaddr "0x4080000"
And I can confirm, HDMI CEC works with Arch Linux 5.15.13 kernel!
>
> It is a bit surprising that 5.15.13 works for you but 5.16 didn't for
> me. That makes me wonder, could it be bootloader dependent? Are you
> using downstream U-Boot?
That assumption turned out to be wrong: I used our mainline based U-Boot
2021.10 instead of the Arch Linux ARM U-Boot, and HDMI CEC continued to
work.
I then moved to 5.15.13 as well to rule out any kernel changes. But
still, in our configuration HDMI CEC did not work. I ended up diffing
configuration, and noticed that we are using built-in CONFIG_CEC_CORE
whereas Arch Linux uses it as a module. To build CONFIG_CEC_CORE as a
module I had to change some other configuration from built-in to module,
namely:
- CONFIG_CEC_CORE=m
- CONFIG_DRM_DW_HDMI=m
- CONFIG_DRM_MESON=m
- CONFIG_DRM_MESON_DW_HDMI=m
With that change, HDMI CEC started to work in my builds too!
With that change, it also works on Linux 5.10.
I guess there is some ordering issue or something which makes it fail
when those drivers are built-in? Note that I did not change
CONFIG_CEC_MESON_G12A_AO, that driver was already a module before.
--
Stefan
_______________________________________________
linux-amlogic mailing list
linux-amlogic@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-amlogic
next prev parent reply other threads:[~2022-01-15 13:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-13 14:36 Stefan Agner
2022-01-13 15:52 ` Neil Armstrong
2022-01-15 10:02 ` (EXT) " Alexander Stein
2022-01-15 10:52 ` Stefan Agner
2022-01-15 13:28 ` Stefan Agner [this message]
2022-01-16 10:14 ` Alexander Stein
2022-01-16 10:50 ` Stefan Agner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=772e1613cd49ddac3941ae584e0e89c2@agner.ch \
--to=stefan@agner.ch \
--cc=alexander.stein@mailbox.org \
--cc=linux-amlogic@lists.infradead.org \
--cc=linux-media@vger.kernel.org \
--cc=narmstrong@baylibre.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®