]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-alpha/vga.h
r8169: display some extra debug information during startup
[linux-2.6-omap-h63xx.git] / include / asm-alpha / vga.h
index ed06f59b544d4c7c84ef7ccdb20ab56fa1444554..e8df1e7aae6b39155c6cdf625e2549aef6d97627 100644 (file)
@@ -46,6 +46,37 @@ extern void scr_memcpyw(u16 *d, const u16 *s, unsigned int count);
 #define vga_readb(a)   readb((u8 __iomem *)(a))
 #define vga_writeb(v,a)        writeb(v, (u8 __iomem *)(a))
 
+#ifdef CONFIG_VGA_HOSE
+#include <linux/ioport.h>
+#include <linux/pci.h>
+
+extern struct pci_controller *pci_vga_hose;
+
+# define __is_port_vga(a)       \
+       (((a) >= 0x3b0) && ((a) < 0x3e0) && \
+        ((a) != 0x3b3) && ((a) != 0x3d3))
+
+# define __is_mem_vga(a) \
+       (((a) >= 0xa0000) && ((a) <= 0xc0000))
+
+# define FIXUP_IOADDR_VGA(a) do {                       \
+       if (pci_vga_hose && __is_port_vga(a))     \
+               (a) += pci_vga_hose->io_space->start;     \
+ } while(0)
+
+# define FIXUP_MEMADDR_VGA(a) do {                       \
+       if (pci_vga_hose && __is_mem_vga(a))     \
+               (a) += pci_vga_hose->mem_space->start; \
+ } while(0)
+
+#else /* CONFIG_VGA_HOSE */
+# define pci_vga_hose 0
+# define __is_port_vga(a) 0
+# define __is_mem_vga(a) 0
+# define FIXUP_IOADDR_VGA(a)
+# define FIXUP_MEMADDR_VGA(a)
+#endif /* CONFIG_VGA_HOSE */
+
 #define VGA_MAP_MEM(x,s)       ((unsigned long) ioremap(x, s))
 
 #endif