diff options
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-panel.c')
-rw-r--r-- | arch/arm/mach-tegra/board-cardhu-panel.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-panel.c b/arch/arm/mach-tegra/board-cardhu-panel.c index d7101af55712..bbd6d4aaac37 100644 --- a/arch/arm/mach-tegra/board-cardhu-panel.c +++ b/arch/arm/mach-tegra/board-cardhu-panel.c @@ -1444,9 +1444,16 @@ skip_lvds: res->start = tegra_fb2_start; res->end = tegra_fb2_start + tegra_fb2_size - 1; - /* Copy the bootloader fb to the fb2. */ - tegra_move_framebuffer(tegra_fb2_start, tegra_bootloader_fb_start, - min(tegra_fb2_size, tegra_bootloader_fb_size)); + /* + * If the bootloader fb2 is valid, copy it to the fb2, or else + * clear fb2 to avoid garbage on dispaly2. + */ + if (tegra_bootloader_fb2_size) + tegra_move_framebuffer(tegra_fb2_start, + tegra_bootloader_fb2_start, + min(tegra_fb2_size, tegra_bootloader_fb2_size)); + else + tegra_clear_framebuffer(tegra_fb2_start, tegra_fb2_size); if (!err) err = nvhost_device_register(&cardhu_disp2_device); |