summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
0db69c2)
Even when the LCD is disabled, the LCD framework will still clear the
video memory. This can take a cosiderable amount of time for the
maximum resolution of 16MiB that the i.MX6 supports.
Setting vl_row and vl_col to 0 results in a zero sized framebuffer
to avoid this unnecessary delay.
if (!lcd_enabled) {
debug("LCD disabled\n");
if (!lcd_enabled) {
debug("LCD disabled\n");
debug("Disabling LCD\n");
lcd_enabled = 0;
setenv("splashimage", NULL);
debug("Disabling LCD\n");
lcd_enabled = 0;
setenv("splashimage", NULL);
if (video_mode == NULL) {
debug("Disabling LCD\n");
lcd_enabled = 0;
if (video_mode == NULL) {
debug("Disabling LCD\n");
lcd_enabled = 0;
return;
}
vm = video_mode;
return;
}
vm = video_mode;
fb_mode.xres, fb_mode.yres,
panel_info.vl_col, panel_info.vl_row);
lcd_enabled = 0;
fb_mode.xres, fb_mode.yres,
panel_info.vl_col, panel_info.vl_row);
lcd_enabled = 0;
printf(" %s", p->name);
}
printf("\n");
printf(" %s", p->name);
}
printf("\n");
return;
}
if (p->xres > panel_info.vl_col || p->yres > panel_info.vl_row) {
printf("video resolution: %dx%d exceeds hardware limits: %dx%d\n",
p->xres, p->yres, panel_info.vl_col, panel_info.vl_row);
lcd_enabled = 0;
return;
}
if (p->xres > panel_info.vl_col || p->yres > panel_info.vl_row) {
printf("video resolution: %dx%d exceeds hardware limits: %dx%d\n",
p->xres, p->yres, panel_info.vl_col, panel_info.vl_row);
lcd_enabled = 0;
return;
}
panel_info.vl_col = p->xres;
return;
}
panel_info.vl_col = p->xres;
lcd_enabled = 0;
printf("Invalid %s bus width: %d\n", is_lvds() ? "LVDS" : "LCD",
lcd_bus_width);
lcd_enabled = 0;
printf("Invalid %s bus width: %d\n", is_lvds() ? "LVDS" : "LCD",
lcd_bus_width);
return;
}
if (is_lvds()) {
return;
}
if (is_lvds()) {
if (lvds_chan_mask == 0) {
printf("No LVDS channel active\n");
lcd_enabled = 0;
if (lvds_chan_mask == 0) {
printf("No LVDS channel active\n");
lcd_enabled = 0;
} else {
debug("Skipping initialization of LCD controller\n");
}
} else {
debug("Skipping initialization of LCD controller\n");
}
+ return;
+
+disable:
+ lcd_enabled = 0;
+ panel_info.vl_col = 0;
+ panel_info.vl_row = 0;
+
}
#else
#define lcd_enabled 0
}
#else
#define lcd_enabled 0