summary refs log tree commit diff stats
path: root/hw/display/ati_regs.h
diff options
context:
space:
mode:
authorBALATON Zoltan <balaton@eik.bme.hu>2019-08-16 00:18:09 +0200
committerGerd Hoffmann <kraxel@redhat.com>2019-08-22 10:04:20 +0200
commitb7105d280cab053465de79ff1766d2f7e1ea7554 (patch)
tree43d9a7f15db59a02aabc2f28f0b50107fc822c5d /hw/display/ati_regs.h
parent8bb9a2b26d83a0989367e3688badb2914283827d (diff)
downloadfocaccia-qemu-b7105d280cab053465de79ff1766d2f7e1ea7554.tar.gz
focaccia-qemu-b7105d280cab053465de79ff1766d2f7e1ea7554.zip
ati-vga: Implement dummy VBlank IRQ
The MacOS driver exits if the card does not have an interrupt. If we
set PCI_INTERRUPT_PIN to 1 then it enables VBlank interrupts and it
boots but the mouse pointer cannot be moved. This patch implements a
dummy VBlank interrupt triggered by a 60 Hz timer. With this the
pointer now moves but MacOS still hangs somewhere before completely
finishing boot.

Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Message-Id: <89364275f2fb5f85ee73c0e76528aa91691a499a.1565907489.git.balaton@eik.bme.hu>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/display/ati_regs.h')
-rw-r--r--hw/display/ati_regs.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/hw/display/ati_regs.h b/hw/display/ati_regs.h
index 02046e97c2..ebd37ee30d 100644
--- a/hw/display/ati_regs.h
+++ b/hw/display/ati_regs.h
@@ -34,6 +34,7 @@
 #define BUS_CNTL                                0x0030
 #define BUS_CNTL1                               0x0034
 #define GEN_INT_CNTL                            0x0040
+#define GEN_INT_STATUS                          0x0044
 #define CRTC_GEN_CNTL                           0x0050
 #define CRTC_EXT_CNTL                           0x0054
 #define DAC_CNTL                                0x0058
@@ -316,6 +317,11 @@
 #define XPLL_FB_DIV_MASK                        0x0000FF00
 #define X_MPLL_REF_DIV_MASK                     0x000000FF
 
+/* GEN_INT_CNTL) */
+#define CRTC_VBLANK_INT                         0x00000001
+#define CRTC_VLINE_INT                          0x00000002
+#define CRTC_VSYNC_INT                          0x00000004
+
 /* Config control values (CONFIG_CNTL) */
 #define APER_0_ENDIAN                           0x00000003
 #define APER_1_ENDIAN                           0x0000000c