USB C to display


0utc45t
 Share

3 3

Recommended Posts

I'm trying to get desktop showing thru USB-C connector with appropriate usb-c to hdmi cable. I don't find errors in Xorg.0.log, but still I get no signal to my TV. I've installed desktop via armbian-config. Never done USB-C to any display, so I think I need some pointers to debug and get it to work... Did not find howtos or alike.

Link to post
Share on other sites

Armbian is a community driven open source project. Do you like to contribute your code?

@0utc45t, try legacy image. if it still not working, make sure your cable has converter chip inside.

There are at least 2 standards regarding display signal in USB Type-C. one is DisplayPort Alternate Mode, which is the one supported on Helios64 (RK3399) and the other one is HDMI Alt mode.

If you have cable that use HDMI Alt mode, it won't work on Helios64.

 

@RussianNeuroMancer,

yes. on legacy, HDMI+Hub combo working fine. The problem with mainline driver, it does not support OTG. You have to define the port as "host" or "peripheral" in device tree.

That PR comment, before i knew https://github.com/armbian/build/pull/2299

HDMI+hub combo working fine in LK5.9 if you also enable rockchip-dwc3-0-host overlay.

Link to post
Share on other sites

6 hours ago, usual user said:

This discussion is off-topic here, a moderator should move it to a proper thread starting with my previous post in this thread.

 

Happy to do so but what shall be title of new thread (I am only partially understanding the issue, and how it differs from OP, to be honest).

Link to post
Share on other sites

1 hour ago, TRS-80 said:

I am only partially understanding the issue, and how it differs from OP, to be honest

This discussion is about USB Type-C DisplayPort Alternate Mode support on mainline kernel. It was introduced for Pinebook Pro with the referenced kernel patch. This thread is about Helios64 DTB making use of this funktionality. My discussion is about doing the same for NanoPC-T4. So, IMHO this belongs in a place where NanoPC-T4 is discussed with a title like  "USB Type-C DisplayPort Alternate Mode Support for NanoPC-T4".

Link to post
Share on other sites

OK, I am confused.  On mainline kernel as shipped does video over USB C work or not?

 

When I plug in a USB C to display port adapter I get :

 

[  971.601581] cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Not connected. Disabling cdn
[  971.604655] cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Not connected. Disabling cdn
[  973.504147] cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Not connected. Disabling cdn
[  973.747984] cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Connected, not enabled. Enabling cdn
[  978.938643] cdn-dp fec00000.dp: [drm:cdn_dp_check_sink_connection [rockchipdrm]] *ERROR* Get sink capability timed out
[  978.939643] cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] *ERROR* Enable dp failed -19

 

I get exactly the same with 2 different USB C "combo" adapters.  I have not tried the legacy kernel yet.

 

Thanks.

Link to post
Share on other sites

@tekrantz, Did you need to shave the included USB-C serial console cable? if yes, you might also need to shave the cable on your dongle. OK, before doing that, maybe try without the backplate first.

 

this is log form LK 5.9

Spoiler


Dec 23 00:49:26 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Not connected. Disabling cdn
Dec 23 00:49:26 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Not connected. Disabling cdn
Dec 23 00:50:15 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Not connected. Disabling cdn
Dec 23 00:50:15 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work [rockchipdrm]] Connected, not enabled. Enabling cdn
Dec 23 00:50:16 helios64 kernel: Console: switching to colour frame buffer device 240x67
Dec 23 00:50:16 helios64 kernel: rockchip-drm display-subsystem: [drm] fb0: rockchipdrmfb frame buffer device

 

 

and this is log from LK 4.4

Spoiler


Dec 23 01:05:57 helios64 kernel: fusb302 4-0022: CC connected in CC2 as DFP
Dec 23 01:05:57 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work] Not connected. Disabling cdn
Dec 23 01:05:57 helios64 kernel: fusb302 4-0022: PD disabled
Dec 23 01:05:57 helios64 kernel: xhci-hcd xhci-hcd.2.auto: xHCI Host Controller
Dec 23 01:05:57 helios64 kernel: xhci-hcd xhci-hcd.2.auto: new USB bus registered, assigned bus number 2
Dec 23 01:05:57 helios64 kernel: xhci-hcd xhci-hcd.2.auto: hcc params 0x0220fe64 hci version 0x110 quirks 0x06030010
Dec 23 01:05:57 helios64 kernel: xhci-hcd xhci-hcd.2.auto: irq 223, io mem 0xfe800000
Dec 23 01:05:57 helios64 kernel: usb usb2: New USB device found, idVendor=1d6b, idProduct=0002
Dec 23 01:05:57 helios64 kernel: usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Dec 23 01:05:57 helios64 kernel: usb usb2: Product: xHCI Host Controller
Dec 23 01:05:57 helios64 kernel: usb usb2: Manufacturer: Linux 4.4.213-rk3399 xhci-hcd
Dec 23 01:05:57 helios64 kernel: usb usb2: SerialNumber: xhci-hcd.2.auto
Dec 23 01:05:57 helios64 kernel: hub 2-0:1.0: USB hub found
Dec 23 01:05:57 helios64 kernel: hub 2-0:1.0: 1 port detected
Dec 23 01:05:57 helios64 kernel: xhci-hcd xhci-hcd.2.auto: xHCI Host Controller
Dec 23 01:05:57 helios64 kernel: xhci-hcd xhci-hcd.2.auto: new USB bus registered, assigned bus number 6
Dec 23 01:05:57 helios64 kernel: usb usb6: We don't know the algorithms for LPM for this host, disabling LPM.
Dec 23 01:05:57 helios64 kernel: usb usb6: New USB device found, idVendor=1d6b, idProduct=0003
Dec 23 01:05:57 helios64 kernel: usb usb6: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Dec 23 01:05:57 helios64 kernel: usb usb6: Product: xHCI Host Controller
Dec 23 01:05:57 helios64 kernel: usb usb6: Manufacturer: Linux 4.4.213-rk3399 xhci-hcd
Dec 23 01:05:57 helios64 kernel: usb usb6: SerialNumber: xhci-hcd.2.auto
Dec 23 01:05:57 helios64 kernel: hub 6-0:1.0: USB hub found
Dec 23 01:05:57 helios64 kernel: hub 6-0:1.0: 1 port detected
Dec 23 01:05:57 helios64 kernel: rockchip-dwc3 usb0: USB HOST connected
Dec 23 01:05:59 helios64 systemd[1]: systemd-hostnamed.service: Succeeded.
Dec 23 01:05:59 helios64 kernel: fusb302 4-0022: PD connected as DFP, supporting 5V
Dec 23 01:05:59 helios64 kernel: fusb302 4-0022: DP config successful, pin_assignment 0x8
Dec 23 01:05:59 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work] Not connected. Disabling cdn
Dec 23 01:06:00 helios64 kernel: usb 6-1: new SuperSpeed USB device number 2 using xhci-hcd
Dec 23 01:06:00 helios64 kernel: usb 6-1: New USB device found, idVendor=2109, idProduct=0817
Dec 23 01:06:00 helios64 kernel: usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Dec 23 01:06:00 helios64 kernel: usb 6-1: Product: USB3.0 Hub
Dec 23 01:06:00 helios64 kernel: usb 6-1: Manufacturer: VIA Labs, Inc.
Dec 23 01:06:00 helios64 kernel: hub 6-1:1.0: USB hub found
Dec 23 01:06:00 helios64 kernel: hub 6-1:1.0: 4 ports detected
Dec 23 01:06:00 helios64 kernel: fusb302 4-0022: attention, dp_status 9a
Dec 23 01:06:00 helios64 kernel: cdn-dp fec00000.dp: [drm:cdn_dp_pd_event_work] Connected, not enabled. Enabling cdn
Dec 23 01:06:00 helios64 kernel: rockchip-vop ff900000.vop: [drm:vop_crtc_enable] Update mode to 1024x768p75, type: 10

 

 

Dongle in use: https://www.ugreen.com/products/5-in-1-usb-c-hub-with-4k-hdmi

 

Note: I don't have recess issue on the USB-C port so I don't need to shave the USB C cable.

Edited by aprayoga
Link to post
Share on other sites

 Share

3 3