Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Enumerations | Functions
mthca_main.c File Reference
#include <linux/module.h>
#include <linux/init.h>
#include <linux/errno.h>
#include <linux/pci.h>
#include <linux/interrupt.h>
#include <linux/gfp.h>
#include "mthca_dev.h"
#include "mthca_config_reg.h"
#include "mthca_cmd.h"
#include "mthca_profile.h"
#include "mthca_memfree.h"
#include "mthca_wqe.h"

Go to the source code of this file.

Macros

#define msi_x   (0)
 
#define MTHCA_DEFAULT_NUM_QP   (1 << 16)
 
#define MTHCA_DEFAULT_RDB_PER_QP   (1 << 2)
 
#define MTHCA_DEFAULT_NUM_CQ   (1 << 16)
 
#define MTHCA_DEFAULT_NUM_MCG   (1 << 13)
 
#define MTHCA_DEFAULT_NUM_MPT   (1 << 17)
 
#define MTHCA_DEFAULT_NUM_MTT   (1 << 20)
 
#define MTHCA_DEFAULT_NUM_UDAV   (1 << 15)
 
#define MTHCA_DEFAULT_NUM_RESERVED_MTTS   (1 << 18)
 
#define MTHCA_DEFAULT_NUM_UARC_SIZE   (1 << 18)
 
#define MTHCA_FW_VER(major, minor, subminor)   (((u64) (major) << 32) | ((u64) (minor) << 16) | (u64) (subminor))
 
#define mthca_check_profile_val(name, default)   __mthca_check_profile_val(#name, &hca_profile.name, default)
 

Enumerations

enum  { TAVOR, ARBEL_COMPAT, ARBEL_NATIVE, SINAI }
 

Functions

 MODULE_AUTHOR ("Roland Dreier")
 
 MODULE_DESCRIPTION ("Mellanox InfiniBand HCA low-level driver")
 
 MODULE_LICENSE ("Dual BSD/GPL")
 
 MODULE_VERSION (DRV_VERSION)
 
 module_param (tune_pci, int, 0444)
 
 MODULE_PARM_DESC (tune_pci,"increase PCI burst from the default set by BIOS if nonzero")
 
 DEFINE_MUTEX (mthca_device_mutex)
 
 module_param_named (num_qp, hca_profile.num_qp, int, 0444)
 
 MODULE_PARM_DESC (num_qp,"maximum number of QPs per HCA")
 
 module_param_named (rdb_per_qp, hca_profile.rdb_per_qp, int, 0444)
 
 MODULE_PARM_DESC (rdb_per_qp,"number of RDB buffers per QP")
 
 module_param_named (num_cq, hca_profile.num_cq, int, 0444)
 
 MODULE_PARM_DESC (num_cq,"maximum number of CQs per HCA")
 
 module_param_named (num_mcg, hca_profile.num_mcg, int, 0444)
 
 MODULE_PARM_DESC (num_mcg,"maximum number of multicast groups per HCA")
 
 module_param_named (num_mpt, hca_profile.num_mpt, int, 0444)
 
 MODULE_PARM_DESC (num_mpt,"maximum number of memory protection table entries per HCA")
 
 module_param_named (num_mtt, hca_profile.num_mtt, int, 0444)
 
 MODULE_PARM_DESC (num_mtt,"maximum number of memory translation table segments per HCA")
 
 module_param_named (num_udav, hca_profile.num_udav, int, 0444)
 
 MODULE_PARM_DESC (num_udav,"maximum number of UD address vectors per HCA")
 
 module_param_named (fmr_reserved_mtts, hca_profile.fmr_reserved_mtts, int, 0444)
 
 MODULE_PARM_DESC (fmr_reserved_mtts,"number of memory translation table segments reserved for FMR")
 
 module_param_named (log_mtts_per_seg, log_mtts_per_seg, int, 0444)
 
 MODULE_PARM_DESC (log_mtts_per_seg,"Log2 number of MTT entries per segment (1-5)")
 
int __mthca_restart_one (struct pci_dev *pdev)
 
 MODULE_DEVICE_TABLE (pci, mthca_pci_table)
 
 module_init (mthca_init)
 
 module_exit (mthca_cleanup)
 

Macro Definition Documentation

#define msi_x   (0)

Definition at line 70 of file mthca_main.c.

#define mthca_check_profile_val (   name,
  default 
)    __mthca_check_profile_val(#name, &hca_profile.name, default)

Definition at line 1223 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_CQ   (1 << 16)

Definition at line 82 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_MCG   (1 << 13)

Definition at line 83 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_MPT   (1 << 17)

Definition at line 84 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_MTT   (1 << 20)

Definition at line 85 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_QP   (1 << 16)

Definition at line 80 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_RESERVED_MTTS   (1 << 18)

Definition at line 87 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_UARC_SIZE   (1 << 18)

Definition at line 88 of file mthca_main.c.

#define MTHCA_DEFAULT_NUM_UDAV   (1 << 15)

Definition at line 86 of file mthca_main.c.

#define MTHCA_DEFAULT_RDB_PER_QP   (1 << 2)

Definition at line 81 of file mthca_main.c.

#define MTHCA_FW_VER (   major,
  minor,
  subminor 
)    (((u64) (major) << 32) | ((u64) (minor) << 16) | (u64) (subminor))

Definition at line 884 of file mthca_main.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
TAVOR 
ARBEL_COMPAT 
ARBEL_NATIVE 
SINAI 

Definition at line 877 of file mthca_main.c.

Function Documentation

int __mthca_restart_one ( struct pci_dev pdev)

Definition at line 1129 of file mthca_main.c.

DEFINE_MUTEX ( mthca_device_mutex  )
MODULE_AUTHOR ( "Roland Dreier"  )
MODULE_DESCRIPTION ( "Mellanox InfiniBand HCA low-level driver )
MODULE_DEVICE_TABLE ( pci  ,
mthca_pci_table   
)
module_exit ( mthca_cleanup  )
module_init ( mthca_init  )
MODULE_LICENSE ( "Dual BSD/GPL"  )
module_param ( tune_pci  ,
int  ,
0444   
)
module_param_named ( num_qp  ,
hca_profile.  num_qp,
int  ,
0444   
)
module_param_named ( rdb_per_qp  ,
hca_profile.  rdb_per_qp,
int  ,
0444   
)
module_param_named ( num_cq  ,
hca_profile.  num_cq,
int  ,
0444   
)
module_param_named ( num_mcg  ,
hca_profile.  num_mcg,
int  ,
0444   
)
module_param_named ( num_mpt  ,
hca_profile.  num_mpt,
int  ,
0444   
)
module_param_named ( num_mtt  ,
hca_profile.  num_mtt,
int  ,
0444   
)
module_param_named ( num_udav  ,
hca_profile.  num_udav,
int  ,
0444   
)
module_param_named ( fmr_reserved_mtts  ,
hca_profile.  fmr_reserved_mtts,
int  ,
0444   
)
module_param_named ( log_mtts_per_seg  ,
log_mtts_per_seg  ,
int  ,
0444   
)
MODULE_PARM_DESC ( tune_pci  ,
"increase PCI burst from the default set by BIOS if nonzero"   
)
MODULE_PARM_DESC ( num_qp  ,
"maximum number of QPs per HCA"   
)
MODULE_PARM_DESC ( rdb_per_qp  ,
"number of RDB buffers per QP"   
)
MODULE_PARM_DESC ( num_cq  ,
"maximum number of CQs per HCA"   
)
MODULE_PARM_DESC ( num_mcg  ,
"maximum number of multicast groups per HCA"   
)
MODULE_PARM_DESC ( num_mpt  ,
"maximum number of memory protection table entries per HCA"   
)
MODULE_PARM_DESC ( num_mtt  ,
"maximum number of memory translation table segments per HCA"   
)
MODULE_PARM_DESC ( num_udav  ,
"maximum number of UD address vectors per HCA"   
)
MODULE_PARM_DESC ( fmr_reserved_mtts  ,
"number of memory translation table segments reserved for FMR  
)
MODULE_PARM_DESC ( log_mtts_per_seg  ,
"Log2 number of MTT entries per segment (1-5)"   
)
MODULE_VERSION ( DRV_VERSION  )

Variable Documentation

u32 flags

Definition at line 889 of file mthca_main.c.

u64 latest_fw

Definition at line 888 of file mthca_main.c.