From: Pete Batard <pbatard@gm...> - 2011-08-02 10:12:55
Apologies for not answering sooner!
On 2011.08.02 05:43, vipul samar wrote:
> On Thu, Jul 28, 2011 at 5:13 PM, vipul samar wrote:
> Hello pete,
> I am working on HDMI-CEC and i was looking test application for the
> same. I found that CECD is a well developed application. I want to
> see the code of realtek cec. Is it under opensource or what.
Yes it is. If you look at the cecd wiki  you will see that there was
a link at the bottom of the page for the "Realtek's CEC driver sources
for MARS Kernel 2.6.12" . However, I realize I forgot to also add a
link to the modified CEC driver sources, which are the ones that should
be used with cecd, as they add necessary enhancements such as
interruptible read and timeouts on R/W operations. This has now been
For more Realtek related downloads, you can also have a look at this
downloads page , as it contains a complete VMWare image, with a MIPS
compiler, that will allow you to recompile the modified cecd kernel.
> concern is only about the definition of ioctls. How you guys
> implement ioctls for read and write message. I faced a lot problem
> while testing of it. I did it through function without the use of
> IOCTL and now i want to implement it through ioctls.
I hope having a look at the driver sources will help you out. Please be
aware that I am not the person who wrote the original driver and I'm not
affiliated with Realtek, but if you have questions, I'll see what I can
do to answer them.
> Please help me out
> Vipul Samar
> One more thing that i want to know is about target address how cecd
> expose that node for cec target address. Is it a standard formate or what.
I'm not sure I understand the question, as there can be different
targets here. One is the target device, that cecd translates HDMI-CEC
commands to (typically a Linux kernel input device, such as an IR
controller device). The other is an HDMI-CEC target address, which can
be either physical (eg. 220.127.116.11) according to the position of the device
in the HDMI connection tree, or logical (eg. 4, for the first playback
The physical address is found by having the device read the EDID from
the HDMI port it is connected, either directly or indirectly, to the TV.
It is a standard EDID field, which is described in the EDID
specifications (don't have a link right now, but it should be available
on the net). The logical address is assigned as per section 10.2.1 of
the CEC specs , which is something that libcec implements in its
libcec_allocate_logical_address() function .
All of these are well defined formats.