// SPDX-License-Identifier: GPL-2.0-only /* * QLogic iSCSI HBA Driver * Copyright (c) 2003-2013 QLogic Corporation */ #include <scsi/iscsi_if.h> #include "ql4_def.h" #include "ql4_glbl.h" #include "ql4_dbg.h" #include "ql4_inline.h" static void ql4xxx_set_mac_number(struct scsi_qla_host *ha) { … } /** * qla4xxx_free_ddb - deallocate ddb * @ha: pointer to host adapter structure. * @ddb_entry: pointer to device database entry * * This routine marks a DDB entry INVALID **/ void qla4xxx_free_ddb(struct scsi_qla_host *ha, struct ddb_entry *ddb_entry) { … } /** * qla4xxx_init_response_q_entries() - Initializes response queue entries. * @ha: HA context * * Beginning of request ring has initialization control block already built * by nvram config routine. **/ static void qla4xxx_init_response_q_entries(struct scsi_qla_host *ha) { … } /** * qla4xxx_init_rings - initialize hw queues * @ha: pointer to host adapter structure. * * This routine initializes the internal queues for the specified adapter. * The QLA4010 requires us to restart the queues at index 0. * The QLA4000 doesn't care, so just default to QLA4010's requirement. **/ int qla4xxx_init_rings(struct scsi_qla_host *ha) { … } /** * qla4xxx_get_sys_info - validate adapter MAC address(es) * @ha: pointer to host adapter structure. * **/ int qla4xxx_get_sys_info(struct scsi_qla_host *ha) { … } /** * qla4xxx_init_local_data - initialize adapter specific local data * @ha: pointer to host adapter structure. * **/ static void qla4xxx_init_local_data(struct scsi_qla_host *ha) { … } static uint8_t qla4xxx_wait_for_ip_config(struct scsi_qla_host *ha) { … } static int qla4_80xx_is_minidump_dma_capable(struct scsi_qla_host *ha, struct qla4_8xxx_minidump_template_hdr *md_hdr) { … } /** * qla4xxx_alloc_fw_dump - Allocate memory for minidump data. * @ha: pointer to host adapter structure. **/ void qla4xxx_alloc_fw_dump(struct scsi_qla_host *ha) { … } static int qla4xxx_fw_ready(struct scsi_qla_host *ha) { … } /** * qla4xxx_init_firmware - initializes the firmware. * @ha: pointer to host adapter structure. * **/ static int qla4xxx_init_firmware(struct scsi_qla_host *ha) { … } static void qla4xxx_set_model_info(struct scsi_qla_host *ha) { … } static int qla4xxx_config_nvram(struct scsi_qla_host *ha) { … } /** * qla4_8xxx_pci_config() - Setup ISP82xx PCI configuration registers. * @ha: HA context */ void qla4_8xxx_pci_config(struct scsi_qla_host *ha) { … } void qla4xxx_pci_config(struct scsi_qla_host *ha) { … } static int qla4xxx_start_firmware_from_flash(struct scsi_qla_host *ha) { … } int ql4xxx_lock_drvr_wait(struct scsi_qla_host *a) { … } /** * qla4xxx_start_firmware - starts qla4xxx firmware * @ha: Pointer to host adapter structure. * * This routine performs the necessary steps to start the firmware for * the QLA4010 adapter. **/ int qla4xxx_start_firmware(struct scsi_qla_host *ha) { … } /** * qla4xxx_free_ddb_index - Free DDBs reserved by firmware * @ha: pointer to adapter structure * * Since firmware is not running in autoconnect mode the DDB indices should * be freed so that when login happens from user space there are free DDB * indices available. **/ void qla4xxx_free_ddb_index(struct scsi_qla_host *ha) { … } /** * qla4xxx_initialize_adapter - initiailizes hba * @ha: Pointer to host adapter structure. * @is_reset: Is this init path or reset path * * This routine parforms all of the steps necessary to initialize the adapter. * **/ int qla4xxx_initialize_adapter(struct scsi_qla_host *ha, int is_reset) { … } int qla4xxx_ddb_change(struct scsi_qla_host *ha, uint32_t fw_ddb_index, struct ddb_entry *ddb_entry, uint32_t state) { … } void qla4xxx_arm_relogin_timer(struct ddb_entry *ddb_entry) { … } int qla4xxx_flash_ddb_change(struct scsi_qla_host *ha, uint32_t fw_ddb_index, struct ddb_entry *ddb_entry, uint32_t state) { … } /** * qla4xxx_process_ddb_changed - process ddb state change * @ha: Pointer to host adapter structure. * @fw_ddb_index: Firmware's device database index * @state: Device state * @conn_err: Unused * * This routine processes a Decive Database Changed AEN Event. **/ int qla4xxx_process_ddb_changed(struct scsi_qla_host *ha, uint32_t fw_ddb_index, uint32_t state, uint32_t conn_err) { … } /** * qla4xxx_login_flash_ddb - Login to target (DDB) * @cls_session: Pointer to the session to login * * This routine logins to the target. * Issues setddb and conn open mbx **/ void qla4xxx_login_flash_ddb(struct iscsi_cls_session *cls_session) { … }