summaryrefslogtreecommitdiffstats
path: root/drivers/video/via/hw.h
diff options
context:
space:
mode:
authorFlorian Tobias Schandinat2010-09-07 16:28:26 +0200
committerFlorian Tobias Schandinat2010-09-24 04:15:03 +0200
commit6f9422d4e407bd63a9bd665ea09e57c1e3800c47 (patch)
treea8db0fe983bf177ed2653249aa55c9c846a0ce25 /drivers/video/via/hw.h
parentviafb: limit LCD code impact (diff)
downloadkernel-qcow2-linux-6f9422d4e407bd63a9bd665ea09e57c1e3800c47.tar.gz
kernel-qcow2-linux-6f9422d4e407bd63a9bd665ea09e57c1e3800c47.tar.xz
kernel-qcow2-linux-6f9422d4e407bd63a9bd665ea09e57c1e3800c47.zip
viafb: introduce per output device power management
This patch moves common parts of dvi.c, lcd.c and vt1636.c to hw.c to start a per output device power management. There should be no runtime changes aside that this patch enables the proc interface to enable/disable devices when needed which greatly increases the chances that changes to the output device configuration will work. However the power management is not yet complete so it might fail on some configurations. As this area is quite complex and touches undocumented things there is a slight chance of regressions. Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Cc: Joseph Chan <JosephChan@via.com.tw>
Diffstat (limited to 'drivers/video/via/hw.h')
-rw-r--r--drivers/video/via/hw.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/video/via/hw.h b/drivers/video/via/hw.h
index 657dbd64a089..b067cbb45ebf 100644
--- a/drivers/video/via/hw.h
+++ b/drivers/video/via/hw.h
@@ -41,6 +41,12 @@
#define VIA_LVDS1 0x00000040
#define VIA_LVDS2 0x00000080
+/* VIA output device power states */
+#define VIA_STATE_ON 0
+#define VIA_STATE_STANDBY 1
+#define VIA_STATE_SUSPEND 2
+#define VIA_STATE_OFF 3
+
/***************************************************
* Definition IGA1 Design Method of CRTC Registers *
****************************************************/
@@ -904,9 +910,8 @@ void viafb_set_vclock(u32 CLK, int set_iga);
void viafb_load_reg(int timing_value, int viafb_load_reg_num,
struct io_register *reg,
int io_type);
-void viafb_crt_disable(void);
-void viafb_crt_enable(void);
void via_set_source(u32 devices, u8 iga);
+void via_set_state(u32 devices, u8 state);
u32 via_parse_odev(char *input, char **end);
void via_odev_to_seq(struct seq_file *m, u32 odev);
void init_ad9389(void);