diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/Kconfig | 11 | ||||
-rw-r--r-- | drivers/video/via/hw.c | 7 |
2 files changed, 18 insertions, 0 deletions
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig index 6bafb51bb437..4923b5ec0201 100644 --- a/drivers/video/Kconfig +++ b/drivers/video/Kconfig | |||
@@ -1607,6 +1607,17 @@ config FB_VIA_DIRECT_PROCFS | |||
1607 | correct output device configuration. | 1607 | correct output device configuration. |
1608 | Its use is strongly discouraged. | 1608 | Its use is strongly discouraged. |
1609 | 1609 | ||
1610 | config FB_VIA_X_COMPATIBILITY | ||
1611 | bool "X server compatibility" | ||
1612 | depends on FB_VIA | ||
1613 | default n | ||
1614 | help | ||
1615 | This option reduces the functionality (power saving, ...) of the | ||
1616 | framebuffer to avoid negative impact on the OpenChrome X server. | ||
1617 | If you use any X server other than fbdev you should enable this | ||
1618 | otherwise it should be safe to disable it and allow using all | ||
1619 | features. | ||
1620 | |||
1610 | endif | 1621 | endif |
1611 | 1622 | ||
1612 | config FB_NEOMAGIC | 1623 | config FB_NEOMAGIC |
diff --git a/drivers/video/via/hw.c b/drivers/video/via/hw.c index e5311474219f..104f3e16010f 100644 --- a/drivers/video/via/hw.c +++ b/drivers/video/via/hw.c | |||
@@ -2293,6 +2293,12 @@ int viafb_setmode(struct VideoModeTable *vmode_tbl, int video_bpp, | |||
2293 | clock.set_primary_clock_source(VIA_CLKSRC_X1, true); | 2293 | clock.set_primary_clock_source(VIA_CLKSRC_X1, true); |
2294 | clock.set_secondary_clock_source(VIA_CLKSRC_X1, true); | 2294 | clock.set_secondary_clock_source(VIA_CLKSRC_X1, true); |
2295 | 2295 | ||
2296 | #ifdef CONFIG_FB_VIA_X_COMPATIBILITY | ||
2297 | clock.set_primary_pll_state(VIA_STATE_ON); | ||
2298 | clock.set_primary_clock_state(VIA_STATE_ON); | ||
2299 | clock.set_secondary_pll_state(VIA_STATE_ON); | ||
2300 | clock.set_secondary_clock_state(VIA_STATE_ON); | ||
2301 | #else | ||
2296 | if (viaparinfo->shared->iga1_devices) { | 2302 | if (viaparinfo->shared->iga1_devices) { |
2297 | clock.set_primary_pll_state(VIA_STATE_ON); | 2303 | clock.set_primary_pll_state(VIA_STATE_ON); |
2298 | clock.set_primary_clock_state(VIA_STATE_ON); | 2304 | clock.set_primary_clock_state(VIA_STATE_ON); |
@@ -2308,6 +2314,7 @@ int viafb_setmode(struct VideoModeTable *vmode_tbl, int video_bpp, | |||
2308 | clock.set_secondary_pll_state(VIA_STATE_OFF); | 2314 | clock.set_secondary_pll_state(VIA_STATE_OFF); |
2309 | clock.set_secondary_clock_state(VIA_STATE_OFF); | 2315 | clock.set_secondary_clock_state(VIA_STATE_OFF); |
2310 | } | 2316 | } |
2317 | #endif /*CONFIG_FB_VIA_X_COMPATIBILITY*/ | ||
2311 | 2318 | ||
2312 | via_set_state(devices, VIA_STATE_ON); | 2319 | via_set_state(devices, VIA_STATE_ON); |
2313 | device_screen_on(); | 2320 | device_screen_on(); |