diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/intelfb/intelfb.h | 4 | ||||
-rw-r--r-- | drivers/video/intelfb/intelfbhw.c | 9 | ||||
-rw-r--r-- | drivers/video/intelfb/intelfbhw.h | 13 |
3 files changed, 26 insertions, 0 deletions
diff --git a/drivers/video/intelfb/intelfb.h b/drivers/video/intelfb/intelfb.h index e290d7460e1b..cb016fe4d488 100644 --- a/drivers/video/intelfb/intelfb.h +++ b/drivers/video/intelfb/intelfb.h | |||
@@ -195,6 +195,10 @@ struct intelfb_hwstate { | |||
195 | u32 mem_mode; | 195 | u32 mem_mode; |
196 | u32 fw_blc_0; | 196 | u32 fw_blc_0; |
197 | u32 fw_blc_1; | 197 | u32 fw_blc_1; |
198 | u16 hwstam; | ||
199 | u16 ier; | ||
200 | u16 iir; | ||
201 | u16 imr; | ||
198 | }; | 202 | }; |
199 | 203 | ||
200 | struct intelfb_heap_data { | 204 | struct intelfb_heap_data { |
diff --git a/drivers/video/intelfb/intelfbhw.c b/drivers/video/intelfb/intelfbhw.c index 7533b3dd08ac..05aded669cdb 100644 --- a/drivers/video/intelfb/intelfbhw.c +++ b/drivers/video/intelfb/intelfbhw.c | |||
@@ -587,6 +587,11 @@ intelfbhw_read_hw_state(struct intelfb_info *dinfo, struct intelfb_hwstate *hw, | |||
587 | hw->fw_blc_0 = INREG(FW_BLC_0); | 587 | hw->fw_blc_0 = INREG(FW_BLC_0); |
588 | hw->fw_blc_1 = INREG(FW_BLC_1); | 588 | hw->fw_blc_1 = INREG(FW_BLC_1); |
589 | 589 | ||
590 | hw->hwstam = INREG16(HWSTAM); | ||
591 | hw->ier = INREG16(IER); | ||
592 | hw->iir = INREG16(IIR); | ||
593 | hw->imr = INREG16(IMR); | ||
594 | |||
590 | return 0; | 595 | return 0; |
591 | } | 596 | } |
592 | 597 | ||
@@ -796,6 +801,10 @@ intelfbhw_print_hw_state(struct intelfb_info *dinfo, struct intelfb_hwstate *hw) | |||
796 | printk(" FW_BLC_0 0x%08x\n", hw->fw_blc_0); | 801 | printk(" FW_BLC_0 0x%08x\n", hw->fw_blc_0); |
797 | printk(" FW_BLC_1 0x%08x\n", hw->fw_blc_1); | 802 | printk(" FW_BLC_1 0x%08x\n", hw->fw_blc_1); |
798 | 803 | ||
804 | printk(" HWSTAM 0x%04x\n", hw->hwstam); | ||
805 | printk(" IER 0x%04x\n", hw->ier); | ||
806 | printk(" IIR 0x%04x\n", hw->iir); | ||
807 | printk(" IMR 0x%04x\n", hw->imr); | ||
799 | printk("hw state dump end\n"); | 808 | printk("hw state dump end\n"); |
800 | #endif | 809 | #endif |
801 | } | 810 | } |
diff --git a/drivers/video/intelfb/intelfbhw.h b/drivers/video/intelfb/intelfbhw.h index 258235149913..8d2e36972fc8 100644 --- a/drivers/video/intelfb/intelfbhw.h +++ b/drivers/video/intelfb/intelfbhw.h | |||
@@ -88,6 +88,19 @@ | |||
88 | #define INSTDONE 0x2090 | 88 | #define INSTDONE 0x2090 |
89 | #define PRI_RING_EMPTY 1 | 89 | #define PRI_RING_EMPTY 1 |
90 | 90 | ||
91 | #define HWSTAM 0x2098 | ||
92 | #define IER 0x20A0 | ||
93 | #define IIR 0x20A4 | ||
94 | #define IMR 0x20A8 | ||
95 | #define VSYNC_PIPE_A_INTERRUPT (1 << 7) | ||
96 | #define PIPE_A_EVENT_INTERRUPT (1 << 4) | ||
97 | #define VSYNC_PIPE_B_INTERRUPT (1 << 5) | ||
98 | #define PIPE_B_EVENT_INTERRUPT (1 << 4) | ||
99 | #define HOST_PORT_EVENT_INTERRUPT (1 << 3) | ||
100 | #define CAPTURE_EVENT_INTERRUPT (1 << 2) | ||
101 | #define USER_DEFINED_INTERRUPT (1 << 1) | ||
102 | #define BREAKPOINT_INTERRUPT 1 | ||
103 | |||
91 | #define INSTPM 0x20c0 | 104 | #define INSTPM 0x20c0 |
92 | #define SYNC_FLUSH_ENABLE (1 << 5) | 105 | #define SYNC_FLUSH_ENABLE (1 << 5) |
93 | 106 | ||