aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/via/hw.c
diff options
context:
space:
mode:
authorFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2011-03-24 10:25:51 -0400
committerFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2011-03-24 17:17:52 -0400
commitb692a63af8b63a7a7e84702a713d0072e336b326 (patch)
treeca4edaf57a416a33c8129f682880b10850e32d32 /drivers/video/via/hw.c
parent2c536f84c19c73ab1e3411bf1596ff85c4a23783 (diff)
viafb: add VIA slapping capability
This patch introduces dummy functions to execute when we don't know what we should do (due to missing documentation). They do nothing but print a nice message in the log explaining the situation. To trigger this message initial power management support is activated which might save a bit energy by disabling PLL and clock if no device is configured to use them. Note: The message is only shown for the oldest IGPs CLE266 and K400 as for the other platforms there are reasonable assumptions how it does (hopefully) work. Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Diffstat (limited to 'drivers/video/via/hw.c')
-rw-r--r--drivers/video/via/hw.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/video/via/hw.c b/drivers/video/via/hw.c
index f1eff0b4831f..df84251b8f93 100644
--- a/drivers/video/via/hw.c
+++ b/drivers/video/via/hw.c
@@ -2289,6 +2289,25 @@ int viafb_setmode(struct VideoModeTable *vmode_tbl, int video_bpp,
2289 get_sync(viafbinfo1)); 2289 get_sync(viafbinfo1));
2290 } 2290 }
2291 2291
2292 clock.set_primary_clock_source(VIA_CLKSRC_X1, true);
2293 clock.set_secondary_clock_source(VIA_CLKSRC_X1, true);
2294
2295 if (viaparinfo->shared->iga1_devices) {
2296 clock.set_primary_pll_state(VIA_STATE_ON);
2297 clock.set_primary_clock_state(VIA_STATE_ON);
2298 } else {
2299 clock.set_primary_pll_state(VIA_STATE_OFF);
2300 clock.set_primary_clock_state(VIA_STATE_OFF);
2301 }
2302
2303 if (viaparinfo->shared->iga2_devices) {
2304 clock.set_secondary_pll_state(VIA_STATE_ON);
2305 clock.set_secondary_clock_state(VIA_STATE_ON);
2306 } else {
2307 clock.set_secondary_pll_state(VIA_STATE_OFF);
2308 clock.set_secondary_clock_state(VIA_STATE_OFF);
2309 }
2310
2292 via_set_state(devices, VIA_STATE_ON); 2311 via_set_state(devices, VIA_STATE_ON);
2293 device_screen_on(); 2312 device_screen_on();
2294 return 1; 2313 return 1;