On 10/24/2013 07:00 PM, Andre Heider wrote: > Depending on the firmware's video options [1] the active SDTV or > HDTV mode can yield a framebuffer with noncontiguous horizontal lines, > giving a messed up display, for both, u-boot and the loaded kernel. > > Fix this by setting lcd_line_length to the pitch value of the configured > framebuffer.
This sounds like the right concept. > diff --git a/drivers/video/bcm2835.c b/drivers/video/bcm2835.c > void lcd_enable(void) > { > + if (bcm2835_pitch) Why make this conditional? Does the firmware sometimes not return the correct pitch and/or does lcd_enable() get called before lcd_ctrl_init() so the global hasn't been set up? Either of those seem like nasty bugs that should be fixed... > + lcd_line_length = bcm2835_pitch; Why set lcd_line_length at a different time than the mailbox message is executed? Can't lcd_line_length be set at the end of lcd_ctrl_init(), thus avoiding the global variable bcm2835_pitch? > } _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot