iMX6 HDMI output 1366x768 resolution

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

iMX6 HDMI output 1366x768 resolution

跳至解决方案
23,235 次查看
williamtung
Contributor III

I've tried to set different boot parameters but only 1920x1080M@60 and 1280x720M@60 work. Is it possible to force HDMI output 1366x768 resolution?

Under Linux:

root@freescale /sys/devices/platform/mxc_sdc_fb.0/graphics/fb0$ cat modes

S:1920x1080p-60

S:1920x1080p-50

S:1280x720p-60

S:1280x720p-50

S:720x576p-50

S:720x576p-50

S:720x480p-60

S:720x480p-60

S:640x480p-60

V:640x480p-60

D:1920x1080p-60

U:640x480p-60

Android:

root@android:/ # cat /sys/class/graphics/fb0/modes

U:640x480p-59

V:1280x1024p-60

V:1024x768p-60

U:2880x480p-60

U:1920x1080p-24

U:1920x1080p-50

U:1280x720p-50

U:720x576p-50

U:720x576p-50

U:1920x1080p-60

U:1440x240p-60

U:1280x720p-60

U:720x480p-60

U:720x480p-60

U:640x480p-60



标签 (4)
1 解答
6,287 次查看
lily_zhang
NXP Employee
NXP Employee

Hello, William:

I am located into China. If you can send out the device to us for the debug purpose.

You can also ask for local FSL support team to help on it.

在原帖中查看解决方案

0 项奖励
回复
15 回复数
6,287 次查看
hongchao0680
Contributor III

请问如何支持 sdi 的显示器

0 项奖励
回复
6,287 次查看
daiane_angolini
NXP Employee
NXP Employee

Could you, please, share your kernel command line?

0 项奖励
回复
6,287 次查看
williamtung
Contributor III

Hi Daiane,

Here is my kernel command line.

console=ttymxc3,115200 root=/dev/mmcblk0p1 rootwait rw video=mxcfb0:dev=hdmi,1366x768M@60,if=RGB24 nosmp arm_freq=800

I got exact the same /sys/class/graphics/fb0/modes as

console=ttymxc3,115200 root=/dev/mmcblk0p1 rootwait rw video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB24 nosmp arm_freq=800

The HDMI TV has native resolution 1366x768 and 720p output is a little off.

0 项奖励
回复
6,287 次查看
daiane_angolini
NXP Employee
NXP Employee

I don't know exactly how to handle this.

Look at http://en.wikipedia.org/wiki/Extended_display_identification_data You will see a limitation exactly for your resolution.

And, from imx6DQ reference manual, table 33-3 you can find a table with examples of the supported video modes, but it does not have your desired resolution (although the table is not complete)

From the table, I think you could try to find the value needed for your resolution.

Please, let me know what you think

0 项奖励
回复
6,287 次查看
williamtung
Contributor III

Hi Daiane,

I added #15 to mxc_edid.c but didn't get correct output.

Calculated from Modeline "1366x768" 85.500 1360 1440 1552 1792 768 771 777 795 +hsync +vsync

    /* #15: 1366x768p@60Hz 16:9 */
    [15] = {
            NULL, 60, 1360, 768, 11696, 240, 80, 18, 3, 112, 6,
            FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },

It tried to output 680x768@60Hz to my display. Any suggestion?


0 项奖励
回复
6,287 次查看
lily_zhang
NXP Employee
NXP Employee

Please try the following video mode. You can use mode string "VGA-WXGA" to find it.

{

/* VGA 1366x768 85.5M pixel clk output */

"VGA-WXGA", 60, 1366, 768, 11696,

213, 70,

24, 3,

143, 3,

FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,

FB_VMODE_NONINTERLACED,

FB_MODE_IS_DETAILED,},


6,287 次查看
williamtung
Contributor III

Hi Xiaoli,

I tried your settings but didn't get correct output. It only output 678x768@60Hz, 48KHz. It seems only output single channel data (interlaced). Can you confirm this works for your HDMI output? Thanks.

0 项奖励
回复
6,287 次查看
lily_zhang
NXP Employee
NXP Employee

Hello, William:

We don't have 1366x768 HDMI device now. The above HDMI setting was used for another project.

We will check whether we can find one for the test.

0 项奖励
回复
6,287 次查看
williamtung
Contributor III

Hi Xiaoli,

We need to figure out how to resolve this issue before moving to next stage. Is it possible to send you a 1366x768 HDMI device (LCD) to tweak the video mode? Thanks.

0 项奖励
回复
6,288 次查看
lily_zhang
NXP Employee
NXP Employee

Hello, William:

I am located into China. If you can send out the device to us for the debug purpose.

You can also ask for local FSL support team to help on it.

0 项奖励
回复
6,287 次查看
blauer
Contributor II

Hello,

In kernel_imx\drivers\video\mxc_hdmi.c, add a mode at approx. line 111, starting with:

static const struct fb_videomode somename_mode = { ...

ensure that parameter 5 is the pixel to pixel time in ps and add it at around line 1600 and 2300:

fb_add_videomode(&somename_mode, &hdmi->fbi->modelist);

Some other modes are added at this locations too.  This worked for us so far except the launcher layout.

Michael G.

6,287 次查看
williamtung
Contributor III

Hi Michael,

I can forced it out put 1366x768 with your suggestion, but Xiaoli's table didn't work correctly. The best result I could get so far is the table below. I confirmed this monitor can accept 1366x768 resolution from my laptop HDMI output. Just for comparison, I can manually set 1280x800 and 1280x720 resolutions and get correct display on the same monitor. Can you share the videomode information? Thanks.

static const struct fb_videomode wxga_mode = {

  /* 15 1366x768-60 VESA */

  NULL, 60, 1366, 768, 13806, 120, 10, 14, 3, 32, 5, 0,

  FB_VMODE_NONINTERLACED, 0

};

root@freescale ~$ cat /sys/class/graphics/fb0/modes

S:1920x1080p-60

S:1920x1080p-50

S:1280x720p-60

S:1280x720p-50

S:720x576p-50

S:720x576p-50

S:720x480p-60

S:720x480p-60

S:640x480p-60

V:640x480p-60

D:1920x1080p-60

D:1366x768p-60

U:640x480p-60

root@freescale ~$ cat /sys/class/graphics/fb0/mode

D:1366x768p-60

photo.JPG.jpg

root@freescale ~$ cat /sys/class/graphics/fb0/modes

S:1920x1080p-60

S:1920x1080p-50

S:1280x720p-60

S:1280x720p-50

S:720x576p-50

S:720x576p-50

S:720x480p-60

S:720x480p-60

S:640x480p-60

V:640x480p-60

D:1920x1080p-60

U:1280x800p-60

V:1280x1024p-60

U:640x480p-60

root@freescale ~$ cat /sys/class/graphics/fb0/mode

U:1280x800p-60

photo1.JPG.jpg

Hi  Xiaoli,

I think you can replicate this result on a 1920x1080 monitor. Can you give it a try and let me know your test result? Thanks.

0 项奖励
回复
6,287 次查看
pedropl
Contributor I

Hey,

have you been able to set the resolution to 1366x768? I have a similar case and I'm unable to achieve that. I added the mode you created to modelist and updated the kernel command line but as a result i got a framebuffer error at boot (-22). Have any idea how to do it correctly?

Thanks,

Pedro

0 项奖励
回复
6,287 次查看
michaelrobbelot
Contributor IV

Xiaoli,

Have you made any progress on this issue?

Michael

0 项奖励
回复
6,287 次查看
williamtung
Contributor III

I found that I need to update the record of mxc_cea_mode[64] in drivers/video/mxc/mxc_edid.c. Any suggestion which # to insert? Thanks.

const struct fb_videomode mxc_cea_mode[64] = {

        /* #1: 640x480p@59.94/60Hz 4:3 */

        [1] = {

                NULL, 60, 640, 480, 39722, 48, 16, 33, 10, 96, 2, 0,

                FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_4_3, 0,

        },

        /* #2: 720x480p@59.94/60Hz 4:3 */

        [2] = {

                NULL, 60, 720, 480, 37037, 60, 16, 30, 9, 62, 6, 0,

                FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_4_3, 0,

        },

        /* #3: 720x480p@59.94/60Hz 16:9 */

        [3] = {

                NULL, 60, 720, 480, 37037, 60, 16, 30, 9, 62, 6, 0,

                FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,

        },

        /* #4: 1280x720p@59.94/60Hz 16:9 */

        [4] = {

                NULL, 60, 1280, 720, 13468, 220, 110, 20, 5, 40, 5,

                FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,

                FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0

        },

        /* #5: 1920x1080i@59.94/60Hz 16:9 */

        [5] = {

                NULL, 60, 1920, 1080, 13763, 148, 88, 15, 2, 44, 5,

                FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,

                FB_VMODE_INTERLACED | FB_VMODE_ASPECT_16_9, 0,

        },

        /* #6: 720(1440)x480iH@59.94/60Hz 4:3 */

        [6] = {

                NULL, 60, 1440, 480, 18554/*37108*/, 114, 38, 15, 4, 124, 3, 0,

                FB_VMODE_INTERLACED | FB_VMODE_ASPECT_4_3, 0,

        },

        /* #7: 720(1440)x480iH@59.94/60Hz 16:9 */

        [7] = {

                NULL, 60, 1440, 480, 18554/*37108*/, 114, 38, 15, 4, 124, 3, 0,

                FB_VMODE_INTERLACED | FB_VMODE_ASPECT_16_9, 0,

        },

        /* #8: 720(1440)x240pH@59.94/60Hz 4:3 */

        [8] = {

           NULL, 60, 1440, 240, 18554, 114, 38, 16, 4, 124, 3, 0,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #9: 720(1440)x240pH@59.94/60Hz 16:9 */
    [9] = {
            NULL, 60, 1440, 240, 18554, 114, 38, 16, 4, 124, 3, 0,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #16: 1920x1080p@60Hz 16:9 */
    [16] = {
            NULL, 60, 1920, 1080, 6734, 148, 88, 36, 4, 44, 5,
            FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #17: 720x576pH@50Hz 4:3 */
    [17] = {
            NULL, 50, 720, 576, 37037, 68, 12, 39, 5, 64, 5, 0,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_4_3, 0,
    },
    /* #18: 720x576pH@50Hz 16:9 */
    [18] = {
            NULL, 50, 720, 576, 37037, 68, 12, 39, 5, 64, 5, 0,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #19: 1280x720p@50Hz */
    [19] = {
            NULL, 50, 1280, 720, 13468, 220, 440, 20, 5, 40, 5,
            FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #20: 1920x1080i@50Hz */
    [20] = {
            NULL, 50, 1920, 1080, 13480, 148, 528, 15, 5, 528, 5,
            FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
            FB_VMODE_INTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #31: 1920x1080p@50Hz */
    [31] = {
            NULL, 50, 1920, 1080, 6734, 148, 528, 36, 4, 44, 5,
           FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #32: 1920x1080p@23.98/24Hz */
    [32] = {
            NULL, 24, 1920, 1080, 13468, 148, 638, 36, 4, 44, 5,
            FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_16_9, 0,
    },
    /* #35: (2880)x480p4x@59.94/60Hz */
    [35] = {
            NULL, 60, 2880, 480, 9250, 240, 64, 30, 9, 248, 6, 0,
            FB_VMODE_NONINTERLACED | FB_VMODE_ASPECT_4_3, 0,
    },

};


0 项奖励
回复