lxfb: set the H- and V-SYNC polarity of the flatpanel output
Fixup for the flatpanel output. The geode_modedb attribute flags are used to set the SYNC polarity of the flatpanel. Without this patch our flatpanel registers stayed unconfigured, so we just saw garbage output. Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de> Cc: Andres Salomon <dilinger@collabora.co.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
4fd2c20d96
commit
b5c26f97ec
2 changed files with 11 additions and 1 deletions
|
@ -365,6 +365,8 @@ enum fp_registers {
|
|||
FP_CRC, /* 0x458 */
|
||||
};
|
||||
|
||||
#define FP_PT2_HSP (1 << 22)
|
||||
#define FP_PT2_VSP (1 << 23)
|
||||
#define FP_PT2_SCRC (1 << 27) /* shfclk free */
|
||||
|
||||
#define FP_PM_P (1 << 24) /* panel power ctl */
|
||||
|
|
|
@ -274,7 +274,15 @@ static void lx_graphics_enable(struct fb_info *info)
|
|||
u32 msrlo, msrhi;
|
||||
|
||||
write_fp(par, FP_PT1, 0);
|
||||
write_fp(par, FP_PT2, FP_PT2_SCRC);
|
||||
temp = FP_PT2_SCRC;
|
||||
|
||||
if (info->var.sync & FB_SYNC_HOR_HIGH_ACT)
|
||||
temp |= FP_PT2_HSP;
|
||||
|
||||
if (info->var.sync & FB_SYNC_VERT_HIGH_ACT)
|
||||
temp |= FP_PT2_VSP;
|
||||
|
||||
write_fp(par, FP_PT2, temp);
|
||||
write_fp(par, FP_DFC, FP_DFC_BC);
|
||||
|
||||
msrlo = MSR_LX_MSR_PADSEL_TFT_SEL_LOW;
|
||||
|
|
Reference in a new issue