Merge git://oss.sgi.com:8090/xfs/xfs-2.6
[linux-drm-fsl-dcu.git] / drivers / scsi / megaraid / mega_common.h
index 8cd0bd1d0f7c1b65393e8bf240e6ac8fdd28a37b..26e1e6c55654e0a71b4e272eac98ec6a43ec90fd 100644 (file)
 
 /**
  * scb_t - scsi command control block
- * @param ccb          : command control block for individual driver
- * @param list         : list of control blocks
- * @param gp           : general purpose field for LLDs
- * @param sno          : all SCBs have a serial number
- * @param scp          : associated scsi command
- * @param state                : current state of scb
- * @param dma_dir      : direction of data transfer
- * @param dma_type     : transfer with sg list, buffer, or no data transfer
- * @param dev_channel  : actual channel on the device
- * @param dev_target   : actual target on the device
- * @param status       : completion status
+ * @ccb                        : command control block for individual driver
+ * @list               : list of control blocks
+ * @gp                 : general purpose field for LLDs
+ * @sno                        : all SCBs have a serial number
+ * @scp                        : associated scsi command
+ * @state              : current state of scb
+ * @dma_dir            : direction of data transfer
+ * @dma_type           : transfer with sg list, buffer, or no data transfer
+ * @dev_channel                : actual channel on the device
+ * @dev_target         : actual target on the device
+ * @status             : completion status
  *
  * This is our central data structure to issue commands the each driver.
  * Driver specific data structures are maintained in the ccb field.
@@ -99,42 +99,42 @@ typedef struct {
 
 /**
  * struct adapter_t - driver's initialization structure
- * @param dpc_h                        : tasklet handle
- * @param pdev                 : pci configuration pointer for kernel
- * @param host                 : pointer to host structure of mid-layer
- * @param lock                 : synchronization lock for mid-layer and driver
- * @param quiescent            : driver is quiescent for now.
- * @param outstanding_cmds     : number of commands pending in the driver
- * @param kscb_list            : pointer to the bulk of SCBs pointers for IO
- * @param kscb_pool            : pool of free scbs for IO
- * @param kscb_pool_lock       : lock for pool of free scbs
- * @param pend_list            : pending commands list
- * @param pend_list_lock       : exlusion lock for pending commands list
- * @param completed_list       : list of completed commands
- * @param completed_list_lock  : exclusion lock for list of completed commands
- * @param sglen                        : max sg elements supported
- * @param device_ids           : to convert kernel device addr to our devices.
- * @param raid_device          : raid adapter specific pointer
- * @param max_channel          : maximum channel number supported - inclusive
- * @param max_target           : max target supported - inclusive
- * @param max_lun              : max lun supported - inclusive
- * @param unique_id            : unique identifier for each adapter
- * @param irq                  : IRQ for this adapter
- * @param ito                  : internal timeout value, (-1) means no timeout
- * @param ibuf                 : buffer to issue internal commands
- * @param ibuf_dma_h           : dma handle for the above buffer
- * @param uscb_list            : SCB pointers for user cmds, common mgmt module
- * @param uscb_pool            : pool of SCBs for user commands
- * @param uscb_pool_lock       : exclusion lock for these SCBs
- * @param max_cmds             : max outstanding commands
- * @param fw_version           : firmware version
- * @param bios_version         : bios version
- * @param max_cdb_sz           : biggest CDB size supported.
- * @param ha                   : is high availability present - clustering
- * @param init_id              : initiator ID, the default value should be 7
- * @param max_sectors          : max sectors per request
- * @param cmd_per_lun          : max outstanding commands per LUN
- * @param being_detached       : set when unloading, no more mgmt calls
+ * @aram dpc_h                 : tasklet handle
+ * @pdev                       : pci configuration pointer for kernel
+ * @host                       : pointer to host structure of mid-layer
+ * @lock                       : synchronization lock for mid-layer and driver
+ * @quiescent                  : driver is quiescent for now.
+ * @outstanding_cmds           : number of commands pending in the driver
+ * @kscb_list                  : pointer to the bulk of SCBs pointers for IO
+ * @kscb_pool                  : pool of free scbs for IO
+ * @kscb_pool_lock             : lock for pool of free scbs
+ * @pend_list                  : pending commands list
+ * @pend_list_lock             : exclusion lock for pending commands list
+ * @completed_list             : list of completed commands
+ * @completed_list_lock                : exclusion lock for list of completed commands
+ * @sglen                      : max sg elements supported
+ * @device_ids                 : to convert kernel device addr to our devices.
+ * @raid_device                        : raid adapter specific pointer
+ * @max_channel                        : maximum channel number supported - inclusive
+ * @max_target                 : max target supported - inclusive
+ * @max_lun                    : max lun supported - inclusive
+ * @unique_id                  : unique identifier for each adapter
+ * @irq                                : IRQ for this adapter
+ * @ito                                : internal timeout value, (-1) means no timeout
+ * @ibuf                       : buffer to issue internal commands
+ * @ibuf_dma_h                 : dma handle for the above buffer
+ * @uscb_list                  : SCB pointers for user cmds, common mgmt module
+ * @uscb_pool                  : pool of SCBs for user commands
+ * @uscb_pool_lock             : exclusion lock for these SCBs
+ * @max_cmds                   : max outstanding commands
+ * @fw_version                 : firmware version
+ * @bios_version               : bios version
+ * @max_cdb_sz                 : biggest CDB size supported.
+ * @ha                         : is high availability present - clustering
+ * @init_id                    : initiator ID, the default value should be 7
+ * @max_sectors                        : max sectors per request
+ * @cmd_per_lun                        : max outstanding commands per LUN
+ * @being_detached             : set when unloading, no more mgmt calls
  *
  *
  * mraid_setup_device_map() can be called anytime after the device map is
@@ -175,7 +175,7 @@ typedef struct {
        uint8_t                 max_lun;
 
        uint32_t                unique_id;
-       uint8_t                 irq;
+       int                     irq;
        uint8_t                 ito;
        caddr_t                 ibuf;
        dma_addr_t              ibuf_dma_h;
@@ -211,23 +211,23 @@ typedef struct {
 #define SCP2ADAPTER(scp)       (adapter_t *)SCSIHOST2ADAP(SCP2HOST(scp))
 
 
-/**
- * MRAID_GET_DEVICE_MAP - device ids
- * @param adp          - Adapter's soft state
- * @param scp          - mid-layer scsi command pointer
- * @param p_chan       - physical channel on the controller
- * @param target       - target id of the device or logical drive number
- * @param islogical    - set if the command is for the logical drive
- *
- * Macro to retrieve information about device class, logical or physical and
- * the corresponding physical channel and target or logical drive number
- **/
 #define MRAID_IS_LOGICAL(adp, scp)     \
        (SCP2CHANNEL(scp) == (adp)->max_channel) ? 1 : 0
 
 #define MRAID_IS_LOGICAL_SDEV(adp, sdev)       \
        (sdev->channel == (adp)->max_channel) ? 1 : 0
 
+/**
+ * MRAID_GET_DEVICE_MAP - device ids
+ * @adp                        : adapter's soft state
+ * @scp                        : mid-layer scsi command pointer
+ * @p_chan             : physical channel on the controller
+ * @target             : target id of the device or logical drive number
+ * @islogical          : set if the command is for the logical drive
+ *
+ * Macro to retrieve information about device class, logical or physical and
+ * the corresponding physical channel and target or logical drive number
+ */
 #define MRAID_GET_DEVICE_MAP(adp, scp, p_chan, target, islogical)      \
        /*                                                              \
         * Is the request coming for the virtual channel                \
@@ -271,10 +271,10 @@ typedef struct {
 #define ASSERT(expression)
 #endif
 
-/*
+/**
  * struct mraid_pci_blk - structure holds DMA memory block info
- * @param vaddr                : virtual address to a memory block
- * @param dma_addr     : DMA handle to a memory block
+ * @vaddr              : virtual address to a memory block
+ * @dma_addr           : DMA handle to a memory block
  *
  * This structure is filled up for the caller. It is the responsibilty of the
  * caller to allocate this array big enough to store addresses for all