diff options
author | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2011-04-24 09:16:41 -0400 |
---|---|---|
committer | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2011-04-24 09:16:41 -0400 |
commit | 567b99f84ea8efe979e020bd382dd735746b526b (patch) | |
tree | 6b22672f07fe004f71137abad8308c8e0673a638 | |
parent | b4ce6a285b65be4fb858728b3bbe9011242b769f (diff) | |
parent | c5a4e6d725654045e548b1a1f33059a44a06910f (diff) |
Merge branch 'viafb-olpc' into viafb-next
-rw-r--r-- | drivers/video/via/hw.c | 7 | ||||
-rw-r--r-- | drivers/video/via/share.h | 1 | ||||
-rw-r--r-- | drivers/video/via/viamode.c | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/drivers/video/via/hw.c b/drivers/video/via/hw.c index 980e263f1875..56ad185b7b22 100644 --- a/drivers/video/via/hw.c +++ b/drivers/video/via/hw.c | |||
@@ -20,6 +20,7 @@ | |||
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include <linux/via-core.h> | 22 | #include <linux/via-core.h> |
23 | #include <asm/olpc.h> | ||
23 | #include "global.h" | 24 | #include "global.h" |
24 | 25 | ||
25 | static struct pll_config cle266_pll_config[] = { | 26 | static struct pll_config cle266_pll_config[] = { |
@@ -875,6 +876,10 @@ void viafb_set_iga_path(void) | |||
875 | viaparinfo->chip_info-> | 876 | viaparinfo->chip_info-> |
876 | lvds_chip_info2.output_interface); | 877 | lvds_chip_info2.output_interface); |
877 | } | 878 | } |
879 | |||
880 | /* looks like the OLPC has its display wired to DVP1 and LVDS2 */ | ||
881 | if (machine_is_olpc()) | ||
882 | viaparinfo->shared->iga2_devices = VIA_DVP1 | VIA_LVDS2; | ||
878 | } | 883 | } |
879 | 884 | ||
880 | static void set_color_register(u8 index, u8 red, u8 green, u8 blue) | 885 | static void set_color_register(u8 index, u8 red, u8 green, u8 blue) |
@@ -2600,7 +2605,7 @@ int viafb_get_refresh(int hres, int vres, u32 long_refresh) | |||
2600 | 2605 | ||
2601 | if (abs(best->refresh_rate - long_refresh) > 3) { | 2606 | if (abs(best->refresh_rate - long_refresh) > 3) { |
2602 | if (hres == 1200 && vres == 900) | 2607 | if (hres == 1200 && vres == 900) |
2603 | return 50; /* OLPC DCON only supports 50 Hz */ | 2608 | return 49; /* OLPC DCON only supports 50 Hz */ |
2604 | else | 2609 | else |
2605 | return 60; | 2610 | return 60; |
2606 | } | 2611 | } |
diff --git a/drivers/video/via/share.h b/drivers/video/via/share.h index 4b7831f0d012..62bed2b12d6e 100644 --- a/drivers/video/via/share.h +++ b/drivers/video/via/share.h | |||
@@ -290,6 +290,7 @@ | |||
290 | #define HW_LAYOUT_LCD_EXTERNAL_LCD2 0x10 | 290 | #define HW_LAYOUT_LCD_EXTERNAL_LCD2 0x10 |
291 | 291 | ||
292 | /* Definition Refresh Rate */ | 292 | /* Definition Refresh Rate */ |
293 | #define REFRESH_49 49 | ||
293 | #define REFRESH_50 50 | 294 | #define REFRESH_50 50 |
294 | #define REFRESH_60 60 | 295 | #define REFRESH_60 60 |
295 | #define REFRESH_75 75 | 296 | #define REFRESH_75 75 |
diff --git a/drivers/video/via/viamode.c b/drivers/video/via/viamode.c index 260d339b236c..ccb5eec63248 100644 --- a/drivers/video/via/viamode.c +++ b/drivers/video/via/viamode.c | |||
@@ -606,7 +606,7 @@ static struct crt_mode_table CRTM1200x720[] = { | |||
606 | /* 1200x900 (DCON) */ | 606 | /* 1200x900 (DCON) */ |
607 | static struct crt_mode_table DCON1200x900[] = { | 607 | static struct crt_mode_table DCON1200x900[] = { |
608 | /* r_rate, hsp, vsp */ | 608 | /* r_rate, hsp, vsp */ |
609 | {REFRESH_50, M1200X900_R60_HSP, M1200X900_R60_VSP, | 609 | {REFRESH_49, M1200X900_R60_HSP, M1200X900_R60_VSP, |
610 | /* The correct htotal is 1240, but this doesn't raster on VX855. */ | 610 | /* The correct htotal is 1240, but this doesn't raster on VX855. */ |
611 | /* Via suggested changing to a multiple of 16, hence 1264. */ | 611 | /* Via suggested changing to a multiple of 16, hence 1264. */ |
612 | /* HT, HA, HBS, HBE, HSS, HSE, VT, VA, VBS, VBE, VSS, VSE */ | 612 | /* HT, HA, HBS, HBE, HSS, HSE, VT, VA, VBS, VBE, VSS, VSE */ |