uboot启动时默认选择LCD屏幕显示

    关于uboot启动屏幕显示问题困扰了我很久,想必大家也有类似这样的问题,我思考良久,终于搞明白这个问题,现在分享给大家:

修改/uboot/board/freescale/mx6sabresd/mx6sabresd.c文件,如下所示:

修改如下部分:

struct display_info_t const displays[] = {{

.bus = -1,

.addr = 0,

.pixfmt = IPU_PIX_FMT_RGB24,

.detect = NULL,

.enable = enable_lvds,

.mode = {

.name           = "Hannstar-XGA",

.refresh        = 60,

.xres           = 1920,

.yres           = 1080,

.pixclock       = 6734,

.left_margin    = 90,

.right_margin   = 50,

.upper_margin   = 30,

.lower_margin   = 6,

.hsync_len      = 24,

.vsync_len      = 3,

.sync           = FB_SYNC_EXT,

.vmode          = FB_VMODE_NONINTERLACED

} }, {

.bus = -1,

.addr = 0,

.pixfmt = IPU_PIX_FMT_RGB24,

.detect = NULL,

.enable = do_enable_hdmi,

.mode = {

.name           = "HDMI",

.refresh        = 60,

.xres           = 640,

.yres           = 480,

.pixclock       = 39721,

.left_margin    = 48,

.right_margin   = 16,

.upper_margin   = 33,

.lower_margin   = 10,

.hsync_len      = 96,

.vsync_len      = 2,

.sync           = 0,

.vmode          = FB_VMODE_NONINTERLACED

} }, {

.bus = 0,

.addr = 0,

.pixfmt = IPU_PIX_FMT_RGB24,

.detect = NULL,

.enable = enable_rgb,

.mode = {

.name           = "SEIKO-WVGA",

.refresh        = 60,

.xres           = 800,

.yres           = 480,

.pixclock       = 29850,

.left_margin    = 89,

.right_margin   = 164,

.upper_margin   = 23,

.lower_margin   = 10,

.hsync_len      = 10,

.vsync_len      = 10,

.sync           = 0,

.vmode          = FB_VMODE_NONINTERLACED

} } };

size_t display_count = ARRAY_SIZE(displays);

修改完成后如下图所示:

struct display_info_t const displays[] = {{

.bus = 0,

.addr = 0,

.pixfmt = IPU_PIX_FMT_RGB24,

.detect = NULL,

.enable = enable_rgb,

.mode = {

.name           = "CLAA-WVGA",

.refresh        = 57,

.xres           = 800,

.yres           = 480,

.pixclock       = 37037,

.left_margin    = 40,

.right_margin   = 60,

.upper_margin   = 10,

.lower_margin   = 10,

.hsync_len      = 20,

.vsync_len      = 10,

.sync           = 0,

.vmode          = FB_VMODE_NONINTERLACED

} },{

.bus = -1,

.addr = 0,

.pixfmt = IPU_PIX_FMT_RGB666,

.detect = NULL,

.enable = enable_lvds,

.mode = {

.name           = "Hannstar-XGA",

.refresh        = 60,

.xres           = 1024,

.yres           = 768,

.pixclock       = 15385,

.left_margin    = 220,

.right_margin   = 40,

.upper_margin   = 21,

.lower_margin   = 7,

.hsync_len      = 60,

.vsync_len      = 10,

.sync           = FB_SYNC_EXT,

.vmode          = FB_VMODE_NONINTERLACED

} }, {

.bus = -1,

.addr = 0,

.pixfmt = IPU_PIX_FMT_RGB24,

.detect = NULL,

.enable = do_enable_hdmi,

.mode = {

.name           = "HDMI",

.refresh        = 60,

.xres           = 640,

.yres           = 480,

.pixclock       = 39721,

.left_margin    = 48,

.right_margin   = 16,

.upper_margin   = 33,

.lower_margin   = 10,

.hsync_len      = 96,

.vsync_len      = 2,

.sync           = 0,

.vmode          = FB_VMODE_NONINTERLACED

} } };

size_t display_count = ARRAY_SIZE(displays);

希望能够帮助到你,喜欢的话多多关注吧!

11-02 11:39