AFHBA404
AFHBA404 connects ACQ2106 to PCI-Express
Macros | Functions | Variables
acq-fiber-hba.c File Reference
#include "acq-fiber-hba.h"
#include <linux/module.h>
#include "d-tacq_pci_id.h"
#include <linux/pci_regs.h>

Go to the source code of this file.

Macros

#define EXPORT_SYMTAB
 
#define VALID_BAR(bar)   ((bar) != NO_BAR)
 
#define AFHBA_PCI_CMD   (PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY)
 
#define STREAM   afhba_stream_drv_init
 
#define NOSTREAM   null_stream_drv_init
 

Functions

 LIST_HEAD (afhba_devices)
 
 module_param (afhba_debug, int, 0644)
 
 module_param (ll_mode_only, int, 0444)
 
 module_param (afhba4_stream, int, 0444)
 
 module_param (afhba_nports, int, 0444)
 
 module_param (bad_bios_bar_limit, int, 0644)
 
ssize_t bar_read (struct file *file, char *buf, size_t count, loff_t *f_pos, int BAR)
 
ssize_t bar_write (struct file *file, const char *buf, size_t count, loff_t *f_pos, int BAR, int OFFSET)
 
int afhba_open (struct inode *inode, struct file *file)
 
ssize_t afhba_read (struct file *file, char __user *buf, size_t count, loff_t *f_pos)
 
ssize_t afhba_write (struct file *file, const char *buf, size_t count, loff_t *f_pos)
 
int afhba_mmap_bar (struct file *file, struct vm_area_struct *vma)
 
int afhba_mmap_hb (struct file *file, struct vm_area_struct *vma)
 
int afhba_release (struct inode *inode, struct file *file)
 
void afhba_map (struct AFHBA_DEV *adev)
 
struct AFHBA_DEVadevCreate (struct pci_dev *dev)
 
void adevDelete (struct AFHBA_DEV *adev)
 
void force_busmaster_mode (struct AFHBA_DEV *adev)
 
int _afhba_probe (struct AFHBA_DEV *adev, int remote_bar, int(*stream_drv_init)(struct AFHBA_DEV *adev))
 
int null_stream_drv_init (struct AFHBA_DEV *adev)
 
int afhba2_probe (struct AFHBA_DEV *adev)
 
int afhba4_probe (struct AFHBA_DEV *adev)
 
int afhba_mtca_probe (struct AFHBA_DEV *adev)
 
int afhba_probe (struct pci_dev *dev, const struct pci_device_id *ent)
 
void afhba_remove (struct pci_dev *dev)
 
int __init afhba_init_module (void)
 
void afhba_exit_module (void)
 
 module_init (afhba_init_module)
 
 module_exit (afhba_exit_module)
 
 EXPORT_SYMBOL_GPL (afhba_devices)
 
 MODULE_DEVICE_TABLE (pci, afhba_pci_tbl)
 
 MODULE_LICENSE ("GPL")
 
 MODULE_AUTHOR ("Peter.Milne@d-tacq.com")
 
 MODULE_DESCRIPTION ("D-TACQ ACQ-FIBER-HBA Driver for ACQ400")
 

Variables

char afhba_driver_name [] = "afhba"
 
char afhba__driver_string [] = "D-TACQ ACQ-FIBER-HBA Driver for ACQ400"
 
char afhba__driver_version [] = "B1113"
 
char afhba__copyright [] = "Copyright (c) 2010/2014 D-TACQ Solutions Ltd"
 
struct class * afhba_device_class
 
const char * afhba_devnames [MAXDEV]
 
int afhba_debug = 0
 
int ll_mode_only = 1
 
int afhba4_stream = 0
 
int afhba_nports = 4
 
int bad_bios_bar_limit = 0
 
int buffer_len
 

Macro Definition Documentation

◆ AFHBA_PCI_CMD

#define AFHBA_PCI_CMD   (PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY)

Definition at line 349 of file acq-fiber-hba.c.

◆ EXPORT_SYMTAB

#define EXPORT_SYMTAB

Definition at line 46 of file acq-fiber-hba.c.

◆ NOSTREAM

#define NOSTREAM   null_stream_drv_init

Definition at line 433 of file acq-fiber-hba.c.

◆ STREAM

Definition at line 432 of file acq-fiber-hba.c.

◆ VALID_BAR

#define VALID_BAR (   bar)    ((bar) != NO_BAR)

Definition at line 88 of file acq-fiber-hba.c.

Function Documentation

◆ _afhba_probe()

int _afhba_probe ( struct AFHBA_DEV adev,
int  remote_bar,
int(*)(struct AFHBA_DEV *adev)  stream_drv_init 
)

Definition at line 364 of file acq-fiber-hba.c.

◆ adevCreate()

struct AFHBA_DEV* adevCreate ( struct pci_dev *  dev)

Definition at line 326 of file acq-fiber-hba.c.

◆ adevDelete()

void adevDelete ( struct AFHBA_DEV adev)

Definition at line 341 of file acq-fiber-hba.c.

◆ afhba2_probe()

int afhba2_probe ( struct AFHBA_DEV adev)

Definition at line 434 of file acq-fiber-hba.c.

◆ afhba4_probe()

int afhba4_probe ( struct AFHBA_DEV adev)

Definition at line 458 of file acq-fiber-hba.c.

◆ afhba_exit_module()

void afhba_exit_module ( void  )

Definition at line 598 of file acq-fiber-hba.c.

◆ afhba_init_module()

int __init afhba_init_module ( void  )

Definition at line 584 of file acq-fiber-hba.c.

◆ afhba_map()

void afhba_map ( struct AFHBA_DEV adev)

Definition at line 249 of file acq-fiber-hba.c.

◆ afhba_mmap_bar()

int afhba_mmap_bar ( struct file *  file,
struct vm_area_struct *  vma 
)

Definition at line 197 of file acq-fiber-hba.c.

◆ afhba_mmap_hb()

int afhba_mmap_hb ( struct file *  file,
struct vm_area_struct *  vma 
)

Definition at line 219 of file acq-fiber-hba.c.

◆ afhba_mtca_probe()

int afhba_mtca_probe ( struct AFHBA_DEV adev)

Definition at line 491 of file acq-fiber-hba.c.

◆ afhba_open()

int afhba_open ( struct inode *  inode,
struct file *  file 
)

Definition at line 156 of file acq-fiber-hba.c.

◆ afhba_probe()

int afhba_probe ( struct pci_dev *  dev,
const struct pci_device_id *  ent 
)

Definition at line 508 of file acq-fiber-hba.c.

◆ afhba_read()

ssize_t afhba_read ( struct file *  file,
char __user *  buf,
size_t  count,
loff_t *  f_pos 
)

Definition at line 186 of file acq-fiber-hba.c.

◆ afhba_release()

int afhba_release ( struct inode *  inode,
struct file *  file 
)

Definition at line 241 of file acq-fiber-hba.c.

◆ afhba_remove()

void afhba_remove ( struct pci_dev *  dev)

Definition at line 541 of file acq-fiber-hba.c.

◆ afhba_write()

ssize_t afhba_write ( struct file *  file,
const char *  buf,
size_t  count,
loff_t *  f_pos 
)

Definition at line 192 of file acq-fiber-hba.c.

◆ bar_read()

ssize_t bar_read ( struct file *  file,
char *  buf,
size_t  count,
loff_t *  f_pos,
int  BAR 
)

Definition at line 90 of file acq-fiber-hba.c.

◆ bar_write()

ssize_t bar_write ( struct file *  file,
const char *  buf,
size_t  count,
loff_t *  f_pos,
int  BAR,
int  OFFSET 
)

Definition at line 124 of file acq-fiber-hba.c.

◆ EXPORT_SYMBOL_GPL()

EXPORT_SYMBOL_GPL ( afhba_devices  )

◆ force_busmaster_mode()

void force_busmaster_mode ( struct AFHBA_DEV adev)

Definition at line 350 of file acq-fiber-hba.c.

◆ LIST_HEAD()

LIST_HEAD ( afhba_devices  )

◆ MODULE_AUTHOR()

MODULE_AUTHOR ( "Peter.Milne@d-tacq.com"  )

◆ MODULE_DESCRIPTION()

MODULE_DESCRIPTION ( "D-TACQ ACQ-FIBER-HBA Driver for ACQ400"  )

◆ MODULE_DEVICE_TABLE()

MODULE_DEVICE_TABLE ( pci  ,
afhba_pci_tbl   
)

◆ module_exit()

module_exit ( afhba_exit_module  )

◆ module_init()

module_init ( afhba_init_module  )

◆ MODULE_LICENSE()

MODULE_LICENSE ( "GPL"  )

◆ module_param() [1/5]

module_param ( afhba4_stream  ,
int  ,
0444   
)

◆ module_param() [2/5]

module_param ( afhba_debug  ,
int  ,
0644   
)

◆ module_param() [3/5]

module_param ( afhba_nports  ,
int  ,
0444   
)

◆ module_param() [4/5]

module_param ( bad_bios_bar_limit  ,
int  ,
0644   
)

◆ module_param() [5/5]

module_param ( ll_mode_only  ,
int  ,
0444   
)

◆ null_stream_drv_init()

int null_stream_drv_init ( struct AFHBA_DEV adev)

Definition at line 426 of file acq-fiber-hba.c.

Variable Documentation

◆ afhba4_stream

int afhba4_stream = 0

Definition at line 59 of file acq-fiber-hba.c.

◆ afhba__copyright

char afhba__copyright[] = "Copyright (c) 2010/2014 D-TACQ Solutions Ltd"

Definition at line 33 of file acq-fiber-hba.c.

◆ afhba__driver_string

char afhba__driver_string[] = "D-TACQ ACQ-FIBER-HBA Driver for ACQ400"

Definition at line 31 of file acq-fiber-hba.c.

◆ afhba__driver_version

char afhba__driver_version[] = "B1113"

Definition at line 32 of file acq-fiber-hba.c.

◆ afhba_debug

int afhba_debug = 0

Definition at line 49 of file acq-fiber-hba.c.

◆ afhba_device_class

struct class* afhba_device_class

Definition at line 36 of file acq-fiber-hba.c.

◆ afhba_devnames

const char* afhba_devnames[MAXDEV]

Definition at line 41 of file acq-fiber-hba.c.

◆ afhba_driver_name

char afhba_driver_name[] = "afhba"

Definition at line 30 of file acq-fiber-hba.c.

◆ afhba_nports

int afhba_nports = 4

Definition at line 62 of file acq-fiber-hba.c.

◆ bad_bios_bar_limit

int bad_bios_bar_limit = 0

Definition at line 65 of file acq-fiber-hba.c.

◆ buffer_len

int buffer_len

Definition at line 77 of file afhba_stream_drv.c.

◆ ll_mode_only

int ll_mode_only = 1

Definition at line 53 of file acq-fiber-hba.c.