aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/via/hw.h
diff options
context:
space:
mode:
authorFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2010-09-07 10:28:26 -0400
committerFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>2010-09-23 22:15:03 -0400
commit6f9422d4e407bd63a9bd665ea09e57c1e3800c47 (patch)
treea8db0fe983bf177ed2653249aa55c9c846a0ce25 /drivers/video/via/hw.h
parentc2a07c932dad49b3b80b11132183b8b2ec8ea1aa (diff)
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 @@
41#define VIA_LVDS1 0x00000040 41#define VIA_LVDS1 0x00000040
42#define VIA_LVDS2 0x00000080 42#define VIA_LVDS2 0x00000080
43 43
44/* VIA output device power states */
45#define VIA_STATE_ON 0
46#define VIA_STATE_STANDBY 1
47#define VIA_STATE_SUSPEND 2
48#define VIA_STATE_OFF 3
49
44/*************************************************** 50/***************************************************
45* Definition IGA1 Design Method of CRTC Registers * 51* Definition IGA1 Design Method of CRTC Registers *
46****************************************************/ 52****************************************************/
@@ -904,9 +910,8 @@ void viafb_set_vclock(u32 CLK, int set_iga);
904void viafb_load_reg(int timing_value, int viafb_load_reg_num, 910void viafb_load_reg(int timing_value, int viafb_load_reg_num,
905 struct io_register *reg, 911 struct io_register *reg,
906 int io_type); 912 int io_type);
907void viafb_crt_disable(void);
908void viafb_crt_enable(void);
909void via_set_source(u32 devices, u8 iga); 913void via_set_source(u32 devices, u8 iga);
914void via_set_state(u32 devices, u8 state);
910u32 via_parse_odev(char *input, char **end); 915u32 via_parse_odev(char *input, char **end);
911void via_odev_to_seq(struct seq_file *m, u32 odev); 916void via_odev_to_seq(struct seq_file *m, u32 odev);
912void init_ad9389(void); 917void init_ad9389(void);