summaryrefslogtreecommitdiffstats
path: root/driver/pciDriver.h
diff options
context:
space:
mode:
Diffstat (limited to 'driver/pciDriver.h')
-rw-r--r--driver/pciDriver.h114
1 files changed, 30 insertions, 84 deletions
diff --git a/driver/pciDriver.h b/driver/pciDriver.h
index 371bd88..3a231bd 100644
--- a/driver/pciDriver.h
+++ b/driver/pciDriver.h
@@ -1,60 +1,6 @@
#ifndef PCIDRIVER_H_
#define PCIDRIVER_H_
-/**
- * This is a full rewrite of the pciDriver.
- * New default is to support kernel 2.6, using kernel 2.6 APIs.
- *
- * This header defines the interface to the outside world.
- *
- * $Revision: 1.6 $
- * $Date: 2008-01-24 14:21:36 $
- *
- */
-
-/*
- * Change History:
- *
- * $Log: not supported by cvs2svn $
- * Revision 1.5 2008-01-11 10:15:14 marcus
- * Removed unused interrupt code.
- * Added intSource to the wait interrupt call.
- *
- * Revision 1.4 2006/11/17 18:44:42 marcus
- * Type of SG list can now be selected at runtime. Added type to sglist.
- *
- * Revision 1.3 2006/11/17 16:23:02 marcus
- * Added slot number to the PCI info IOctl.
- *
- * Revision 1.2 2006/11/13 12:29:09 marcus
- * Added a IOctl call, to confiure the interrupt response. (testing pending).
- * Basic interrupts are now supported.
- *
- * Revision 1.1 2006/10/10 14:46:52 marcus
- * Initial commit of the new pciDriver for kernel 2.6
- *
- * Revision 1.7 2006/10/06 15:18:06 marcus
- * Updated PCI info and PCI cmd
- *
- * Revision 1.6 2006/09/25 16:51:07 marcus
- * Added PCI config IOctls, and implemented basic mmap functions.
- *
- * Revision 1.5 2006/09/18 17:13:12 marcus
- * backup commit.
- *
- * Revision 1.4 2006/09/15 15:44:41 marcus
- * backup commit.
- *
- * Revision 1.3 2006/08/15 11:40:02 marcus
- * backup commit.
- *
- * Revision 1.2 2006/08/12 18:28:42 marcus
- * Sync with the laptop
- *
- * Revision 1.1 2006/08/11 15:30:46 marcus
- * Sync with the laptop
- *
- */
#include <linux/ioctl.h>
@@ -152,39 +98,39 @@ typedef struct {
} pcilib_board_info_t;
typedef struct {
- unsigned long type;
- unsigned long pa;
- unsigned long ba;
- unsigned long size;
- unsigned long align;
- unsigned long use;
- unsigned long item;
- int flags;
- int handle_id;
+ unsigned long type;
+ unsigned long pa;
+ unsigned long ba;
+ unsigned long size;
+ unsigned long align;
+ unsigned long use;
+ unsigned long item;
+ int flags;
+ int handle_id;
} kmem_handle_t;
typedef struct {
- unsigned long addr;
- unsigned long size;
+ unsigned long addr;
+ unsigned long size;
} umem_sgentry_t;
typedef struct {
- int handle_id;
- int type;
- int nents;
- umem_sgentry_t *sg;
+ int handle_id;
+ int type;
+ int nents;
+ umem_sgentry_t *sg;
} umem_sglist_t;
typedef struct {
- unsigned long vma;
- unsigned long size;
- int handle_id;
- int dir;
+ unsigned long vma;
+ unsigned long size;
+ int handle_id;
+ int dir;
} umem_handle_t;
typedef struct {
- kmem_handle_t handle;
- int dir;
+ kmem_handle_t handle;
+ int dir;
} kmem_sync_t;
typedef struct {
@@ -194,21 +140,21 @@ typedef struct {
} interrupt_wait_t;
typedef struct {
- int size;
- int addr;
- union {
- unsigned char byte;
- unsigned short word;
- unsigned int dword; /* not strict C, but if not can have problems */
- } val;
+ int size;
+ int addr;
+ union {
+ unsigned char byte;
+ unsigned short word;
+ unsigned int dword; /* not strict C, but if not can have problems */
+ } val;
} pci_cfg_cmd;
/* ioctl interface */
/* See documentation for a detailed usage explanation */
-/*
+/*
* one of the problems of ioctl, is that requires a type definition.
- * This type is only 8-bits wide, and half-documented in
+ * This type is only 8-bits wide, and half-documented in
* <linux-src>/Documentation/ioctl-number.txt.
* previous SHL -> 'S' definition, conflicts with several devices,
* so I changed it to be pci -> 'p', in the range 0xA0-BF