[RFC PATCH 7/7] drm/i915: add DisplayPort CEC-Tunneling-over-AUX support
Hans Verkuil
hverkuil at xs4all.nl
Tue May 30 21:29:44 UTC 2017
On 05/30/2017 10:32 PM, Clint Taylor wrote:
>
>
> On 05/30/2017 09:54 AM, Hans Verkuil wrote:
>> On 05/30/2017 06:49 PM, Hans Verkuil wrote:
>>> On 05/30/2017 04:19 PM, Clint Taylor wrote:
>>>>
>>>>
>>>> On 05/30/2017 12:11 AM, Jani Nikula wrote:
>>>>> On Tue, 30 May 2017, Hans Verkuil <hverkuil at xs4all.nl> wrote:
>>>>>> On 05/29/2017 09:00 PM, Daniel Vetter wrote:
>>>>>>> On Fri, May 26, 2017 at 12:20:48PM +0200, Hans Verkuil wrote:
>>>>>>>> On 05/26/2017 09:15 AM, Daniel Vetter wrote:
>>>>>>>>> Did you look into also wiring this up for dp mst chains?
>>>>>>>> Isn't this sufficient? I have no way of testing mst chains.
>>>>>>>>
>>>>>>>> I think I need some pointers from you, since I am a complete
>>>>>>>> newbie when it
>>>>>>>> comes to mst.
>>>>>>> I don't really have more clue, but yeah if you don't have an mst
>>>>>>> thing (a
>>>>>>> simple dp port multiplexer is what I use for testing here, then
>>>>>>> plug in a
>>>>>>> converter dongle or cable into that) then probably better to not
>>>>>>> wire up
>>>>>>> the code for it.
>>>>>> I think my NUC already uses mst internally. But I was planning on
>>>>>> buying a
>>>>>> dp multiplexer to make sure there is nothing special I need to do
>>>>>> for mst.
>>>>>>
>>>>>> The CEC Tunneling is all in the branch device, so if I understand
>>>>>> things
>>>>>> correctly it is not affected by mst.
>>>>>>
>>>>>> BTW, I did a bit more testing on my NUC7i5BNK: for the HDMI output
>>>>>> they
>>>>>> use a MegaChip MCDP2800 DP-to-HDMI converter which according to their
>>>>>> datasheet is supposed to implement CEC Tunneling, but if they do
>>>>>> it is not
>>>>>> exposed as a capability. I'm not sure if it is a MegaChip firmware
>>>>>> issue
>>>>>> or something else. The BIOS is able to do some CEC, but whether
>>>>>> they hook
>>>>>> into the MegaChip or have the CEC pin connected to a GPIO or
>>>>>> something and
>>>>>> have their own controller is something I do not know.
>>>>>>
>>>>>> If anyone can clarify what Intel did on the NUC, then that would
>>>>>> be very
>>>>>> helpful.
>>>>> It's called LSPCON, see i915/intel_lspcon.c, basically to support HDMI
>>>>> 2.0. Currently we only use it in PCON mode, shows up as DP for us. It
>>>>> could be used in LS mode, showing up as HDMI 1.4, but we don't support
>>>>> that in i915.
>>>>>
>>>>> I don't know about the CEC on that.
>>>>
>>>> My NUC6i7KYK has the MCDP2850 LSPCON and it does support CEC over Aux.
>>>> The release notes for the NUC state that there is a BIOS configuration
>>>> option for enabling support. My doesn't have the option but the LSPCON
>>>> fully supports CEC.
>>>
>>> What is the output of:
>>>
>>> dd if=/dev/drm_dp_aux0 of=aux0 skip=12288 ibs=1 count=48
>>> od -t x1 aux0
>>>
>>> Assuming drm_dp_aux0 is the aux channel for the HDMI output on your NUC.
>>>
>>> If the first byte is != 0x00, then it advertises CEC over Aux.
>>>
>>> For me it says 0x00.
>>>
>>> When you say "it does support CEC over Aux", does that mean you have
>>> actually
>>> tested it somehow? The only working solution I have seen mentioned
>>> for the
>>> NUC6i7KYK is a Pulse-Eight adapter.
>>>
>>> With the NUC7i Intel made BIOS support for CEC, but it is not at all
>>> clear to me if they used CEC tunneling or just hooked up the CEC pin to
>>> some microcontroller.
>>>
>>> The only working chipset I have seen is the Parade PS176.
>>
>> If it really is working on your NUC, then can you add the output of
>> /sys/kernel/debug/dri/0/i915_display_info?
>
> [root at localhost cec-ctl]# cat /sys/kernel/debug/dri/0/i915_display_info
> Connector info
> --------------
> connector 48: type DP-1, status: connected
> name:
> physical dimensions: 700x400mm
> subpixel order: Unknown
> CEA rev: 3
> DPCD rev: 12
> audio support: yes
> DP branch device present: yes
> Type: HDMI
> ID: 175IB0
> HW: 1.0
> SW: 7.32
> Max TMDS clock: 600000 kHz
> Max bpc: 12
Huh. Based on this document:
https://downloadmirror.intel.com/26061/eng/NUC6i7KYK%20HDMI%202.0%20Firmware%20update%20Instructions.pdf
this is the internal DP-to-HDMI adapter and it has the PS175. So it is a
Parade chipset, and I have seen that work before (at least the PS176).
<snip>
> connector 55: type DP-2, status: connected
> name:
> physical dimensions: 620x340mm
> subpixel order: Unknown
> CEA rev: 3
> DPCD rev: 12
> audio support: yes
> DP branch device present: yes
> Type: HDMI
> ID: BCTRC0
> HW: 2.0
> SW: 0.26
And is this from a USB-C to HDMI adapter? Which one? I don't recognize the ID.
For the record, this is the internal HDMI output of my NUC7i5BNK:
connector 48: type DP-1, status: connected
name:
physical dimensions: 1050x590mm
subpixel order: Unknown
CEA rev: 3
DPCD rev: 12
audio support: yes
DP branch device present: yes
Type: HDMI
ID: MC2800
HW: 2.2
SW: 1.66
Max TMDS clock: 600000 kHz
Max bpc: 16
Clearly a Megachip.
Regards,
Hans
More information about the dri-devel
mailing list