[PATCH] gxfb: Turn on the flatpanel power and data
Jordan Crouse
jordan.crouse at amd.unroutablecom
Sun Dec 24 04:29:35 EST 2006
Commit: 58219896df521ddd749bee48a8465db69b6163f3
Parent: 53d53bd4ab3fd1498f728fa96635ab95d1ec8ba0
commit 58219896df521ddd749bee48a8465db69b6163f3
Author: Jordan Crouse <jordan.crouse at amd.com>
AuthorDate: Fri Dec 8 02:40:56 2006 -0800
Commit: Linus Torvalds <torvalds at woody.osdl.org>
CommitDate: Fri Dec 8 08:29:08 2006 -0800
[PATCH] gxfb: Turn on the flatpanel power and data
For Geode devices without a flatpanel aware BIOS, this enables the flatpanel
power and data.
Signed-off-by: Jordan Crouse <jordan.crouse at amd.com>
Cc: "Antonino A. Daplas" <adaplas at pol.net>
Acked-by: James Simmons <jsimmons at infradead.org>
Signed-off-by: Andrew Morton <akpm at osdl.org>
Signed-off-by: Linus Torvalds <torvalds at osdl.org>
---
drivers/video/geode/video_gx.c | 13 +++++++++++--
drivers/video/geode/video_gx.h | 2 ++
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/video/geode/video_gx.c b/drivers/video/geode/video_gx.c
index bee0741..7f3f18d 100644
--- a/drivers/video/geode/video_gx.c
+++ b/drivers/video/geode/video_gx.c
@@ -220,7 +220,13 @@ gx_configure_tft(struct fb_info *info)
/* Set the dither control */
writel(0x70, par->vid_regs + GX_FP_DFC);
- /* Turn on the device */
+ /* Enable the FP data and power (in case the BIOS didn't) */
+
+ fp = readl(par->vid_regs + GX_DCFG);
+ fp |= GX_DCFG_FP_PWR_EN | GX_DCFG_FP_DATA_EN;
+ writel(fp, par->vid_regs + GX_DCFG);
+
+ /* Unblank the panel */
fp = readl(par->vid_regs + GX_FP_PM);
fp |= GX_FP_PM_P;
@@ -245,9 +251,12 @@ static void gx_configure_display(struct
writel(misc, par->vid_regs + GX_MISC);
/* Write the display configuration */
-
dcfg = readl(par->vid_regs + GX_DCFG);
+ /* Disable hsync and vsync */
+ dcfg &= ~(GX_DCFG_VSYNC_EN | GX_DCFG_HSYNC_EN);
+ writel(dcfg, par->vid_regs + GX_DCFG);
+
/* Clear bits from existing mode. */
dcfg &= ~(GX_DCFG_CRT_SYNC_SKW_MASK
| GX_DCFG_CRT_HSYNC_POL | GX_DCFG_CRT_VSYNC_POL
diff --git a/drivers/video/geode/video_gx.h b/drivers/video/geode/video_gx.h
index 119d0ab..ce28d8f 100644
--- a/drivers/video/geode/video_gx.h
+++ b/drivers/video/geode/video_gx.h
@@ -25,6 +25,8 @@ # define GX_DCFG_CRT_EN 0x00000001
# define GX_DCFG_HSYNC_EN 0x00000002
# define GX_DCFG_VSYNC_EN 0x00000004
# define GX_DCFG_DAC_BL_EN 0x00000008
+# define GX_DCFG_FP_PWR_EN 0x00000040
+# define GX_DCFG_FP_DATA_EN 0x00000080
# define GX_DCFG_CRT_HSYNC_POL 0x00000100
# define GX_DCFG_CRT_VSYNC_POL 0x00000200
# define GX_DCFG_CRT_SYNC_SKW_MASK 0x0001C000
More information about the Commits-kernel
mailing list