Lines Matching full:mailbox
47 * lpfc_mbox_rsrc_prep - Prepare a mailbox with DMA buffer memory.
49 * @mbox: pointer to the driver internal queue element for mailbox command.
51 * A mailbox command consists of the pool memory for the command, @mbox, and
86 * lpfc_mbox_rsrc_cleanup - Free the mailbox DMA buffer and virtual memory.
88 * @mbox: pointer to the driver internal queue element for mailbox command.
91 * A mailbox command consists of the pool memory for the command, @mbox, and
123 * @pmb: pointer to the driver internal queue element for mailbox command.
126 * The dump mailbox command provides a method for the device driver to obtain
129 * This routine prepares the mailbox command for dumping list of static
150 /* For SLI3 HBAs data is embedded in mailbox */ in lpfc_dump_static_vport()
176 * @pmb: pointer to the driver internal queue element for mailbox command.
178 * This routine prepares a mailbox command to bring down HBA link.
191 * lpfc_dump_mem - Prepare a mailbox command for reading a region.
193 * @pmb: pointer to the driver internal queue element for mailbox command.
197 * The dump mailbox command provides a method for the device driver to obtain
200 * This routine prepares the mailbox command for dumping HBA's config region.
225 * lpfc_dump_wakeup_param - Prepare mailbox command for retrieving wakeup params
227 * @pmb: pointer to the driver internal queue element for mailbox command.
229 * This function create a dump memory mailbox command to dump wake up
255 * lpfc_read_nv - Prepare a mailbox command for reading HBA's NVRAM param
257 * @pmb: pointer to the driver internal queue element for mailbox command.
259 * The read NVRAM mailbox command returns the HBA's non-volatile parameters
262 * This routine prepares the mailbox command for reading information stored
278 * lpfc_config_async - Prepare a mailbox command for enabling HBA async event
280 * @pmb: pointer to the driver internal queue element for mailbox command.
283 * The asynchronous event enable mailbox command is used to enable the
287 * This routine prepares the mailbox command for enabling HBA asynchronous
305 * lpfc_heart_beat - Prepare a mailbox command for heart beat
307 * @pmb: pointer to the driver internal queue element for mailbox command.
309 * The heart beat mailbox command is used to detect an unresponsive HBA, which
310 * is defined as any device where no error attention is sent and both mailbox
313 * This routine prepares the mailbox command for issuing a heart beat in the
314 * form of mailbox command to the HBA. The timely completion of the heart
315 * beat mailbox command indicates the health of the HBA.
330 * lpfc_read_topology - Prepare a mailbox command for reading HBA topology
332 * @pmb: pointer to the driver internal queue element for mailbox command.
335 * The read topology mailbox command is issued to read the link topology
342 * This routine prepares the mailbox command for reading HBA link topology
345 * memory as part of the execution of the mailbox command.
366 * the FW knows this mailbox is available for processing. in lpfc_read_topology()
374 * lpfc_clear_la - Prepare a mailbox command for clearing HBA link attention
376 * @pmb: pointer to the driver internal queue element for mailbox command.
378 * The clear link attention mailbox command is issued to clear the link event
382 * The current event tag is read using the read link attention event mailbox
385 * This routine prepares the mailbox command for clearing HBA link attention
403 * lpfc_config_link - Prepare a mailbox command for configuring link on a HBA
405 * @pmb: pointer to the driver internal queue element for mailbox command.
407 * The configure link mailbox command is used before the initialize link
408 * mailbox command to override default value and to configure link-oriented
414 * This routine prepares the mailbox command for configuring link on a HBA.
456 * lpfc_config_msi - Prepare a mailbox command for configuring msi-x
458 * @pmb: pointer to the driver internal queue element for mailbox command.
460 * The configure MSI-X mailbox command is used to configure the HBA's SLI-3
489 /* Clear mailbox command fields */ in lpfc_config_msi()
534 * lpfc_init_link - Prepare a mailbox command for initialize link on a HBA
536 * @pmb: pointer to the driver internal queue element for mailbox command.
540 * The initialize link mailbox command is used to initialize the Fibre
544 * This routine prepares the mailbox command for initializing link on a HBA
645 * lpfc_read_sparam - Prepare a mailbox command for reading HBA parameters
647 * @pmb: pointer to the driver internal queue element for mailbox command.
650 * The read service parameter mailbox command is used to read the HBA port
652 * specified directly by a BDE in the mailbox command. These service
656 * This routine prepares the mailbox command for reading HBA port service
658 * are populated into the mailbox command for the HBA to DMA the service
696 * lpfc_unreg_did - Prepare a mailbox command for unregistering DID
700 * @pmb: pointer to the driver internal queue element for mailbox command.
702 * The unregister DID mailbox command is used to unregister an N_Port/F_Port
707 * This routine prepares the mailbox command for unregistering a remote
731 * lpfc_read_config - Prepare a mailbox command for reading HBA configuration
733 * @pmb: pointer to the driver internal queue element for mailbox command.
735 * The read configuration mailbox command is used to read the HBA port
736 * configuration parameters. This mailbox command provides a method for
738 * mailbox commands.
740 * This routine prepares the mailbox command for reading out HBA configuration
757 * lpfc_read_lnk_stat - Prepare a mailbox command for reading HBA link stats
759 * @pmb: pointer to the driver internal queue element for mailbox command.
761 * The read link status mailbox command is used to read the link status from
766 * This routine prepares the mailbox command for reading out HBA link status.
782 * lpfc_reg_rpi - Prepare a mailbox command for registering remote login
787 * @pmb: pointer to the driver internal queue element for mailbox command.
790 * The registration login mailbox command is used to register an N_Port or
797 * This routine prepares the mailbox command for registering remote port login.
799 * HBA with the mailbox command.
840 /* Finish initializing the mailbox. */ in lpfc_reg_rpi()
850 * lpfc_unreg_login - Prepare a mailbox command for unregistering remote login
854 * @pmb: pointer to the driver internal queue element for mailbox command.
856 * The unregistration login mailbox command is used to unregister an N_Port
860 * This routine prepares the mailbox command for unregistering remote port
890 * This routine sends mailbox command to unregister all active RPIs for
922 * lpfc_reg_vpi - Prepare a mailbox command for registering vport identifier
924 * @pmb: pointer to the driver internal queue element for mailbox command.
926 * The registration vport identifier mailbox command is used to activate a
932 * This routine prepares the mailbox command for registering a virtual N_Port.
966 * lpfc_unreg_vpi - Prepare a mailbox command for unregistering vport id
969 * @pmb: pointer to the driver internal queue element for mailbox command.
971 * The unregistration vport identifier mailbox command is used to inactivate
975 * any active exchanges. The HBA will post the mailbox response after making
978 * This routine prepares the mailbox command for unregistering a virtual
1066 * lpfc_read_rev - Prepare a mailbox command for reading HBA revision
1068 * @pmb: pointer to the driver internal queue element for mailbox command.
1070 * The read revision mailbox command is used to read the revision levels of
1076 * This routine prepares the mailbox command for reading HBA revision
1113 * @hbqmb: pointer to the HBQ configuration data structure in mailbox command.
1132 * @hbqmb: pointer to the HBQ configuration data structure in mailbox command.
1154 * @hbqmb: pointer to the HBQ configuration data structure in mailbox command.
1176 * lpfc_config_hbq - Prepare a mailbox command for configuring an HBQ
1181 * @pmb: pointer to the driver internal queue element for mailbox command.
1183 * The configure HBQ (Host Buffer Queue) mailbox command is used to configure
1187 * This routine prepares the mailbox command for configuring an HBQ.
1250 * lpfc_config_ring - Prepare a mailbox command for configuring an IOCB ring
1253 * @pmb: pointer to the driver internal queue element for mailbox command.
1255 * The configure ring mailbox command is used to configure an IOCB ring. This
1264 * This routine prepares the mailbox command for configuring IOCB ring.
1308 * lpfc_config_port - Prepare a mailbox command for configuring port
1310 * @pmb: pointer to the driver internal queue element for mailbox command.
1312 * The configure port mailbox command is used to identify the Port Control
1314 * driver must not access the mailbox in the HBA without first resetting
1319 * This routine prepares the mailbox command for configuring port.
1373 /* Setup Mailbox pointers */ in lpfc_config_port()
1406 * following the "non-diagnostic" mode mailbox (32 words, 0x80 bytes) in lpfc_config_port()
1495 * lpfc_kill_board - Prepare a mailbox command for killing board
1497 * @pmb: pointer to the driver internal queue element for mailbox command.
1499 * The kill board mailbox command is used to tell firmware to perform a
1501 * When the kill board mailbox command is received, the ER3 bit is set to 1
1506 * This routine prepares the mailbox command for killing the board in
1521 * lpfc_mbox_put - Put a mailbox cmd into the tail of driver's mailbox queue
1523 * @mbq: pointer to the driver internal queue element for mailbox command.
1525 * Driver maintains a internal mailbox command queue implemented as a linked
1526 * list. When a mailbox command is issued, it shall be put into the mailbox
1528 * one mailbox command at a time.
1545 * lpfc_mbox_get - Remove a mailbox cmd from the head of driver's mailbox queue
1548 * Driver maintains a internal mailbox command queue implemented as a linked
1549 * list. When a mailbox command is issued, it shall be put into the mailbox
1551 * one mailbox command at a time. After HBA finished processing a mailbox
1552 * command, the driver will remove a pending mailbox command from the head of
1553 * the mailbox command queue and send to the HBA for processing.
1556 * pointer to the driver internal queue element for mailbox command.
1572 * __lpfc_mbox_cmpl_put - Put mailbox cmd into mailbox cmd complete list
1574 * @mbq: pointer to the driver internal queue element for mailbox command.
1576 * This routine put the completed mailbox command into the mailbox command
1577 * complete list. This is the unlocked version of the routine. The mailbox
1578 * complete list is used by the driver worker thread to process mailbox
1588 * lpfc_mbox_cmpl_put - Put mailbox command into mailbox command complete list
1590 * @mbq: pointer to the driver internal queue element for mailbox command.
1592 * This routine put the completed mailbox command into the mailbox command
1593 * complete list. This is the locked version of the routine. The mailbox
1594 * complete list is used by the driver worker thread to process mailbox
1610 * lpfc_mbox_cmd_check - Check the validality of a mailbox command
1612 * @mboxq: pointer to the driver internal queue element for mailbox command.
1614 * This routine is to check whether a mailbox command is valid to be issued.
1615 * This check will be performed by both the mailbox issue API when a client
1616 * is to issue a mailbox command to the mailbox transport.
1623 /* Mailbox command that have a completion handler must also have a in lpfc_mbox_cmd_check()
1640 * lpfc_mbox_dev_check - Check the device state for issuing a mailbox command
1644 * mailbox command. It is used by the mailbox transport API at the time the
1645 * to post a mailbox command to the device.
1664 * lpfc_mbox_tmo_val - Retrieve mailbox command timeout value
1666 * @mboxq: pointer to the driver internal queue element for mailbox command.
1668 * This routine retrieves the proper timeout value according to the mailbox
1672 * Timeout value to be used for the given mailbox command
1727 * lpfc_sli4_mbx_sge_set - Set a sge entry in non-embedded mailbox command
1733 * This routine sets up an entry in the non-embedded mailbox command at the sge
1750 * lpfc_sli4_mbx_sge_get - Get a sge entry from non-embedded mailbox command
1753 * @sge: pointer to lpfc mailbox sge to load into.
1755 * This routine gets an entry from the non-embedded mailbox command at the sge
1772 * lpfc_sli4_mbox_cmd_free - Free a sli4 mailbox command
1776 * This routine cleans up and releases an SLI4 mailbox command that was
1814 /* Finally, free the mailbox command itself */ in lpfc_sli4_mbox_cmd_free()
1819 * lpfc_sli4_config - Initialize the SLI4 Config Mailbox command
1822 * @subsystem: The sli4 config sub mailbox subsystem.
1823 * @opcode: The sli4 config sub mailbox command opcode.
1824 * @length: Length of the sli4 config mailbox command (including sub-header).
1827 * This routine sets up the header fields of SLI4 specific mailbox command
1831 * for none embedded mailbox command).
1845 /* Set up SLI4 mailbox command header fields */ in lpfc_sli4_config()
1908 /* Set up main header fields in mailbox command */ in lpfc_sli4_config()
1935 * mailbox commands. It is called after lpfc_sli4_config. The caller must
1936 * pass an allocated mailbox and the attributes required to initialize the
1937 * mailbox correctly.
2007 * This routine gets the subsystem from a SLI4 specific SLI_CONFIG mailbox
2008 * command. If the mailbox command is not MBX_SLI4_CONFIG (0x9B) or if the
2040 * This routine gets the opcode from a SLI4 specific SLI_CONFIG mailbox
2041 * command. If the mailbox command is not MBX_SLI4_CONFIG (0x9B) or if
2074 * This routine routine allocates and constructs non-embedded mailbox command
2077 * Return: pointer to the mailbox command constructed if successful, otherwise
2097 /* Set up READ_FCF SLI4_CONFIG mailbox-ioctl command */ in lpfc_sli4_mbx_read_fcf_rec()
2127 * lpfc_request_features: Configure SLI4 REQUEST_FEATURES mailbox
2131 * This routine sets up the mailbox for an SLI4 REQUEST_FEATURES
2132 * mailbox command.
2137 /* Set up SLI4 mailbox command header fields */ in lpfc_request_features()
2169 * lpfc_init_vfi - Initialize the INIT_VFI mailbox command
2173 * This routine initializes @mbox to all zeros and then fills in the mailbox
2200 * lpfc_reg_vfi - Initialize the REG_VFI mailbox command
2205 * This routine initializes @mbox to all zeros and then fills in the mailbox
2279 * lpfc_init_vpi - Initialize the INIT_VPI mailbox command
2284 * The INIT_VPI mailbox command supports virtual N_Ports. The driver uses the
2302 * lpfc_unreg_vfi - Initialize the UNREG_VFI mailbox command
2306 * The UNREG_VFI mailbox command causes the SLI Host to put a virtual fabric
2309 * fabric. The SLI Port posts the mailbox response after marking the virtual
2326 * This function create a SLI4 dump mailbox command to dump configure
2459 * This function create a SLI4 dump mailbox command to dump configure
2495 * lpfc_reg_fcfi - Initialize the REG_FCFI mailbox command
2499 * The REG_FCFI mailbox command supports Fibre Channel Forwarders (FCFs). The
2501 * information via a READ_FCF mailbox command. This mailbox command also is used
2562 * lpfc_reg_fcfi_mrq - Initialize the REG_FCFI_MRQ mailbox command
2567 * The REG_FCFI_MRQ mailbox command supports Fibre Channel Forwarders (FCFs).
2569 * information via a READ_FCF mailbox command. This mailbox command also is used
2626 * lpfc_unreg_fcfi - Initialize the UNREG_FCFI mailbox command
2630 * The UNREG_FCFI mailbox command supports Fibre Channel Forwarders (FCFs).
2642 * lpfc_resume_rpi - Initialize the RESUME_RPI mailbox command
2646 * The RESUME_RPI mailbox command is used to restart I/O to an RPI after a