video: tegra: add option to autodetect bitdepth from bootloader

Change-Id: I5f17ab96323b3d313473622f572006d01b4716f7
Signed-off-by: Erik Gilling <konkers@android.com>
This commit is contained in:
Erik Gilling
2010-11-11 17:39:04 -08:00
parent 8cb73bc101
commit 7a58a0e87e
2 changed files with 12 additions and 1 deletions

View File

@@ -142,7 +142,7 @@ struct tegra_fb_data {
int xres;
int yres;
int bits_per_pixel;
int bits_per_pixel; /* -1 means autodetect */
unsigned long flags;
};

View File

@@ -1046,6 +1046,17 @@ static int tegra_dc_probe(struct nvhost_device *ndev)
dev_info(&ndev->dev, "probed\n");
if (dc->pdata->fb) {
if (dc->pdata->fb->bits_per_pixel == -1) {
unsigned long fmt;
tegra_dc_writel(dc,
WINDOW_A_SELECT << dc->pdata->fb->win,
DC_CMD_DISPLAY_WINDOW_HEADER);
fmt = tegra_dc_readl(dc, DC_WIN_COLOR_DEPTH);
dc->pdata->fb->bits_per_pixel =
tegra_dc_fmt_bpp(fmt);
}
dc->fb = tegra_fb_register(ndev, dc, dc->pdata->fb, fb_mem);
if (IS_ERR_OR_NULL(dc->fb))
dc->fb = NULL;