|
Linux Kernel
3.7.1
|
#include <linux/module.h>#include <linux/kernel.h>#include <linux/init.h>#include <linux/errno.h>#include <linux/blkdev.h>#include <linux/sched.h>#include <linux/workqueue.h>#include <linux/delay.h>#include <linux/pci.h>#include <linux/interrupt.h>#include <linux/aer.h>#include <linux/raid_class.h>#include <linux/slab.h>#include "mpt2sas_base.h"Go to the source code of this file.
Data Structures | |
| struct | sense_info |
| struct | fw_event_work |
| struct | _scsi_io_transfer |
Macros | |
| #define | RAID_CHANNEL 1 |
| #define | MPT2SAS_MAX_LUN (16895) |
| #define | MPT2SAS_TURN_ON_FAULT_LED (0xFFFC) |
| #define | MPT2SAS_PORT_ENABLE_COMPLETE (0xFFFD) |
| #define | MPT2SAS_REMOVE_UNRESPONDING_DEVICES (0xFFFF) |
| #define MPT2SAS_MAX_LUN (16895) |
Definition at line 105 of file mpt2sas_scsih.c.
| #define MPT2SAS_PORT_ENABLE_COMPLETE (0xFFFD) |
Definition at line 145 of file mpt2sas_scsih.c.
| #define MPT2SAS_REMOVE_UNRESPONDING_DEVICES (0xFFFF) |
Definition at line 146 of file mpt2sas_scsih.c.
| #define MPT2SAS_TURN_ON_FAULT_LED (0xFFFC) |
Definition at line 144 of file mpt2sas_scsih.c.
| #define RAID_CHANNEL 1 |
Definition at line 65 of file mpt2sas_scsih.c.
| LIST_HEAD | ( | mpt2sas_ioc_list | ) |
| MODULE_AUTHOR | ( | MPT2SAS_AUTHOR | ) |
| MODULE_DESCRIPTION | ( | MPT2SAS_DESCRIPTION | ) |
| MODULE_DEVICE_TABLE | ( | pci | , |
| scsih_pci_table | |||
| ) |
| module_exit | ( | _scsih_exit | ) |
| module_init | ( | _scsih_init | ) |
| MODULE_LICENSE | ( | "GPL" | ) |
| module_param | ( | max_sectors | , |
| ushort | , | ||
| 0 | |||
| ) |
| module_param | ( | max_lun | , |
| int | , | ||
| 0 | |||
| ) |
| module_param | ( | diag_buffer_enable | , |
| int | , | ||
| 0 | |||
| ) |
| module_param | ( | disable_discovery | , |
| int | , | ||
| 0 | |||
| ) |
| module_param | ( | prot_mask | , |
| int | , | ||
| 0 | |||
| ) |
| module_param_call | ( | logging_level | , |
| _scsih_set_debug_level | , | ||
| param_get_int | , | ||
| & | logging_level, | ||
| 0644 | |||
| ) |
| MODULE_PARM_DESC | ( | max_sectors | , |
| "max | sectors | ||
| ) |
| MODULE_PARM_DESC | ( | max_lun | , |
| " max | lun | ||
| ) |
| MODULE_PARM_DESC | ( | diag_buffer_enable | , |
| " post diag buffers ""(TRACE=1/SNAPSHOT=2/EXTENDED=4/default=0)" | |||
| ) |
| MODULE_PARM_DESC | ( | disable_discovery | , |
| " disable discovery " | |||
| ) |
| MODULE_PARM_DESC | ( | prot_mask | , |
| " host protection capabilities | mask | ||
| ) |
| MODULE_VERSION | ( | MPT2SAS_DRIVER_VERSION | ) |
| void mpt2sas_device_remove_by_sas_address | ( | struct MPT2SAS_ADAPTER * | ioc, |
| u64 | sas_address | ||
| ) |
mpt2sas_device_remove_by_sas_address - removing device object by sas address : per adapter object : device sas_address
Return nothing.
Definition at line 5379 of file mpt2sas_scsih.c.
| void mpt2sas_expander_remove | ( | struct MPT2SAS_ADAPTER * | ioc, |
| u64 | sas_address | ||
| ) |
mpt2sas_expander_remove - removing expander object : per adapter object : expander sas_address
Return nothing.
Definition at line 5043 of file mpt2sas_scsih.c.
| void mpt2sas_port_enable_complete | ( | struct MPT2SAS_ADAPTER * | ioc | ) |
mpt2sas_port_enable_complete - port enable completed (fake event) : per adapter object
Return nothing.
Definition at line 2855 of file mpt2sas_scsih.c.
| void mpt2sas_scsih_clear_tm_flag | ( | struct MPT2SAS_ADAPTER * | ioc, |
| u16 | handle | ||
| ) |
mpt2sas_scsih_clear_tm_flag - clear per target tm_busy : per adapter object : device handle
During taskmangement request, we need to freeze the device queue.
Definition at line 2321 of file mpt2sas_scsih.c.
| u8 mpt2sas_scsih_event_callback | ( | struct MPT2SAS_ADAPTER * | ioc, |
| u8 | msix_index, | ||
| u32 | reply | ||
| ) |
mpt2sas_scsih_event_callback - firmware event handler (called at ISR time) : per adapter object : MSIX table index supplied by the OS : reply message frame(lower 32bit addr) Context: interrupt.
This function merely adds a new work task into ioc->firmware_event_thread. The tasks are worked from _firmware_event_work in user context.
Return 1 meaning mf should be freed from _base_interrupt 0 means the mf is freed from this function.
Definition at line 7363 of file mpt2sas_scsih.c.
|
read |
mpt2sas_scsih_expander_find_by_handle - expander device search : per adapter object : expander handle (assigned by firmware) Context: Calling function should acquire ioc->sas_device_lock
This searches for expander device based on handle, then returns the sas_node object.
Definition at line 788 of file mpt2sas_scsih.c.
|
read |
mpt2sas_scsih_expander_find_by_sas_address - expander device search : per adapter object : sas address Context: Calling function should acquire ioc->sas_node_lock.
This searches for expander device based on sas_address, then returns the sas_node object.
Definition at line 813 of file mpt2sas_scsih.c.
| int mpt2sas_scsih_issue_tm | ( | struct MPT2SAS_ADAPTER * | ioc, |
| u16 | handle, | ||
| uint | channel, | ||
| uint | id, | ||
| uint | lun, | ||
| u8 | type, | ||
| u16 | smid_task, | ||
| ulong | timeout, | ||
| unsigned long | serial_number, | ||
| enum mutex_type | m_type | ||
| ) |
mpt2sas_scsih_issue_tm - main routine for sending tm requests : per adapter struct : device handle : the channel assigned by the OS : the id assigned by the OS : lun number : MPI2_SCSITASKMGMT_TASKTYPE__XXX (defined in mpi2_init.h) : smid assigned to the task : timeout in seconds : the serial_number from scmd : TM_MUTEX_ON or TM_MUTEX_OFF Context: user
A generic API for sending task management requests to firmware.
The callback index is set inside ioc->tm_cb_idx.
Return SUCCESS or FAILED.
Definition at line 2363 of file mpt2sas_scsih.c.
| void mpt2sas_scsih_reset_handler | ( | struct MPT2SAS_ADAPTER * | ioc, |
| int | reset_phase | ||
| ) |
mpt2sas_scsih_reset_handler - reset callback handler (for scsih) : per adapter object : phase
The handler for doing any required cleanup or initialization.
The reset phase can be MPT2_IOC_PRE_RESET, MPT2_IOC_AFTER_RESET, MPT2_IOC_DONE_RESET
Return nothing.
Definition at line 7231 of file mpt2sas_scsih.c.
|
read |
mpt2sas_scsih_sas_device_find_by_sas_address - sas device search : per adapter object : sas address Context: Calling function should acquire ioc->sas_device_lock
This searches for sas_device based on sas_address, then return sas_device object.
Definition at line 532 of file mpt2sas_scsih.c.
| void mpt2sas_scsih_set_tm_flag | ( | struct MPT2SAS_ADAPTER * | ioc, |
| u16 | handle | ||
| ) |
mpt2sas_scsih_set_tm_flag - set per target tm_busy : per adapter object : device handle
During taskmangement request, we need to freeze the device queue.
Definition at line 2293 of file mpt2sas_scsih.c.
1.8.2