summaryrefslogtreecommitdiff
path: root/src/video_out/libdha/kernelhelper/dhahelper.h
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-01-13 23:36:01 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-01-13 23:36:01 +0000
commit9baa6d2f372d3e09280e1103d7bfcf048f6457ec (patch)
treecf3bfc3fb392fe58ed612a5a09c11d176eb17e99 /src/video_out/libdha/kernelhelper/dhahelper.h
parent989188f25474868841d8a5148873a5995be58c6f (diff)
downloadxine-lib-9baa6d2f372d3e09280e1103d7bfcf048f6457ec.tar.gz
xine-lib-9baa6d2f372d3e09280e1103d7bfcf048f6457ec.tar.bz2
big vidix driver update by James Stembridge
CVS patchset: 3907 CVS date: 2003/01/13 23:36:01
Diffstat (limited to 'src/video_out/libdha/kernelhelper/dhahelper.h')
-rw-r--r--src/video_out/libdha/kernelhelper/dhahelper.h57
1 files changed, 36 insertions, 21 deletions
diff --git a/src/video_out/libdha/kernelhelper/dhahelper.h b/src/video_out/libdha/kernelhelper/dhahelper.h
index 2cbcb5550..3932b96ab 100644
--- a/src/video_out/libdha/kernelhelper/dhahelper.h
+++ b/src/video_out/libdha/kernelhelper/dhahelper.h
@@ -10,9 +10,9 @@
#include <linux/ioctl.h>
/* feel free to change */
-#define DEFAULT_MAJOR 180
+#define DEFAULT_MAJOR 252 /* 240-254 LOCAL/EXPERIMENTAL USE */
-#define API_VERSION 0x2
+#define API_VERSION 0x21 /* 2.1*/
typedef struct dhahelper_port_s
{
@@ -20,23 +20,10 @@ typedef struct dhahelper_port_s
#define PORT_OP_WRITE 2
int operation;
int size;
- int addr;
+ int addr; // FIXME - switch to void* (64bit)
int value;
} dhahelper_port_t;
-typedef struct dhahelper_memory_s
-{
-#define MEMORY_OP_MAP 1
-#define MEMORY_OP_UNMAP 2
- int operation;
- int start;
- int offset;
- int size;
- int ret;
-#define MEMORY_FLAG_NOCACHE 1
- int flags;
-} dhahelper_memory_t;
-
typedef struct dhahelper_mtrr_s
{
#define MTRR_OP_ADD 1
@@ -67,12 +54,40 @@ typedef struct dhahelper_vmi_s
unsigned long *realaddr;
}dhahelper_vmi_t;
+typedef struct dhahelper_mem_s
+{
+ void * addr;
+ unsigned long length;
+}dhahelper_mem_t;
+
+typedef struct dhahelper_irq_s
+{
+ unsigned num;
+ int bus, dev, func;
+ int ack_region;
+ unsigned long ack_offset;
+ unsigned int ack_data;
+}dhahelper_irq_t;
+
+typedef struct dhahelper_cpu_flush_s
+{
+ void *va;
+ unsigned long length;
+}dhahelper_cpu_flush_t;
+
#define DHAHELPER_GET_VERSION _IOW('D', 0, int)
#define DHAHELPER_PORT _IOWR('D', 1, dhahelper_port_t)
-#define DHAHELPER_MEMORY _IOWR('D', 2, dhahelper_memory_t)
-#define DHAHELPER_MTRR _IOWR('D', 3, dhahelper_mtrr_t)
-#define DHAHELPER_PCI _IOWR('D', 4, dhahelper_pci_t)
-#define DHAHELPER_VIRT_TO_PHYS _IOWR('D', 5, dhahelper_vmi_t)
-#define DHAHELPER_VIRT_TO_BUS _IOWR('D', 6, dhahelper_vmi_t)
+#define DHAHELPER_MTRR _IOWR('D', 2, dhahelper_mtrr_t)
+#define DHAHELPER_PCI _IOWR('D', 3, dhahelper_pci_t)
+#define DHAHELPER_VIRT_TO_PHYS _IOWR('D', 4, dhahelper_vmi_t)
+#define DHAHELPER_VIRT_TO_BUS _IOWR('D', 5, dhahelper_vmi_t)
+#define DHAHELPER_ALLOC_PA _IOWR('D', 6, dhahelper_mem_t)
+#define DHAHELPER_FREE_PA _IOWR('D', 7, dhahelper_mem_t)
+#define DHAHELPER_LOCK_MEM _IOWR('D', 8, dhahelper_mem_t)
+#define DHAHELPER_UNLOCK_MEM _IOWR('D', 9, dhahelper_mem_t)
+#define DHAHELPER_INSTALL_IRQ _IOWR('D', 10, dhahelper_irq_t)
+#define DHAHELPER_ACK_IRQ _IOWR('D', 11, dhahelper_irq_t)
+#define DHAHELPER_FREE_IRQ _IOWR('D', 12, dhahelper_irq_t)
+#define DHAHELPER_CPU_FLUSH _IOWR('D', 13, dhahelper_cpu_flush_t)
#endif /* DHAHELPER_H */