]> git.karo-electronics.de Git - karo-tx-linux.git/blob - drivers/staging/comedi/drivers/addi_apci_3501.c
5c95c7d1d214a48e91b803363ca1959730e7b841
[karo-tx-linux.git] / drivers / staging / comedi / drivers / addi_apci_3501.c
1 #include "../comedidev.h"
2 #include "comedi_fc.h"
3
4 #include "addi-data/addi_common.h"
5 #include "addi-data/addi_amcc_s5933.h"
6
7 #define CONFIG_APCI_3501 1
8
9 #define ADDIDATA_DRIVER_NAME    "addi_apci_3501"
10
11 #include "addi-data/addi_eeprom.c"
12 #include "addi-data/hwdrv_apci3501.c"
13
14 static const struct addi_board boardtypes[] = {
15         {
16                 .pc_DriverName          = "apci3501",
17                 .i_VendorId             = PCI_VENDOR_ID_ADDIDATA,
18                 .i_DeviceId             = 0x3001,
19                 .i_IorangeBase0         = 64,
20                 .i_IorangeBase1         = APCI3501_ADDRESS_RANGE,
21                 .i_PCIEeprom            = ADDIDATA_EEPROM,
22                 .pc_EepromChip          = ADDIDATA_S5933,
23                 .i_AoMaxdata            = 16383,
24                 .pr_AoRangelist         = &range_apci3501_ao,
25                 .i_NbrDiChannel         = 2,
26                 .i_NbrDoChannel         = 2,
27                 .i_DoMaxdata            = 0x3,
28                 .i_Timer                = 1,
29                 .interrupt              = v_APCI3501_Interrupt,
30                 .reset                  = i_APCI3501_Reset,
31                 .ao_config              = i_APCI3501_ConfigAnalogOutput,
32                 .ao_write               = i_APCI3501_WriteAnalogOutput,
33                 .di_bits                = i_APCI3501_ReadDigitalInput,
34                 .do_config              = i_APCI3501_ConfigDigitalOutput,
35                 .do_write               = i_APCI3501_WriteDigitalOutput,
36                 .do_bits                = i_APCI3501_ReadDigitalOutput,
37                 .timer_config           = i_APCI3501_ConfigTimerCounterWatchdog,
38                 .timer_write            = i_APCI3501_StartStopWriteTimerCounterWatchdog,
39                 .timer_read             = i_APCI3501_ReadTimerCounterWatchdog,
40         },
41 };
42
43 static DEFINE_PCI_DEVICE_TABLE(addi_apci_tbl) = {
44         { PCI_DEVICE(PCI_VENDOR_ID_ADDIDATA, 0x3001) },
45         { 0 }
46 };
47 MODULE_DEVICE_TABLE(pci, addi_apci_tbl);
48
49 #include "addi-data/addi_common.c"
50
51 MODULE_AUTHOR("Comedi http://www.comedi.org");
52 MODULE_DESCRIPTION("Comedi low-level driver");
53 MODULE_LICENSE("GPL");