Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3cadf945 authored by Anatolij Gustschin's avatar Anatolij Gustschin
Browse files

video: mb862xxfb: use pre-initialized configuration for PCI GDCs



If the bootloader has already initialized the display
controller, do not re-initialize it in the driver. Take over
the bootloader's configuration instead. This is already supported
for non PCI GDCs Lime and Mint. Add this functionality for PCI
GDCs Coral-P and Coral-PA. It is useful to avoid flicker and
also avoids unneeded init delays while booting.

Signed-off-by: default avatarAnatolij Gustschin <agust@denx.de>
parent dcdf2f7e
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -746,13 +746,21 @@ static int coralp_init(struct mb862xxfb_par *par)
	cn = (ver & GC_CID_CNAME_MSK) >> 8;
	ver = ver & GC_CID_VERSION_MSK;
	if (cn == 3) {
		unsigned long reg;

		dev_info(par->dev, "Fujitsu Coral-%s GDC Rev.%d found\n",\
			 (ver == 6) ? "P" : (ver == 8) ? "PA" : "?",
			 par->pdev->revision);
		reg = inreg(disp, GC_DCM1);
		if (reg & GC_DCM01_DEN && reg & GC_DCM01_L0E)
			par->pre_init = 1;

		if (!par->pre_init) {
			outreg(host, GC_CCF, GC_CCF_CGE_166 | GC_CCF_COT_133);
			udelay(200);
			outreg(host, GC_MMR, GC_MMR_CORALP_EVB_VAL);
			udelay(10);
		}
		/* Clear interrupt status */
		outreg(host, GC_IST, 0);
	} else {