Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Moderators: mdrjr, odroid

Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri Mar 31, 2017 2:07 am

I couldn't find this subject being addressed in a forum search, so pardon me if this is mentioned elsewhere.
I'm wondering where we're at for supporting wide-screen HDMI (2560-horizontal-type monitors) in Ubuntu?
I have a new XU4 running stock Ubuntu Mate, and was surprised that no wide video modes are available.
I tried manually adding a modeline in X, but I just get a blank white screen with a grey bar on the right side.
So I'm guessing maybe the modes/PLL defs are missing from the kernel's display driver. Just a guess.
Anyone have any further info?

Regards.
Mark
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby odroid » Fri Mar 31, 2017 8:25 am

Exynos-5422 HDMI PHY/Mixer have no capability to handle bigger than 2048 horizontal X-axis.
It is a hardware limitation unfortunately.
User avatar
odroid
Site Admin
 
Posts: 24036
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri Mar 31, 2017 9:08 am

That's unfortunate. Thanks for the quick reply.
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri Mar 31, 2017 9:14 am

But wait... Samsung's own specs say exactly the opposite, in fact they boast about specifically supporting WQHD and WQXGA modes right on their site:

http://www.samsung.com/semiconductor/mi ... e_ap/5422/

So why the limitation on the XU4?
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby crashoverride » Fri Mar 31, 2017 9:34 am

I am sure that refers to the LCD panel that is found in phones using the SoC (display port). The HDMI port would have different limitations.
crashoverride
 
Posts: 3032
Joined: Tue Dec 30, 2014 8:42 pm
languages_spoken: english
ODROIDs: C1

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby memeka » Fri Mar 31, 2017 9:49 am

that page also contains:
Exynos 5422 processor brings outstanding multimedia features to users who desire life-like mobile experiences. It utilizes an advanced Multi Format Codec (MFC), supporting 4K UHD resolution. Multimedia enhancements enable users to enjoy life-like multimedia experiences of creating and uploading richer mobile content at greater ease.


4K MFC? :lol: :lol: :lol:
User avatar
memeka
 
Posts: 3529
Joined: Mon May 20, 2013 10:22 am
languages_spoken: english
ODROIDs: XU rev2 + eMMC + UART
U3 + eMMC + IO Shield + UART

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby odroid » Fri Mar 31, 2017 9:58 am

The HDMI PHY/MIXER has the limitation at 1080p.
But the eDP had no issue and we could play with a 2560x1600 display on the XU3 DP interface.
User avatar
odroid
Site Admin
 
Posts: 24036
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri Mar 31, 2017 10:42 am

I'm running my x86 Ubuntu install on a nothing-special-intel graphics chip over a standard HDMI interface at 2560 x 1080 with no problems.
I'm typing to you on it right now. That said, I see no physical reason in the Samsung specs why the 5422 couldn't do 2560 x 1080 on a wide screen monitor over HDMI, other than that the kernel doesn't currently support it.
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby odroid » Fri Mar 31, 2017 11:02 am

As I told you it is the hardware limitation in the HDMI block.

A silicon designer in Samsung already confirmed it as below.
Code: Select all
Exynos-5422 HDMI MIXER block doesn't support over 2048 x/y.
Please find [44.4.2.19.1 MIXER_RESOLUTION] of User manual REV 1.03.
It says only 11bit [10:0] is available. 0~2047.
And in source code, there is a limitation in [26:16] and [10:0].


So it is impossible !
User avatar
odroid
Site Admin
 
Posts: 24036
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby elatllat » Thu Apr 20, 2017 8:50 pm

The solution is clearly to get a C2 or whatever is released next before 2018.
elatllat
 
Posts: 509
Joined: Tue Sep 01, 2015 8:54 am
languages_spoken: english
ODROIDs: XU4

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri Apr 21, 2017 9:02 am

Yes, upsetting limitation of the XU4's video. I've had a C2 on backorder from Ameridroid, finally arriving tomorrow. :)

Regards,
Mark
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Tue May 09, 2017 8:50 am

It occurs to me that even given the XU4's max horizontal resolution of 2048, it should still be possible to achieve 21:9 display ratios using custom configs, as people are now doing on the RPi 3. Two custom resolutions that should, in theory, be possible immediately come to mind:
2048 x 864
1920 x 800

Has anyone looked into doing this?

Regards,
Mark
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby odroid » Tue May 09, 2017 9:34 am

Can you give me modeline information for those screens?
The required items are as following.
1. Resolutions and Clock
- horizontal pixels / vertical pixels
- pixel clock
- horizontal frequency / vertical frequency
2. HTimings
- hdisp / hsyncstart / hsyncend / htotal
3. VTimings
- vdisp / vsyncstart / vsyncend / vtotal
4. Sync Polarity and Scanning Method
- hsync_polarity / vsync_polarity
- progress_mode or interlaced mode
User avatar
odroid
Site Admin
 
Posts: 24036
Joined: Fri Feb 22, 2013 11:14 pm
languages_spoken: English
ODROIDs: ODROID

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Wed May 24, 2017 8:02 am

How about this for starters:

% gtf 1920 800 60
# 1920x800 @ 60.00 Hz (GTF) hsync: 49.68 kHz; pclk: 125.59 MHz
Modeline "1920x800_60.00" 125.59 1920 2024 2224 2528 800 801 804 828 -HSync +Vsync

If I add this mode in xrandr, it fails with:
xrandr: Configure crtc 0 failed
...and this gets logged:
[ 7935.776767] [c5] [drm] desired mode doesn't exist so
[ 7935.776778] [c5] [drm] use the most suitable mode among modes.

This mode works perfectly fine for me on a RPi3 model B using hdmi_cvt and related settings in its config.txt.
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Thu May 25, 2017 11:11 am

Currently there is no HDMI PHY set for the exact pixel clock '125.59MHz' on hdmi kernel driver,
so it's not available to support the mode right now. :(
(need to ask the PHY setting value to Samsung.)
But as I checked, 1920x800 mode looks possible.

To check the possibility, I tried the similar timings.
Both of them are working and hdmi output has no problem.
Code: Select all
(1) 1920x696p60hz ( display ratio 2.76 : 1 )
# 1920x696 @ 60.00 Hz (GTF) hsync: 43.26 kHz; pclk: 107.98 MHz
Modeline "1920x696_60.00" 107.98 1920 2008 2208 2496 696 697 700 721 -HSync +Vsync

(2) 1400x586p60hz ( display ratio 2.39 : 1 )
# 1400x586 @ 60.00 Hz (GTF) hsync: 36.42 kHz; pclk: 64.97 MHz
Modeline "1400x586_60.00" 64.97 1400 1448 1592 1784 586 587 590 607 -HSync +Vsync


And I will try 2048x864, actually 2048x870p60hz (pclk 146.18).
Let me check it and I will share the result.
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Thu May 25, 2017 11:20 am

"cvt" probably gives a more reasonable pixel clock at 125.00 MHz even:

# 1920x800 59.88 Hz (CVT) hsync: 49.76 kHz; pclk: 125.00 MHz
Modeline "1920x800_60.00" 125.00 1920 2024 2216 2512 800 803 813 831 -hsync +vsync

-Mark
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Thu May 25, 2017 11:42 am

Sorry, no HDMI PHY near the value 125MHz.

https://github.com/hardkernel/linux/blo ... dmi.c#L393
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri May 26, 2017 5:25 am

Are we looking at the same kernel source? On line 575, there's a definition for 119MHz.
On line 584, the next definition is for 146.25MHz. It would be easy to create an entry for 125MHz (which is definitely within the range of the PHY) in this struct and rebuild the kernel.
There's a chance that 1920x800 could be made to sync at 119MHz, since it's rather close to 125MHz. But if not, adding to this table wouldn't be rocket science.
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Fri May 26, 2017 12:45 pm

phiber wrote:Are we looking at the same kernel source? On line 575, there's a definition for 119MHz.
On line 584, the next definition is for 146.25MHz. It would be easy to create an entry for 125MHz (which is definitely within the range of the PHY) in this struct and rebuild the kernel.
There's a chance that 1920x800 could be made to sync at 119MHz, since it's rather close to 125MHz. But if not, adding to this table wouldn't be rocket science.

Yes, we're looking at the same kernel source. :)
I tried to find out the available pixel clock among those in the source kernel.

I mean we need to ask the 125MHz HDMI PHY values to samsung
because it's samsung's security policy that they don't open the detailed descriptions for HDMI PHY registers
so unfortunately, we can't build-up the HDMI PHY register value for each cases. :(
It can take some days.
So I intended to ask it to Samsung once we confirm if it's possible.

Anyway.... about 2048x864, it's not available because there is a limitation of 0~2047 with exynos5422 hdmi block.

So 1920 series of wide screen mode can be better to apply it.
I will discuss this issue internally and then ask the setting value to Samsung.
Last edited by joy on Fri May 26, 2017 1:12 pm, edited 1 time in total.
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Fri May 26, 2017 1:06 pm

And let's check first if it's possible to use 119MHz for 1920x800.

# 1920x800 @ 58.00 Hz (GTF) hsync: 47.97 kHz; pclk: 120.49 MHz
Modeline "1920x800_58.00" 120.49 1920 2016 2216 2512 800 801 804 827 -HSync +Vsync

# 1920x800 @ 57.30 Hz (GTF) hsync: 47.39 kHz; pclk: 119.04 MHz
Modeline "1920x800_57.30" 119.04 1920 2016 2216 2512 800 801 804 827 -HSync +Vsync

# 1920x800 @ 57.20 Hz (GTF) hsync: 47.30 kHz; pclk: 118.83 MHz
Modeline "1920x800_57.20" 118.83 1920 2016 2216 2512 800 801 804 827 -HSync +Vsync

# 1920x800 @ 57.00 Hz (GTF) hsync: 47.14 kHz; pclk: 118.41 MHz
Modeline "1920x800_57.00" 118.41 1920 2016 2216 2512 800 801 804 827 -HSync +Vsync

If you have a timing information, please share it.
If not so, now I'm making a forced modeline information to fix 119MHz and checking it.
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Fri May 26, 2017 1:53 pm

1920x800@57.3 is working.

# 1920x800 @ 57.30 Hz (GTF) hsync: 47.39 kHz; pclk: 119.04 MHz
Modeline "1920x800_57.30" 119.04 1920 2016 2216 2512 800 801 804 827 -HSync +Vsync

Is it OK with the unusual Vsync, 57.3Hz?

Please check it and give us your feedback.


P.S.
I attached the patch so if you want, you can test it first.
Code: Select all
From c74df9a46f5d4fbba900783337ead1a01b9ceafa Mon Sep 17 00:00:00 2001
From: Joy Cho <joy.cho@hardkernel.com>
Date: Fri, 26 May 2017 14:20:48 +0900
Subject: [PATCH] drm/exynos: Add a new hdmi mode, 1920x800p57hz

Change-Id: I4c82dcbf6d5a7c9d5c2c04f413c3730a3be28ca3
---

diff --git a/arch/arm/configs/odroidxu3_defconfig b/arch/arm/configs/odroidxu3_defconfig
index ca94dcb..6f1cede 100644
--- a/arch/arm/configs/odroidxu3_defconfig
+++ b/arch/arm/configs/odroidxu3_defconfig
@@ -1556,7 +1556,7 @@
 # CONFIG_PREVENT_FIRMWARE_BUILD is not set
 CONFIG_FW_LOADER=y
 CONFIG_FIRMWARE_IN_KERNEL=y
-CONFIG_EXTRA_FIRMWARE="edid/1024x768.bin edid/1280x800.bin edid/1920x1080.bin edid/720x480.bin edid/800x600.bin edid/800x480.bin edid/480x800.bin edid/1280x1024.bin edid/1280x720.bin edid/1440x900.bin edid/1680x1050.bin edid/1360x768.bin edid/1366x768.bin edid/1600x1200.bin edid/1600x900.bin edid/1920x1200_30hz.bin edid/1920x1200_60hz.bin edid/1920x1080_50hz.bin edid/640x480.bin edid/720x576.bin edid/1024x600.bin"
+CONFIG_EXTRA_FIRMWARE="edid/1920x800_57hz.bin edid/1024x768.bin edid/1280x800.bin edid/1920x1080.bin edid/720x480.bin edid/800x600.bin edid/800x480.bin edid/480x800.bin edid/1280x1024.bin edid/1280x720.bin edid/1440x900.bin edid/1680x1050.bin edid/1360x768.bin edid/1366x768.bin edid/1600x1200.bin edid/1600x900.bin edid/1920x1200_30hz.bin edid/1920x1200_60hz.bin edid/1920x1080_50hz.bin edid/640x480.bin edid/720x576.bin edid/1024x600.bin"
 CONFIG_EXTRA_FIRMWARE_DIR="firmware"
 # CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set
 CONFIG_ALLOW_DEV_COREDUMP=y
diff --git a/firmware/edid/1920x800_57hz.bin b/firmware/edid/1920x800_57hz.bin
new file mode 100644
index 0000000..0fb70d0
--- /dev/null
+++ b/firmware/edid/1920x800_57hz.bin
Binary files differ
Attachments
1920x800_57hz.bin.zip
(391 Bytes) Downloaded 17 times
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Sat May 27, 2017 4:26 pm

I've just had some time to test. I've applied the patch to use the new edid file as above, but when I try adding the new mode with xrandr and switch to it, I still get the "Configure crtc 0 failed" error, and the same old error in dmesg:
[ 940.371923] [c5] [drm] desired mode doesn't exist so
[ 940.371934] [c5] [drm] use the most suitable mode among modes.

I can confirm that my newly built kernel used the new defconfig. Is there anything else that needs to be done? I'm doing this:
xrandr --newmode 1920x800 119.04 1920 2016 2216 2512 800 801 804 827 -HSync +VSync
xrandr --addmode HDMI-1 1920x800
xrandr --output HDMI-1 --mode 1920x800

And I get the above errors as if I never added the edid. Suggestions?
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Sat May 27, 2017 5:41 pm

You can set the forced hdmi mode using boot.ini.

1. Add the following mode in boot.ini and save boot.ini file.

Code: Select all
# --- Screen Configuration for HDMI --- #
setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x800_57hz.bin"


2. Reboot XU4 board system

Code: Select all
# sudo reboot


The sample boot.ini for 1920x800p57hz is here.
Code: Select all
ODROIDXU-UBOOT-CONFIG

# U-Boot Parameters
setenv initrd_high "0xffffffff"
setenv fdt_high "0xffffffff"

# Mac address configuration
setenv macaddr "00:1e:06:61:7a:39"

#------------------------------------------------------------------------------------------------------
# Basic Ubuntu Setup. Don't touch unless you know what you are doing.
# --------------------------------
setenv bootrootfs "console=tty1 console=ttySAC2,115200n8 root=UUID=e139ce78-9841-40fe-8823-96a304a09859 rootwait ro fsck.repair=yes net.ifnames=0"

# --- Screen Configuration for HDMI --- #
# ---------------------------------------
# Uncomment only ONE line! Leave all commented for automatic selection.
# Uncomment only the setenv line!
# ---------------------------------------
# 1920x800p57hz forced resolution
setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x800_57hz.bin"
# ---------------------------------------
# ODROID-VU forced resolution
# setenv videoconfig "video=HDMI-A-1:1280x800@60"
# -----------------------------------------------
# ODROID-VU forced EDID
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x800.bin"
# -----------------------------------------------
# 1920x1200 60hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1200_60hz.bin"
# -----------------------------------------------
# 1920x1200 30hz without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1200_30hz.bin"
# -----------------------------------------------
# 1920x1080 (1080P) with monitor provided EDID information. (1080p-edid)
# setenv videoconfig "video=HDMI-A-1:1920x1080@60"
# -----------------------------------------------
# 1920x1080 (1080P) without monitor data using generic information (1080p-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"
# -----------------------------------------------
# 1920x1080 50hz (1080P) with monitor provided EDID information. (1080p 50hz-edid)
# setenv videoconfig "video=HDMI-A-1:1920x1080@50"
# -----------------------------------------------
# 1920x1080 50hz (1080P) without monitor data using generic information (1080p 50hz-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080_50hz.bin"
# -----------------------------------------------
# 1680x1050 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1680x1050.bin"
# -----------------------------------------------
# 1600x1200 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1600x1200.bin"
# -----------------------------------------------
# 1600x900 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1600x900.bin"
# -----------------------------------------------
# 1440x900 with monitor provided EDID information.
# setenv videoconfig "video=HDMI-A-1:1440x900@60"
# -----------------------------------------------
# 1440x900 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1440x900.bin"
# -----------------------------------------------
# 1366x768 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1366x768.bin"
# -----------------------------------------------
# 1360x768 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1360x768.bin"
# -----------------------------------------------
# 1280x1024 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x1024.bin"
# -----------------------------------------------
# 1280x720 (720P) with monitor provided EDID information. (720p-edid)
# setenv videoconfig "video=HDMI-A-1:1280x720@60"
# -----------------------------------------------
# 1280x720 (720P) without monitor data using generic information (720p-noedid)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x720.bin"
# -----------------------------------------------
# 1024x768 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x768.bin"
# -----------------------------------------------
# 1024x600 without monitor data using generic information (ODROID VU7+)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x600.bin"
# -----------------------------------------------
# 800x600 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x600.bin"
# -----------------------------------------------
# 800x480 without monitor data using generic information (ODROID 7")
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/800x480.bin"
# -----------------------------------------------
# 720x576 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x576.bin"
# -----------------------------------------------
# 720x480 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/720x480.bin"
# -----------------------------------------------
# 640x480 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/640x480.bin"
# -----------------------------------------------
# 480x800 without monitor data using generic information
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/480x800.bin"


# --- HDMI / DVI Mode Selection ---
# ------------------------------------------
# - HDMI Mode
setenv vout "hdmi"
# - DVI Mode (disables sound over HDMI as per DVI compat)
# setenv vout "dvi"


# --- HDMI CEC Configuration ---
# ------------------------------------------
setenv cecenable "false" # false or true
# set to true to enable HDMI CEC


# --- CPU Governor Setup ---
# Uncomment only one line. New governor is set after 90secs after boot.
# ------------------------------------------
# - Performance (Keep all the CPU's at Maximum frequency)
setenv governor "performance"
# ------------------------------------------
# - Ondemand
# setenv governor "ondemand"
# ------------------------------------------
# - Interactive (Pretty much just like ondemand with more possible customization via sysfs.)
# setenv governor "interactive"
# ------------------------------------------
# - Conservative (Like ondemand, but do the frequency transitions more slowly, great for battery powered applications)
# setenv governor "conservative"
# ------------------------------------------
# - Powersave (Keeps the CPU's to the lowest possible temps)
# setenv governor "powersave"

# Enable/Disable ODROID-VU7 Touchsreen
setenv disable_vu7 "true" # false


#------------------------------------------------------------------------------
#
# HDMI-PHY Parameter Control
#
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
#
# HDMI Hot Plug detection
#
#------------------------------------------------------------------------------
#
# Forces the HDMI subsystem to ignore the check if the cable is connected or
# not.
# false : disable the detection and force it as connected.
# true : let cable, board and monitor decide the connection status.
#
# default: true
#
#------------------------------------------------------------------------------
setenv HPD "true"

#------------------------------------------------------------------------------
#
#  TMDS data amplitude control.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to 20 mVdiff amplitude level.
#  tx_amp_lvl : 0 = 760 mVdiff(Min), 31 = 1380 mVdiff(Max)
#
#  Hardkernel default hdmi_tx_amp_lvl = 31(1380 mVdiff);
#------------------------------------------------------------------------------
setenv hdmi_tx_amp_lvl  "31"

#------------------------------------------------------------------------------
#
#  TMDS data amplitude fine control for each channel.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to 20 mVdiff amplitude level.
#  tx_lvl : 0 = 0 mVdiff(Min), 3 = 60 mVdiff(Max)
#
#  Hardkernel default
#      hdmi_tx_lvl_ch0 = 3, hdmi_tx_lvl_ch1 = 3, hdmi_tx_lvl_ch2 = 3,
#------------------------------------------------------------------------------
setenv hdmi_tx_lvl_ch0      "3"
setenv hdmi_tx_lvl_ch1      "3"
setenv hdmi_tx_lvl_ch2      "3"

#------------------------------------------------------------------------------
#
#  TMDS data pre-emphasis level control.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to -0.45dB emphasis level except for 1
#  tx_emp_lvl : 0 = 0 db(Min), 1 = -0.25 db, 2 = 0.7 db, 15 = -7.45 db(Max)
#
#  Hardkernel default hdmi_tx_emp_lvl = 6 (-2.50 db);
#------------------------------------------------------------------------------
setenv hdmi_tx_emp_lvl      "6"

#------------------------------------------------------------------------------
#
#  TMDS clock amplitude control.
#
#------------------------------------------------------------------------------
#
#  1LSB corresponds to 20 mVdiff amplitude level.
#  clk_amp_lvl : 0 = 790 mVdiff(Min), 31 = 1410 mVdiff(Max)
#
#  Hardkernel default hdmi_clk_amp_lvl = 31 (1410 mVdiff)
#------------------------------------------------------------------------------
setenv hdmi_clk_amp_lvl     "31"

#------------------------------------------------------------------------------
#
#  TMDS data source termination resistor control.
#
#------------------------------------------------------------------------------
#
#  tx_res :
#      0 = Source Termination OFF(Min), 1 = 200 ohm, 2 = 300 ohm, 3 = 120 ohm(Max)
#
#  Hardkernrel default hdmi_tx_res = 0 (Source Termination OFF)
#------------------------------------------------------------------------------
setenv hdmi_tx_res      "0"

#------------------------------------------------------------------------------

setenv hdmi_phy_control "hdmi_tx_amp_lvl=${hdmi_tx_amp_lvl} hdmi_tx_lvl_ch0=${hdmi_tx_lvl_ch0} hdmi_tx_lvl_ch1=${hdmi_tx_lvl_ch1} hdmi_tx_lvl_ch2=${hdmi_tx_lvl_ch2} hdmi_tx_emp_lvl=${hdmi_tx_emp_lvl} hdmi_clk_amp_lvl=${hdmi_clk_amp_lvl} hdmi_tx_res=${hdmi_tx_res} HPD=${HPD} vout=${vout}"


# Load kernel, initrd and dtb in that sequence
fatload mmc 0:1 0x40008000 zImage
fatload mmc 0:1 0x42000000 uInitrd
fatload mmc 0:1 0x44000000 exynos5422-odroidxu3.dtb

# set FDT address
fdt addr 0x44000000

if test "${cecenable}" = "false"; then fdt rm /cec@101B0000; fi
if test "${disable_vu7}" = "false"; then setenv hid_quirks "usbhid.quirks=0x0eef:0x0005:0x0004"; fi

# final boot args
setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr} governor=${governor} ${hdmi_phy_control} ${hud_quirks}"

# Boot the board
bootz 0x40008000 0x42000000 0x44000000

joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Sun May 28, 2017 7:05 am

PERFECT!!!

It was late last night when I was testing, and I was pretty tired. That was the step I forgot (boot.ini). This mode naturally wouldn't be in my monitor's EDID list, so it would be necessary to force it. It looks great on my LG wide-screen monitor. I'm typing to you right now from the MATE desktop in Firefox.

I can't thank you enough for working through this with me. You can be sure I'll recommend XU4's as workstations for all my friends with wide-screen monitors. Hopefully this resolution will make its way into the distribution.

Regards,
Mark
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Thu Jun 01, 2017 2:15 pm

Thank you for your confirmation.

We've asked the hdmi phy setting of the new pixel clock (1920x800p60hz) to samsung
and it may take one or two weeks to get and test it.

After checking them, I will merge this work and include the resolution on the new release.
Once it's done, I will share status and the release version here for you. :)
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Fri Jun 02, 2017 4:44 am

That's excellent news.

Thanks again!
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Thu Jun 15, 2017 10:36 am

Just to share the current status, I'm writing this reply.
It takes one more week to get hdmi phy from samsung and build new resolution modes.
So please wait a bit more. :)
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Thu Jun 15, 2017 10:58 am

Thanks for the update. I can wait, since the interim solution at 57Hz has been working great.

Thanks again.
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Thu Jun 22, 2017 9:25 am

Hi.
The patch with 1920x800@60Hz has been included in the new ubuntu version.
https://github.com/hardkernel/linux/com ... 021be9e276

Please update the ubuntu package.
Code: Select all
# sudo apt-get update && sudo apt-get upgrade

Then check the version.
It should be 4.9.33-44 to support 1920x800p60hz.
Code: Select all
root@odroid:~# uname -a
Linux odroid 4.9.33-44 #1 SMP PREEMPT Wed Jun 21 21:10:48 UTC 2017 armv7l armv7l armv7l GNU/Linux


And also you need to change 'videoconfig' in boot.ini.
Uncomment the line.
Code: Select all
# 1920x800 60hz without monitor data using generic information
setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x800.bin"

And then run sudo reboot to reboot the system.

Enjoy your wide screen monitor with 1920x800p60hz. :D
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Thu Jun 22, 2017 9:28 am

Thanks! I'll test later this evening and report back.
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Thu Jun 22, 2017 12:37 pm

Thanks! Your feedback will be helpful to confirm the resolution with a different monitor.
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby phiber » Thu Jun 22, 2017 4:33 pm

So far it's working well. For whatever reason, the new kernel isn't in the standard odroid repo.
I followed the instructions here:
http://odroid.com/dokuwiki/doku.php?id= ... .10_to_4.9
...just substituting the linux-image filename to be the latest. Otherwise, updating the kernel and setting my resolution in boot.ini went totally smoothly, I didn't have to re-flash:
% uname -a
Linux archimedes 4.9.33-44 #1 SMP PREEMPT Wed Jun 21 21:10:48 UTC 2017 armv7l armv7l armv7l GNU/Linux

Thanks again,
Mark
phiber
 
Posts: 29
Joined: Fri Mar 31, 2017 1:41 am
languages_spoken: english
ODROIDs: XU4, C2

Re: Wide-screen HDMI support on XU4 with Ubuntu 16.04?

Unread postby joy » Mon Jun 26, 2017 12:05 pm

Thank you for your confirmation. :)

After you build and install your local zImage/dtb and modules, you should install a linux-image-${version} by force if you want to update linux-image package.
In my case, I first update and then check the linux-image version.
Code: Select all
root@odroid:~# sudo apt-get update && sudo apt-get upgrade -y

root@odroid:~# sudo apt-get install linux-image

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package linux-image is a virtual package provided by:
  linux-image-4.9.33-44 20170621
  linux-image-4.9.33-42 20170620
  linux-image-4.9.30-41 20170531
  linux-image-4.9.29-40 20170524
  linux-image-4.9.28-38 20170515
  linux-image-4.9.27-35 20170509
  linux-image-4.9.27-34 20170508
  linux-image-4.9.27-33 20170508
.....
.....

Then install the version.
Code: Select all
root@odroid:~# sudo apt-get install linux-image-4.9.33-44
joy
 
Posts: 309
Joined: Fri Oct 02, 2015 1:44 pm
languages_spoken: english
ODROIDs: ODROID-C1+, XU4, X


Return to Ubuntu

Who is online

Users browsing this forum: No registered users and 3 guests