AlcapDAQ  1
Data Structures | Macros | Typedefs
a3818.h File Reference

Go to the source code of this file.

Data Structures

struct  a3818_comm
 
struct  a3818_reg
 
struct  a3818_intr
 
struct  a3818_rev
 

Macros

#define VERSION(ver, rel, seq)   (((ver)<<16) | ((rel)<<8) | (seq))
 
#define MIN_DMA_SIZE   (80)
 
#define MAX_MINOR   (256)
 
#define PFX   "a3818: "
 
#define MAX_V2718   (8)
 
#define A3818_MAX_PKT_SZ   (0x20000)
 
#define A3818_RXFIFO_SZ   (0x2000)
 
#define A3818_REGION_SIZE   (0x100)
 
#define PCI_VENDOR_XILINX_ID   (0x10ee)
 
#define PCI_DEVICE_ID_VIRTEX   (0x0007)
 
#define PCI_SUBSYSTEM_VENDOR_ID_XILINX   (0x10ee)
 
#define PCI_SUBSYSTEM_ID_VIRTEX   (0x0007)
 
#define A3818_MAGIC   '8'
 
#define IOCTL_RESET   _IO(A3818_MAGIC, 0)
 
#define IOCTL_COMM   _IOWR(A3818_MAGIC, 1, a3818_comm_t)
 
#define IOCTL_REG_WR   _IOW(A3818_MAGIC, 2, a3818_reg_t)
 
#define IOCTL_REG_RD   _IOWR(A3818_MAGIC, 3, a3818_reg_t)
 
#define IOCTL_IRQ_WAIT   _IOW(A3818_MAGIC, 4, a3818_intr_t)
 
#define IOCTL_SEND   _IOWR(A3818_MAGIC, 5, a3818_comm_t)
 
#define IOCTL_RECV   _IOWR(A3818_MAGIC, 6, int)
 
#define IOCTL_REV   _IOWR(A3818_MAGIC, 7, a3818_rev_t)
 
#define IOCTL_COMM_REG_WR   _IOW(A3818_MAGIC, 8, a3818_reg_t)
 
#define IOCTL_COMM_REG_RD   _IOWR(A3818_MAGIC, 9, a3818_reg_t)
 
#define A3818_IOCTL_START_DMA_TO_PC   _IOWR(A3818_MAGIC, 10, a3818_comm_t)
 
#define PCI_IOCTL_REG_RD   _IOWR(A3818_MAGIC, 11, a3818_reg_t)
 
#define A3818_IOCTL_PCIE_BRIDGE_RESET   _IO(A3818_MAGIC, 12)
 
#define IOCTL_MATI   _IO(A3818_MAGIC, 13)
 
#define START_WRITE_DMA   (0x01)
 
#define MAX_OPT_LINK   (0x05)
 
#define A3818_COMMON_REG   (0x05)
 
#define AT45DB321D_PAGE_SIZE   264
 
#define MAX_TLP32_DATA_PAYLOAD   32
 
#define A3818_OK   0
 
#define A3818_ERR_NOT_READY   1
 
#define A3818_TXFIFO   (0x00)
 
#define A3818_RXFIFO   (0x04)
 
#define IOCTL   (0x08)
 
#define A3818_LNKRST   (1)
 
#define A3818_RDYINTDIS   (1 << 1)
 
#define A3818_SERVICE   (1 << 2)
 
#define A3818_VINTDIS   (1 << 3)
 
#define A3818_RES_LOCINT   (1 << 4)
 
#define A3818_LINK_SR   (0x0C)
 
#define A3818_RXFIFO_EMPTY   (1)
 
#define A3818_RXFIFO_ALMFULL   (1 << 1)
 
#define A3818_TXFIFO_FULL   (1 << 2)
 
#define A3818_VMEINT   (1 << 3)
 
#define A3818_LINKON   (1 << 5)
 
#define A3818_LINKRST_STAT   (1 << 6)
 
#define A3818_SERV   (1 << 7)
 
#define A3818_LINK_FAIL   (1 << 8)
 
#define A3818_LINT   (1 << 9)
 
#define A3818_LINK_TX_RES   (1 << 16)
 
#define A3818_LINK_RX_RES   (1 << 17)
 
#define A3818_LINK_TRS   (0x18)
 
#define A3818_DEBUG   (0x20)
 
#define A3818_IRQSTAT_0   (0x24)
 
#define A3818_IRQSTAT_1   (0x28)
 
#define A3818_IRQMASK_0_S   (0x30)
 
#define A3818_IRQMASK_0_C   (0x34)
 
#define A3818_IRQMASK_1_S   (0x38)
 
#define A3818_IRQMASK_1_C   (0x3C)
 
#define A3818_IOCTL_S   (0xA0)
 
#define A3818_IOCTL_C   (0xA4)
 
#define A3818_DMACSR   (0x100)
 
#define A3818_DMAREADSTART   (1 << 0)
 
#define A3818_DMAREADDONE   (1 << 8)
 
#define A3818_RES_DMAINT   (1 << 31)
 
#define A3818_RDMATLPA   (0x104)
 
#define A3818_RDMALADR   (0x108)
 
#define A3818_RDMASIZE   (0x10C)
 
#define A3818_RDMAMODE   (0x110)
 
#define A3818_DMAMODE_INTDIS   (1 << 6)
 
#define A3818_WDMAPERF   (0x114)
 
#define A3818_DMACSR_S   (0x118)
 
#define A3818_DLWSTAT   (0x00)
 
#define A3818_DLTRSSTAT   (0x04)
 
#define A3818_DMISCCS   (0x08)
 
#define A3818_DMISCCS_CPL_STREAM   (1 << 0)
 
#define A3818_DMISCCS_RD_METERING   (1 << 1)
 
#define A3818_DMISCCS_REC_NON_POSTED_OK   (1 << 2)
 
#define A3818_DMISCCS_SPI_BPI_FLASH_SEL   (1 << 4)
 
#define A3818_DMISCCS_SPI_FLASH_RDY   (1 << 5)
 
#define A3818_DMISCCS_ADC_CLK_SEL   (1 << 6)
 
#define A3818_DMISCCS_V_PB_EN   (1 << 7)
 
#define A3818_DMISCCS_RDDMA_DONE0   (1 << 16)
 
#define A3818_DMISCCS_RDDMA_DONE1   (1 << 17)
 
#define A3818_DMISCCS_RDDMA_DONE2   (1 << 18)
 
#define A3818_DMISCCS_RDDMA_DONE3   (1 << 19)
 
#define A3818_DMISCCS_RDDMA_DONE4   (1 << 20)
 
#define A3818_DMISCCS_LOC_INT0   (1 << 24)
 
#define A3818_DMISCCS_LOC_INT1   (1 << 25)
 
#define A3818_DMISCCS_LOC_INT2   (1 << 26)
 
#define A3818_DMISCCS_LOC_INT3   (1 << 27)
 
#define A3818_DMISCCS_LOC_INT4   (1 << 28)
 
#define A3818_GTPRES   (0x0C)
 
#define A3818_SPI_FLASH   (0x10)
 
#define A3818_SPI_FLEN   (0x14)
 
#define A3818_SPI_RELOAD   (0x18)
 
#define A3818_BPI_FLASH_AD   (0x20)
 
#define A3818_BPI_FLASH_DT   (0x24)
 
#define A3818_BPI_FLASH_CMD   (0x28)
 
#define A3818_PHY_I2C_COMM   (0x30)
 
#define A3818_PHY_I2C_DAT   (0x34)
 
#define A3818_ADC_I2C_COMM   (0x38)
 
#define A3818_ADC_I2C_DAT   (0x3C)
 
#define A3818_FWREV   (0x40)
 
#define A3818_BOARD_ID   (0x44)
 
#define A3818_BOARD_VERS_ID   (0x48)
 
#define A3818_BOARD_SERNUM   (0x4C)
 
#define A3818_TEMP   (0x50)
 
#define A3818_SSRAM_AD   (0x60)
 
#define A3818_SSRAM_DT_L   (0x64)
 
#define A3818_SSRAM_DT_M   (0x68)
 
#define A3818_SSRAM_DT_H   (0x6C)
 
#define A3818_SSRAM_CMD   (0x70)
 
#define A3818BOARD   (0x0eea)
 
#define ONE_LINK   (0x0a)
 
#define TWO_LINK   (0x0b)
 
#define FOUR_LINK   (0x0c)
 
#define A3818DIGIT   (0x0d)
 
#define A3818RAW   (0xffffff)
 
#define PCIE_DMA_CONF_REG   (0x68)
 
#define PCIE_MSI_CAPAB_REG   (0x48)
 
#define A3818_DRIVER_VERSION_LEN   20
 

Typedefs

typedef struct a3818_comm a3818_comm_t
 
typedef struct a3818_reg a3818_reg_t
 
typedef struct a3818_intr a3818_intr_t
 
typedef struct a3818_rev a3818_rev_t
 

Macro Definition Documentation

#define A3818_ADC_I2C_COMM   (0x38)

Definition at line 204 of file a3818.h.

#define A3818_ADC_I2C_DAT   (0x3C)

Definition at line 205 of file a3818.h.

#define A3818_BOARD_ID   (0x44)

Definition at line 208 of file a3818.h.

#define A3818_BOARD_SERNUM   (0x4C)

Definition at line 210 of file a3818.h.

#define A3818_BOARD_VERS_ID   (0x48)

Definition at line 209 of file a3818.h.

#define A3818_BPI_FLASH_AD   (0x20)

Definition at line 197 of file a3818.h.

Referenced by bpi_flash_read(), and bpi_flash_write().

#define A3818_BPI_FLASH_CMD   (0x28)

Definition at line 199 of file a3818.h.

Referenced by bpi_flash_read(), and bpi_flash_write().

#define A3818_BPI_FLASH_DT   (0x24)

Definition at line 198 of file a3818.h.

Referenced by bpi_flash_read(), and bpi_flash_write().

#define A3818_COMMON_REG   (0x05)

Definition at line 93 of file a3818.h.

#define A3818_DEBUG   (0x20)

Definition at line 135 of file a3818.h.

#define A3818_DLTRSSTAT   (0x04)

Definition at line 167 of file a3818.h.

#define A3818_DLWSTAT   (0x00)

Definition at line 166 of file a3818.h.

#define A3818_DMACSR   (0x100)

Definition at line 148 of file a3818.h.

#define A3818_DMACSR_S   (0x118)

Definition at line 162 of file a3818.h.

#define A3818_DMAMODE_INTDIS   (1 << 6)

Definition at line 158 of file a3818.h.

#define A3818_DMAREADDONE   (1 << 8)

Definition at line 150 of file a3818.h.

#define A3818_DMAREADSTART   (1 << 0)

Definition at line 149 of file a3818.h.

#define A3818_DMISCCS   (0x08)

Definition at line 168 of file a3818.h.

Referenced by A3818_EnableBPIAccess(), and A3818_EnableSPIAccess().

#define A3818_DMISCCS_ADC_CLK_SEL   (1 << 6)

Definition at line 176 of file a3818.h.

#define A3818_DMISCCS_CPL_STREAM   (1 << 0)

Definition at line 170 of file a3818.h.

#define A3818_DMISCCS_LOC_INT0   (1 << 24)

Definition at line 185 of file a3818.h.

#define A3818_DMISCCS_LOC_INT1   (1 << 25)

Definition at line 186 of file a3818.h.

#define A3818_DMISCCS_LOC_INT2   (1 << 26)

Definition at line 187 of file a3818.h.

#define A3818_DMISCCS_LOC_INT3   (1 << 27)

Definition at line 188 of file a3818.h.

#define A3818_DMISCCS_LOC_INT4   (1 << 28)

Definition at line 189 of file a3818.h.

#define A3818_DMISCCS_RD_METERING   (1 << 1)

Definition at line 171 of file a3818.h.

#define A3818_DMISCCS_RDDMA_DONE0   (1 << 16)

Definition at line 179 of file a3818.h.

#define A3818_DMISCCS_RDDMA_DONE1   (1 << 17)

Definition at line 180 of file a3818.h.

#define A3818_DMISCCS_RDDMA_DONE2   (1 << 18)

Definition at line 181 of file a3818.h.

#define A3818_DMISCCS_RDDMA_DONE3   (1 << 19)

Definition at line 182 of file a3818.h.

#define A3818_DMISCCS_RDDMA_DONE4   (1 << 20)

Definition at line 183 of file a3818.h.

#define A3818_DMISCCS_REC_NON_POSTED_OK   (1 << 2)

Definition at line 172 of file a3818.h.

#define A3818_DMISCCS_SPI_BPI_FLASH_SEL   (1 << 4)

Definition at line 174 of file a3818.h.

Referenced by A3818_EnableBPIAccess(), and A3818_EnableSPIAccess().

#define A3818_DMISCCS_SPI_FLASH_RDY   (1 << 5)

Definition at line 175 of file a3818.h.

#define A3818_DMISCCS_V_PB_EN   (1 << 7)

Definition at line 177 of file a3818.h.

#define A3818_DRIVER_VERSION_LEN   20

Definition at line 333 of file a3818.h.

#define A3818_ERR_NOT_READY   1

Definition at line 102 of file a3818.h.

#define A3818_FWREV   (0x40)

Definition at line 207 of file a3818.h.

#define A3818_GTPRES   (0x0C)

Definition at line 191 of file a3818.h.

#define A3818_IOCTL_C   (0xA4)

Definition at line 145 of file a3818.h.

#define A3818_IOCTL_PCIE_BRIDGE_RESET   _IO(A3818_MAGIC, 12)

Definition at line 87 of file a3818.h.

#define A3818_IOCTL_S   (0xA0)

Definition at line 144 of file a3818.h.

#define A3818_IOCTL_START_DMA_TO_PC   _IOWR(A3818_MAGIC, 10, a3818_comm_t)

Definition at line 85 of file a3818.h.

#define A3818_IRQMASK_0_C   (0x34)

Definition at line 140 of file a3818.h.

#define A3818_IRQMASK_0_S   (0x30)

Definition at line 139 of file a3818.h.

#define A3818_IRQMASK_1_C   (0x3C)

Definition at line 142 of file a3818.h.

#define A3818_IRQMASK_1_S   (0x38)

Definition at line 141 of file a3818.h.

#define A3818_IRQSTAT_0   (0x24)

Definition at line 137 of file a3818.h.

#define A3818_IRQSTAT_1   (0x28)

Definition at line 138 of file a3818.h.

#define A3818_LINK_FAIL   (1 << 8)

Definition at line 127 of file a3818.h.

#define A3818_LINK_RX_RES   (1 << 17)

Definition at line 131 of file a3818.h.

#define A3818_LINK_SR   (0x0C)

Definition at line 118 of file a3818.h.

#define A3818_LINK_TRS   (0x18)

Definition at line 133 of file a3818.h.

#define A3818_LINK_TX_RES   (1 << 16)

Definition at line 130 of file a3818.h.

#define A3818_LINKON   (1 << 5)

Definition at line 124 of file a3818.h.

#define A3818_LINKRST_STAT   (1 << 6)

Definition at line 125 of file a3818.h.

#define A3818_LINT   (1 << 9)

Definition at line 128 of file a3818.h.

#define A3818_LNKRST   (1)

Definition at line 112 of file a3818.h.

#define A3818_MAGIC   '8'

Definition at line 72 of file a3818.h.

#define A3818_MAX_PKT_SZ   (0x20000)

Definition at line 62 of file a3818.h.

#define A3818_OK   0

Definition at line 101 of file a3818.h.

#define A3818_PHY_I2C_COMM   (0x30)

Definition at line 201 of file a3818.h.

#define A3818_PHY_I2C_DAT   (0x34)

Definition at line 202 of file a3818.h.

#define A3818_RDMALADR   (0x108)

Definition at line 154 of file a3818.h.

#define A3818_RDMAMODE   (0x110)

Definition at line 157 of file a3818.h.

#define A3818_RDMASIZE   (0x10C)

Definition at line 155 of file a3818.h.

#define A3818_RDMATLPA   (0x104)

Definition at line 153 of file a3818.h.

#define A3818_RDYINTDIS   (1 << 1)

Definition at line 113 of file a3818.h.

#define A3818_REGION_SIZE   (0x100)

Definition at line 65 of file a3818.h.

#define A3818_RES_DMAINT   (1 << 31)

Definition at line 151 of file a3818.h.

#define A3818_RES_LOCINT   (1 << 4)

Definition at line 116 of file a3818.h.

#define A3818_RXFIFO   (0x04)

Definition at line 110 of file a3818.h.

#define A3818_RXFIFO_ALMFULL   (1 << 1)

Definition at line 120 of file a3818.h.

#define A3818_RXFIFO_EMPTY   (1)

Definition at line 119 of file a3818.h.

#define A3818_RXFIFO_SZ   (0x2000)

Definition at line 64 of file a3818.h.

#define A3818_SERV   (1 << 7)

Definition at line 126 of file a3818.h.

#define A3818_SERVICE   (1 << 2)

Definition at line 114 of file a3818.h.

#define A3818_SPI_FLASH   (0x10)

Definition at line 193 of file a3818.h.

#define A3818_SPI_FLEN   (0x14)

Definition at line 194 of file a3818.h.

#define A3818_SPI_RELOAD   (0x18)

Definition at line 195 of file a3818.h.

#define A3818_SSRAM_AD   (0x60)

Definition at line 213 of file a3818.h.

#define A3818_SSRAM_CMD   (0x70)

Definition at line 217 of file a3818.h.

#define A3818_SSRAM_DT_H   (0x6C)

Definition at line 216 of file a3818.h.

#define A3818_SSRAM_DT_L   (0x64)

Definition at line 214 of file a3818.h.

#define A3818_SSRAM_DT_M   (0x68)

Definition at line 215 of file a3818.h.

#define A3818_TEMP   (0x50)

Definition at line 211 of file a3818.h.

#define A3818_TXFIFO   (0x00)

Definition at line 109 of file a3818.h.

#define A3818_TXFIFO_FULL   (1 << 2)

Definition at line 121 of file a3818.h.

#define A3818_VINTDIS   (1 << 3)

Definition at line 115 of file a3818.h.

#define A3818_VMEINT   (1 << 3)

Definition at line 122 of file a3818.h.

#define A3818_WDMAPERF   (0x114)

Definition at line 160 of file a3818.h.

#define A3818BOARD   (0x0eea)

Definition at line 221 of file a3818.h.

#define A3818DIGIT   (0x0d)

Definition at line 226 of file a3818.h.

#define A3818RAW   (0xffffff)

Definition at line 227 of file a3818.h.

#define AT45DB321D_PAGE_SIZE   264

Definition at line 95 of file a3818.h.

#define FOUR_LINK   (0x0c)

Definition at line 224 of file a3818.h.

#define IOCTL   (0x08)

Definition at line 111 of file a3818.h.

#define IOCTL_COMM   _IOWR(A3818_MAGIC, 1, a3818_comm_t)

Definition at line 75 of file a3818.h.

#define IOCTL_COMM_REG_RD   _IOWR(A3818_MAGIC, 9, a3818_reg_t)

Definition at line 83 of file a3818.h.

#define IOCTL_COMM_REG_WR   _IOW(A3818_MAGIC, 8, a3818_reg_t)

Definition at line 82 of file a3818.h.

#define IOCTL_IRQ_WAIT   _IOW(A3818_MAGIC, 4, a3818_intr_t)

Definition at line 78 of file a3818.h.

#define IOCTL_MATI   _IO(A3818_MAGIC, 13)

Definition at line 88 of file a3818.h.

#define IOCTL_RECV   _IOWR(A3818_MAGIC, 6, int)

Definition at line 80 of file a3818.h.

#define IOCTL_REG_RD   _IOWR(A3818_MAGIC, 3, a3818_reg_t)

Definition at line 77 of file a3818.h.

#define IOCTL_REG_WR   _IOW(A3818_MAGIC, 2, a3818_reg_t)

Definition at line 76 of file a3818.h.

#define IOCTL_RESET   _IO(A3818_MAGIC, 0)

Definition at line 74 of file a3818.h.

#define IOCTL_REV   _IOWR(A3818_MAGIC, 7, a3818_rev_t)

Definition at line 81 of file a3818.h.

#define IOCTL_SEND   _IOWR(A3818_MAGIC, 5, a3818_comm_t)

Definition at line 79 of file a3818.h.

#define MAX_MINOR   (256)

Definition at line 57 of file a3818.h.

#define MAX_OPT_LINK   (0x05)

Definition at line 92 of file a3818.h.

#define MAX_TLP32_DATA_PAYLOAD   32

Definition at line 97 of file a3818.h.

#define MAX_V2718   (8)

Definition at line 60 of file a3818.h.

#define MIN_DMA_SIZE   (80)

Definition at line 56 of file a3818.h.

#define ONE_LINK   (0x0a)

Definition at line 222 of file a3818.h.

#define PCI_DEVICE_ID_VIRTEX   (0x0007)

Definition at line 68 of file a3818.h.

#define PCI_IOCTL_REG_RD   _IOWR(A3818_MAGIC, 11, a3818_reg_t)

Definition at line 86 of file a3818.h.

#define PCI_SUBSYSTEM_ID_VIRTEX   (0x0007)

Definition at line 70 of file a3818.h.

#define PCI_SUBSYSTEM_VENDOR_ID_XILINX   (0x10ee)

Definition at line 69 of file a3818.h.

#define PCI_VENDOR_XILINX_ID   (0x10ee)

Definition at line 67 of file a3818.h.

#define PCIE_DMA_CONF_REG   (0x68)

Definition at line 230 of file a3818.h.

#define PCIE_MSI_CAPAB_REG   (0x48)

Definition at line 231 of file a3818.h.

#define PFX   "a3818: "

Definition at line 58 of file a3818.h.

#define START_WRITE_DMA   (0x01)

Definition at line 90 of file a3818.h.

#define TWO_LINK   (0x0b)

Definition at line 223 of file a3818.h.

#define VERSION (   ver,
  rel,
  seq 
)    (((ver)<<16) | ((rel)<<8) | (seq))

Definition at line 19 of file a3818.h.

Typedef Documentation

typedef struct a3818_comm a3818_comm_t
typedef struct a3818_intr a3818_intr_t
typedef struct a3818_reg a3818_reg_t
typedef struct a3818_rev a3818_rev_t