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.
228 * lpfc_dump_wakeup_param - Prepare mailbox command for retrieving wakeup params
230 * @pmb: pointer to the driver internal queue element for mailbox command.
232 * This function create a dump memory mailbox command to dump wake up
262 * lpfc_read_nv - Prepare a mailbox command for reading HBA's NVRAM param
264 * @pmb: pointer to the driver internal queue element for mailbox command.
266 * The read NVRAM mailbox command returns the HBA's non-volatile parameters
269 * This routine prepares the mailbox command for reading information stored
285 * lpfc_config_async - Prepare a mailbox command for enabling HBA async event
287 * @pmb: pointer to the driver internal queue element for mailbox command.
290 * The asynchronous event enable mailbox command is used to enable the
294 * This routine prepares the mailbox command for enabling HBA asynchronous
312 * lpfc_heart_beat - Prepare a mailbox command for heart beat
314 * @pmb: pointer to the driver internal queue element for mailbox command.
316 * The heart beat mailbox command is used to detect an unresponsive HBA, which
317 * is defined as any device where no error attention is sent and both mailbox
320 * This routine prepares the mailbox command for issuing a heart beat in the
321 * form of mailbox command to the HBA. The timely completion of the heart
322 * beat mailbox command indicates the health of the HBA.
337 * lpfc_read_topology - Prepare a mailbox command for reading HBA topology
339 * @pmb: pointer to the driver internal queue element for mailbox command.
342 * The read topology mailbox command is issued to read the link topology
349 * This routine prepares the mailbox command for reading HBA link topology
352 * memory as part of the execution of the mailbox command.
373 * the FW knows this mailbox is available for processing. in lpfc_read_topology()
381 * lpfc_clear_la - Prepare a mailbox command for clearing HBA link attention
383 * @pmb: pointer to the driver internal queue element for mailbox command.
385 * The clear link attention mailbox command is issued to clear the link event
389 * The current event tag is read using the read link attention event mailbox
392 * This routine prepares the mailbox command for clearing HBA link attention
410 * lpfc_config_link - Prepare a mailbox command for configuring link on a HBA
412 * @pmb: pointer to the driver internal queue element for mailbox command.
414 * The configure link mailbox command is used before the initialize link
415 * mailbox command to override default value and to configure link-oriented
421 * This routine prepares the mailbox command for configuring link on a HBA.
463 * lpfc_config_msi - Prepare a mailbox command for configuring msi-x
465 * @pmb: pointer to the driver internal queue element for mailbox command.
467 * The configure MSI-X mailbox command is used to configure the HBA's SLI-3
496 /* Clear mailbox command fields */ in lpfc_config_msi()
541 * lpfc_init_link - Prepare a mailbox command for initialize link on a HBA
543 * @pmb: pointer to the driver internal queue element for mailbox command.
547 * The initialize link mailbox command is used to initialize the Fibre
551 * This routine prepares the mailbox command for initializing link on a HBA
652 * lpfc_read_sparam - Prepare a mailbox command for reading HBA parameters
654 * @pmb: pointer to the driver internal queue element for mailbox command.
657 * The read service parameter mailbox command is used to read the HBA port
659 * specified directly by a BDE in the mailbox command. These service
663 * This routine prepares the mailbox command for reading HBA port service
665 * are populated into the mailbox command for the HBA to DMA the service
703 * lpfc_unreg_did - Prepare a mailbox command for unregistering DID
707 * @pmb: pointer to the driver internal queue element for mailbox command.
709 * The unregister DID mailbox command is used to unregister an N_Port/F_Port
714 * This routine prepares the mailbox command for unregistering a remote
738 * lpfc_read_config - Prepare a mailbox command for reading HBA configuration
740 * @pmb: pointer to the driver internal queue element for mailbox command.
742 * The read configuration mailbox command is used to read the HBA port
743 * configuration parameters. This mailbox command provides a method for
745 * mailbox commands.
747 * This routine prepares the mailbox command for reading out HBA configuration
764 * lpfc_read_lnk_stat - Prepare a mailbox command for reading HBA link stats
766 * @pmb: pointer to the driver internal queue element for mailbox command.
768 * The read link status mailbox command is used to read the link status from
773 * This routine prepares the mailbox command for reading out HBA link status.
789 * lpfc_reg_rpi - Prepare a mailbox command for registering remote login
794 * @pmb: pointer to the driver internal queue element for mailbox command.
797 * The registration login mailbox command is used to register an N_Port or
804 * This routine prepares the mailbox command for registering remote port login.
806 * HBA with the mailbox command.
847 /* Finish initializing the mailbox. */ in lpfc_reg_rpi()
857 * lpfc_unreg_login - Prepare a mailbox command for unregistering remote login
861 * @pmb: pointer to the driver internal queue element for mailbox command.
863 * The unregistration login mailbox command is used to unregister an N_Port
867 * This routine prepares the mailbox command for unregistering remote port
897 * This routine sends mailbox command to unregister all active RPIs for
929 * lpfc_reg_vpi - Prepare a mailbox command for registering vport identifier
931 * @pmb: pointer to the driver internal queue element for mailbox command.
933 * The registration vport identifier mailbox command is used to activate a
939 * This routine prepares the mailbox command for registering a virtual N_Port.
973 * lpfc_unreg_vpi - Prepare a mailbox command for unregistering vport id
976 * @pmb: pointer to the driver internal queue element for mailbox command.
978 * The unregistration vport identifier mailbox command is used to inactivate
982 * any active exchanges. The HBA will post the mailbox response after making
985 * This routine prepares the mailbox command for unregistering a virtual
1073 * lpfc_read_rev - Prepare a mailbox command for reading HBA revision
1075 * @pmb: pointer to the driver internal queue element for mailbox command.
1077 * The read revision mailbox command is used to read the revision levels of
1083 * This routine prepares the mailbox command for reading HBA revision
1120 * @hbqmb: pointer to the HBQ configuration data structure in mailbox command.
1139 * @hbqmb: pointer to the HBQ configuration data structure in mailbox command.
1161 * @hbqmb: pointer to the HBQ configuration data structure in mailbox command.
1183 * lpfc_config_hbq - Prepare a mailbox command for configuring an HBQ
1188 * @pmb: pointer to the driver internal queue element for mailbox command.
1190 * The configure HBQ (Host Buffer Queue) mailbox command is used to configure
1194 * This routine prepares the mailbox command for configuring an HBQ.
1257 * lpfc_config_ring - Prepare a mailbox command for configuring an IOCB ring
1260 * @pmb: pointer to the driver internal queue element for mailbox command.
1262 * The configure ring mailbox command is used to configure an IOCB ring. This
1271 * This routine prepares the mailbox command for configuring IOCB ring.
1315 * lpfc_config_port - Prepare a mailbox command for configuring port
1317 * @pmb: pointer to the driver internal queue element for mailbox command.
1319 * The configure port mailbox command is used to identify the Port Control
1321 * driver must not access the mailbox in the HBA without first resetting
1326 * This routine prepares the mailbox command for configuring port.
1380 /* Setup Mailbox pointers */ in lpfc_config_port()
1413 * following the "non-diagnostic" mode mailbox (32 words, 0x80 bytes) in lpfc_config_port()
1502 * lpfc_kill_board - Prepare a mailbox command for killing board
1504 * @pmb: pointer to the driver internal queue element for mailbox command.
1506 * The kill board mailbox command is used to tell firmware to perform a
1508 * When the kill board mailbox command is received, the ER3 bit is set to 1
1513 * This routine prepares the mailbox command for killing the board in
1528 * lpfc_mbox_put - Put a mailbox cmd into the tail of driver's mailbox queue
1530 * @mbq: pointer to the driver internal queue element for mailbox command.
1532 * Driver maintains a internal mailbox command queue implemented as a linked
1533 * list. When a mailbox command is issued, it shall be put into the mailbox
1535 * one mailbox command at a time.
1552 * lpfc_mbox_get - Remove a mailbox cmd from the head of driver's mailbox queue
1555 * Driver maintains a internal mailbox command queue implemented as a linked
1556 * list. When a mailbox command is issued, it shall be put into the mailbox
1558 * one mailbox command at a time. After HBA finished processing a mailbox
1559 * command, the driver will remove a pending mailbox command from the head of
1560 * the mailbox command queue and send to the HBA for processing.
1563 * pointer to the driver internal queue element for mailbox command.
1579 * __lpfc_mbox_cmpl_put - Put mailbox cmd into mailbox cmd complete list
1581 * @mbq: pointer to the driver internal queue element for mailbox command.
1583 * This routine put the completed mailbox command into the mailbox command
1584 * complete list. This is the unlocked version of the routine. The mailbox
1585 * complete list is used by the driver worker thread to process mailbox
1595 * lpfc_mbox_cmpl_put - Put mailbox command into mailbox command complete list
1597 * @mbq: pointer to the driver internal queue element for mailbox command.
1599 * This routine put the completed mailbox command into the mailbox command
1600 * complete list. This is the locked version of the routine. The mailbox
1601 * complete list is used by the driver worker thread to process mailbox
1617 * lpfc_mbox_cmd_check - Check the validality of a mailbox command
1619 * @mboxq: pointer to the driver internal queue element for mailbox command.
1621 * This routine is to check whether a mailbox command is valid to be issued.
1622 * This check will be performed by both the mailbox issue API when a client
1623 * is to issue a mailbox command to the mailbox transport.
1630 /* Mailbox command that have a completion handler must also have a in lpfc_mbox_cmd_check()
1647 * lpfc_mbox_dev_check - Check the device state for issuing a mailbox command
1651 * mailbox command. It is used by the mailbox transport API at the time the
1652 * to post a mailbox command to the device.
1671 * lpfc_mbox_tmo_val - Retrieve mailbox command timeout value
1673 * @mboxq: pointer to the driver internal queue element for mailbox command.
1675 * This routine retrieves the proper timeout value according to the mailbox
1679 * Timeout value to be used for the given mailbox command
1734 * lpfc_sli4_mbx_sge_set - Set a sge entry in non-embedded mailbox command
1740 * This routine sets up an entry in the non-embedded mailbox command at the sge
1757 * lpfc_sli4_mbx_sge_get - Get a sge entry from non-embedded mailbox command
1760 * @sge: pointer to lpfc mailbox sge to load into.
1762 * This routine gets an entry from the non-embedded mailbox command at the sge
1779 * lpfc_sli4_mbox_cmd_free - Free a sli4 mailbox command
1783 * This routine cleans up and releases an SLI4 mailbox command that was
1819 /* Finally, free the mailbox command itself */ in lpfc_sli4_mbox_cmd_free()
1824 * lpfc_sli4_config - Initialize the SLI4 Config Mailbox command
1827 * @subsystem: The sli4 config sub mailbox subsystem.
1828 * @opcode: The sli4 config sub mailbox command opcode.
1829 * @length: Length of the sli4 config mailbox command (including sub-header).
1832 * This routine sets up the header fields of SLI4 specific mailbox command
1836 * for none embedded mailbox command).
1850 /* Set up SLI4 mailbox command header fields */ in lpfc_sli4_config()
1913 /* Set up main header fields in mailbox command */ in lpfc_sli4_config()
1940 * mailbox commands. It is called after lpfc_sli4_config. The caller must
1941 * pass an allocated mailbox and the attributes required to initialize the
1942 * mailbox correctly.
2012 * This routine gets the subsystem from a SLI4 specific SLI_CONFIG mailbox
2013 * command. If the mailbox command is not MBX_SLI4_CONFIG (0x9B) or if the
2045 * This routine gets the opcode from a SLI4 specific SLI_CONFIG mailbox
2046 * command. If the mailbox command is not MBX_SLI4_CONFIG (0x9B) or if
2079 * This routine routine allocates and constructs non-embedded mailbox command
2082 * Return: pointer to the mailbox command constructed if successful, otherwise
2102 /* Set up READ_FCF SLI4_CONFIG mailbox-ioctl command */ in lpfc_sli4_mbx_read_fcf_rec()
2132 * lpfc_request_features: Configure SLI4 REQUEST_FEATURES mailbox
2136 * This routine sets up the mailbox for an SLI4 REQUEST_FEATURES
2137 * mailbox command.
2142 /* Set up SLI4 mailbox command header fields */ in lpfc_request_features()
2174 * lpfc_init_vfi - Initialize the INIT_VFI mailbox command
2178 * This routine initializes @mbox to all zeros and then fills in the mailbox
2205 * lpfc_reg_vfi - Initialize the REG_VFI mailbox command
2210 * This routine initializes @mbox to all zeros and then fills in the mailbox
2284 * lpfc_init_vpi - Initialize the INIT_VPI mailbox command
2289 * The INIT_VPI mailbox command supports virtual N_Ports. The driver uses the
2307 * lpfc_unreg_vfi - Initialize the UNREG_VFI mailbox command
2311 * The UNREG_VFI mailbox command causes the SLI Host to put a virtual fabric
2314 * fabric. The SLI Port posts the mailbox response after marking the virtual
2331 * This function create a SLI4 dump mailbox command to dump configure
2467 * This function create a SLI4 dump mailbox command to dump configure
2503 * lpfc_reg_fcfi - Initialize the REG_FCFI mailbox command
2507 * The REG_FCFI mailbox command supports Fibre Channel Forwarders (FCFs). The
2509 * information via a READ_FCF mailbox command. This mailbox command also is used
2570 * lpfc_reg_fcfi_mrq - Initialize the REG_FCFI_MRQ mailbox command
2575 * The REG_FCFI_MRQ mailbox command supports Fibre Channel Forwarders (FCFs).
2577 * information via a READ_FCF mailbox command. This mailbox command also is used
2634 * lpfc_unreg_fcfi - Initialize the UNREG_FCFI mailbox command
2638 * The UNREG_FCFI mailbox command supports Fibre Channel Forwarders (FCFs).
2650 * lpfc_resume_rpi - Initialize the RESUME_RPI mailbox command
2654 * The RESUME_RPI mailbox command is used to restart I/O to an RPI after a