| /linux/drivers/ufs/host/ |
| H A D | ufs-renesas.c | 29 void (*pre_init)(struct ufs_hba *hba); 37 static void ufs_renesas_dbg_register_dump(struct ufs_hba *hba) in ufs_renesas_dbg_register_dump() argument 39 ufshcd_dump_regs(hba, 0xc0, 0x40, "regs: 0xc0 + "); in ufs_renesas_dbg_register_dump() 42 static void ufs_renesas_poll(struct ufs_hba *hba, u32 reg, u32 expected, u32 mask) in ufs_renesas_poll() argument 47 ret = readl_poll_timeout_atomic(hba->mmio_base + reg, in ufs_renesas_poll() 51 dev_err(hba->dev, "%s: poll failed %d (%08x, %08x, %08x)\n", in ufs_renesas_poll() 55 static u32 ufs_renesas_read(struct ufs_hba *hba, u32 reg) in ufs_renesas_read() argument 57 return ufshcd_readl(hba, reg); in ufs_renesas_read() 60 static void ufs_renesas_write(struct ufs_hba *hba, u32 reg, u32 value) in ufs_renesas_write() argument 62 ufshcd_writel(hba, value, reg); in ufs_renesas_write() [all …]
|
| H A D | ufs-mediatek.c | 31 static int ufs_mtk_config_mcq(struct ufs_hba *hba, bool irq); 32 static void _ufs_mtk_clk_scale(struct ufs_hba *hba, bool scale_up); 96 static bool ufs_mtk_is_boost_crypt_enabled(struct ufs_hba *hba) in ufs_mtk_is_boost_crypt_enabled() argument 98 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_boost_crypt_enabled() 103 static bool ufs_mtk_is_va09_supported(struct ufs_hba *hba) in ufs_mtk_is_va09_supported() argument 105 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_va09_supported() 110 static bool ufs_mtk_is_broken_vcc(struct ufs_hba *hba) in ufs_mtk_is_broken_vcc() argument 112 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_broken_vcc() 117 static bool ufs_mtk_is_pmc_via_fastauto(struct ufs_hba *hba) in ufs_mtk_is_pmc_via_fastauto() argument 119 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_pmc_via_fastauto() [all …]
|
| H A D | ufs-hisi.c | 25 static int ufs_hisi_check_hibern8(struct ufs_hba *hba) in ufs_hisi_check_hibern8() argument 33 err = ufshcd_dme_get(hba, UIC_ARG_MIB_SEL(MPHY_TX_FSM_STATE, 0), in ufs_hisi_check_hibern8() 35 err |= ufshcd_dme_get(hba, in ufs_hisi_check_hibern8() 50 err = ufshcd_dme_get(hba, UIC_ARG_MIB_SEL(MPHY_TX_FSM_STATE, 0), in ufs_hisi_check_hibern8() 52 err |= ufshcd_dme_get(hba, in ufs_hisi_check_hibern8() 57 dev_err(hba->dev, "%s: unable to get TX_FSM_STATE, err %d\n", in ufs_hisi_check_hibern8() 62 dev_err(hba->dev, "%s: invalid TX_FSM_STATE, lane0 = %d, lane1 = %d\n", in ufs_hisi_check_hibern8() 69 static void ufs_hisi_clk_init(struct ufs_hba *hba) in ufs_hisi_clk_init() argument 71 struct ufs_hisi_host *host = ufshcd_get_variant(hba); in ufs_hisi_clk_init() 83 static void ufs_hisi_soc_init(struct ufs_hba *hba) in ufs_hisi_soc_init() argument [all …]
|
| H A D | ufshcd-pci.c | 97 static int ufs_intel_hce_enable_notify(struct ufs_hba *hba, in ufs_intel_hce_enable_notify() argument 101 if (status == POST_CHANGE && hba->caps & UFSHCD_CAP_CRYPTO) { in ufs_intel_hce_enable_notify() 102 u32 hce = ufshcd_readl(hba, REG_CONTROLLER_ENABLE); in ufs_intel_hce_enable_notify() 105 ufshcd_writel(hba, hce, REG_CONTROLLER_ENABLE); in ufs_intel_hce_enable_notify() 111 static int ufs_intel_disable_lcc(struct ufs_hba *hba) in ufs_intel_disable_lcc() argument 116 ufshcd_dme_get(hba, attr, &lcc_enable); in ufs_intel_disable_lcc() 118 ufshcd_disable_host_tx_lcc(hba); in ufs_intel_disable_lcc() 123 static int ufs_intel_link_startup_notify(struct ufs_hba *hba, in ufs_intel_link_startup_notify() argument 130 err = ufs_intel_disable_lcc(hba); in ufs_intel_link_startup_notify() 141 static int ufs_intel_set_lanes(struct ufs_hba *hba, u32 lanes) in ufs_intel_set_lanes() argument [all …]
|
| H A D | cdns-pltfrm.c | 34 * @hba: per adapter instance 37 static void cdns_ufs_get_l4_attr(struct ufs_hba *hba) in cdns_ufs_get_l4_attr() argument 39 struct cdns_ufs_host *host = ufshcd_get_variant(hba); in cdns_ufs_get_l4_attr() 41 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PEERDEVICEID), in cdns_ufs_get_l4_attr() 43 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PEERCPORTID), in cdns_ufs_get_l4_attr() 45 ufshcd_dme_get(hba, UIC_ARG_MIB(T_TRAFFICCLASS), in cdns_ufs_get_l4_attr() 47 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PROTOCOLID), in cdns_ufs_get_l4_attr() 49 ufshcd_dme_get(hba, UIC_ARG_MIB(T_CPORTFLAGS), in cdns_ufs_get_l4_attr() 51 ufshcd_dme_get(hba, UIC_ARG_MIB(T_TXTOKENVALUE), in cdns_ufs_get_l4_attr() 53 ufshcd_dme_get(hba, UIC_ARG_MIB(T_RXTOKENVALUE), in cdns_ufs_get_l4_attr() [all …]
|
| H A D | ufs-sprd.c | 23 static struct ufs_sprd_priv *ufs_sprd_get_priv_data(struct ufs_hba *hba) in ufs_sprd_get_priv_data() argument 25 struct ufs_sprd_host *host = ufshcd_get_variant(hba); in ufs_sprd_get_priv_data() 43 static void ufs_sprd_get_unipro_ver(struct ufs_hba *hba) in ufs_sprd_get_unipro_ver() argument 45 struct ufs_sprd_host *host = ufshcd_get_variant(hba); in ufs_sprd_get_unipro_ver() 47 if (ufshcd_dme_get(hba, UIC_ARG_MIB(PA_LOCALVERINFO), &host->unipro_ver)) in ufs_sprd_get_unipro_ver() 51 static void ufs_sprd_ctrl_uic_compl(struct ufs_hba *hba, bool enable) in ufs_sprd_ctrl_uic_compl() argument 53 u32 set = ufshcd_readl(hba, REG_INTERRUPT_ENABLE); in ufs_sprd_ctrl_uic_compl() 59 ufshcd_writel(hba, set, REG_INTERRUPT_ENABLE); in ufs_sprd_ctrl_uic_compl() 95 static int ufs_sprd_parse_dt(struct device *dev, struct ufs_hba *hba, struct ufs_sprd_host *host) in ufs_sprd_parse_dt() argument 132 static int ufs_sprd_common_init(struct ufs_hba *hba) in ufs_sprd_common_init() argument [all …]
|
| H A D | ufs-rockchip.c | 31 static int ufs_rockchip_hce_enable_notify(struct ufs_hba *hba, in ufs_rockchip_hce_enable_notify() argument 34 struct ufs_rockchip_host *host = ufshcd_get_variant(hba); in ufs_rockchip_hce_enable_notify() 38 err = ufshcd_dme_reset(hba); in ufs_rockchip_hce_enable_notify() 42 err = ufshcd_dme_enable(hba); in ufs_rockchip_hce_enable_notify() 46 return ufshcd_vops_phy_initialization(hba); in ufs_rockchip_hce_enable_notify() 55 static void ufs_rockchip_set_pm_lvl(struct ufs_hba *hba) in ufs_rockchip_set_pm_lvl() argument 57 hba->rpm_lvl = UFS_PM_LVL_5; in ufs_rockchip_set_pm_lvl() 58 hba->spm_lvl = UFS_PM_LVL_5; in ufs_rockchip_set_pm_lvl() 61 static int ufs_rockchip_rk3576_phy_init(struct ufs_hba *hba) in ufs_rockchip_rk3576_phy_init() argument 63 struct ufs_rockchip_host *host = ufshcd_get_variant(hba); in ufs_rockchip_rk3576_phy_init() [all …]
|
| H A D | ufs-amd-versal2.c | 35 struct ufs_hba *hba; member 46 static int ufs_versal2_phy_reg_write(struct ufs_hba *hba, u32 addr, u32 val) in ufs_versal2_phy_reg_write() argument 62 return ufshcd_dwc_dme_set_attrs(hba, phy_write_attrs, ARRAY_SIZE(phy_write_attrs)); in ufs_versal2_phy_reg_write() 65 static int ufs_versal2_phy_reg_read(struct ufs_hba *hba, u32 addr, u32 *val) in ufs_versal2_phy_reg_read() argument 79 ret = ufshcd_dwc_dme_set_attrs(hba, phy_read_attrs, ARRAY_SIZE(phy_read_attrs)); in ufs_versal2_phy_reg_read() 83 ret = ufshcd_dme_get(hba, UIC_ARG_MIB(CBCREGRDLSB), &mib_val); in ufs_versal2_phy_reg_read() 88 ret = ufshcd_dme_get(hba, UIC_ARG_MIB(CBCREGRDMSB), &mib_val); in ufs_versal2_phy_reg_read() 97 static int ufs_versal2_enable_phy(struct ufs_hba *hba) in ufs_versal2_enable_phy() argument 102 ret = ufshcd_dme_set(hba, UIC_ARG_MIB(VS_MPHYDISABLE), 0); in ufs_versal2_enable_phy() 106 ret = ufshcd_dme_set(hba, UIC_ARG_MIB(VS_MPHYCFGUPDT), 1); in ufs_versal2_enable_phy() [all …]
|
| /linux/drivers/ufs/core/ |
| H A D | ufshcd.c | 114 static bool is_mcq_supported(struct ufs_hba *hba) in is_mcq_supported() argument 116 return hba->mcq_sup && use_mcq_mode; in is_mcq_supported() 173 int ufshcd_dump_regs(struct ufs_hba *hba, size_t offset, size_t len, in ufshcd_dump_regs() argument 191 regs[pos / 4] = ufshcd_readl(hba, offset + pos); in ufshcd_dump_regs() 279 static bool ufshcd_has_pending_tasks(struct ufs_hba *hba) in ufshcd_has_pending_tasks() argument 281 return hba->outstanding_tasks || hba->active_uic_cmd || in ufshcd_has_pending_tasks() 282 hba->uic_async_done; in ufshcd_has_pending_tasks() 285 static bool ufshcd_is_ufs_dev_busy(struct ufs_hba *hba) in ufshcd_is_ufs_dev_busy() argument 287 return (hba->scsi_host_added && scsi_host_busy(hba->host)) || in ufshcd_is_ufs_dev_busy() 288 ufshcd_has_pending_tasks(hba); in ufshcd_is_ufs_dev_busy() [all …]
|
| H A D | ufs-debugfs.c | 18 /* @file corresponds to a debugfs attribute in directory hba->debugfs_root. */ 36 struct ufs_hba *hba = hba_from_file(s->file); in ufs_debugfs_stats_show() local 37 struct ufs_event_hist *e = hba->ufs_stats.event; in ufs_debugfs_stats_show() 62 struct ufs_hba *hba = data; in ee_usr_mask_get() local 64 *val = hba->ee_usr_mask; in ee_usr_mask_get() 68 static int ufs_debugfs_get_user_access(struct ufs_hba *hba) in ufs_debugfs_get_user_access() argument 69 __acquires(&hba->host_sem) in ufs_debugfs_get_user_access() 71 down(&hba->host_sem); in ufs_debugfs_get_user_access() 72 if (!ufshcd_is_user_access_allowed(hba)) { in ufs_debugfs_get_user_access() 73 up(&hba->host_sem); in ufs_debugfs_get_user_access() [all …]
|
| H A D | ufshcd-crypto.c | 20 static void ufshcd_program_key(struct ufs_hba *hba, in ufshcd_program_key() argument 24 u32 slot_offset = hba->crypto_cfg_register + slot * sizeof(*cfg); in ufshcd_program_key() 26 ufshcd_hold(hba); in ufshcd_program_key() 29 ufshcd_writel(hba, 0, slot_offset + 16 * sizeof(cfg->reg_val[0])); in ufshcd_program_key() 31 ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[i]), in ufshcd_program_key() 35 ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[17]), in ufshcd_program_key() 38 ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[16]), in ufshcd_program_key() 40 ufshcd_release(hba); in ufshcd_program_key() 47 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); in ufshcd_crypto_keyslot_program() local 48 const union ufs_crypto_cap_entry *ccap_array = hba->crypto_cap_array; in ufshcd_crypto_keyslot_program() [all …]
|
| H A D | ufs_trace.h | 86 TP_PROTO(struct ufs_hba *hba, int state), 88 TP_ARGS(hba, state), 91 __field(struct ufs_hba *, hba) 96 __entry->hba = hba; 101 dev_name(__entry->hba->dev), 107 TP_PROTO(struct ufs_hba *hba, const char *state, const char *clk, 110 TP_ARGS(hba, state, clk, prev_state, curr_state), 113 __field(struct ufs_hba *, hba) 121 __entry->hba = hba; 129 dev_name(__entry->hba->dev), __get_str(state), __get_str(clk), [all …]
|
| H A D | ufs-hwmon.c | 14 struct ufs_hba *hba; member 18 static int ufs_read_temp_enable(struct ufs_hba *hba, u8 mask, long *val) in ufs_read_temp_enable() argument 23 err = ufshcd_query_attr(hba, UPIU_QUERY_OPCODE_READ_ATTR, QUERY_ATTR_IDN_EE_CONTROL, 0, 0, in ufs_read_temp_enable() 33 static int ufs_get_temp(struct ufs_hba *hba, enum attr_idn idn, long *val) in ufs_get_temp() argument 38 err = ufshcd_query_attr(hba, UPIU_QUERY_OPCODE_READ_ATTR, idn, 0, 0, &value); in ufs_get_temp() 54 struct ufs_hba *hba = data->hba; in ufs_hwmon_read() local 57 down(&hba->host_sem); in ufs_hwmon_read() 59 if (!ufshcd_is_user_access_allowed(hba)) { in ufs_hwmon_read() 60 up(&hba->host_sem); in ufs_hwmon_read() 64 ufshcd_rpm_get_sync(hba); in ufs_hwmon_read() [all …]
|
| H A D | ufs_bsg.c | 16 static int ufs_bsg_get_query_desc_size(struct ufs_hba *hba, int *desc_len, in ufs_bsg_get_query_desc_size() argument 29 static int ufs_bsg_alloc_desc_buffer(struct ufs_hba *hba, struct bsg_job *job, in ufs_bsg_alloc_desc_buffer() argument 42 if (ufs_bsg_get_query_desc_size(hba, desc_len, qr)) { in ufs_bsg_alloc_desc_buffer() 43 dev_err(hba->dev, "Illegal desc size\n"); in ufs_bsg_alloc_desc_buffer() 48 dev_err(hba->dev, "Illegal desc size\n"); in ufs_bsg_alloc_desc_buffer() 67 static int ufs_bsg_exec_advanced_rpmb_req(struct ufs_hba *hba, struct bsg_job *job) in ufs_bsg_exec_advanced_rpmb_req() argument 79 if (hba->ufs_version < ufshci_version(4, 0) || !hba->dev_info.b_advanced_rpmb_en) in ufs_bsg_exec_advanced_rpmb_req() 111 sg_cnt = dma_map_sg(hba->host->dma_dev, payload->sg_list, payload->sg_cnt, dir); in ufs_bsg_exec_advanced_rpmb_req() 118 ret = ufshcd_advanced_rpmb_req_handler(hba, &rpmb_request->bsg_request.upiu_req, in ufs_bsg_exec_advanced_rpmb_req() 123 dma_unmap_sg(hba->host->dma_dev, payload->sg_list, payload->sg_cnt, dir); in ufs_bsg_exec_advanced_rpmb_req() [all …]
|
| H A D | ufs-rpmb.c | 36 struct ufs_hba *hba; member 40 static int ufs_sec_submit(struct ufs_hba *hba, u16 spsp, void *buffer, size_t len, bool send) in ufs_sec_submit() argument 42 struct scsi_device *sdev = hba->ufs_rpmb_wlun; in ufs_sec_submit() 62 struct ufs_hba *hba; in ufs_rpmb_route_frames() local 70 hba = ufs_rpmb->hba; in ufs_rpmb_route_frames() 100 ret = ufs_sec_submit(hba, protocol_id, req, req_len, true); in ufs_rpmb_route_frames() 111 ret = ufs_sec_submit(hba, protocol_id, resp, resp_len, true); in ufs_rpmb_route_frames() 119 ret = ufs_sec_submit(hba, protocol_id, resp, resp_len, false); in ufs_rpmb_route_frames() 135 int ufs_rpmb_probe(struct ufs_hba *hba) in ufs_rpmb_probe() argument 144 if (!hba->ufs_rpmb_wlun || hba->dev_info.b_advanced_rpmb_en) { in ufs_rpmb_probe() [all …]
|
| H A D | ufshcd-crypto.h | 40 static inline int ufshcd_crypto_fill_prdt(struct ufs_hba *hba, in ufshcd_crypto_fill_prdt() argument 46 if (crypt_ctx && hba->vops && hba->vops->fill_crypto_prdt) in ufshcd_crypto_fill_prdt() 47 return hba->vops->fill_crypto_prdt(hba, crypt_ctx, in ufshcd_crypto_fill_prdt() 53 static inline void ufshcd_crypto_clear_prdt(struct ufs_hba *hba, in ufshcd_crypto_clear_prdt() argument 58 if (!(hba->quirks & UFSHCD_QUIRK_KEYS_IN_PRDT)) in ufshcd_crypto_clear_prdt() 66 ufshcd_sg_entry_size(hba) * scsi_sg_count(cmd)); in ufshcd_crypto_clear_prdt() 69 bool ufshcd_crypto_enable(struct ufs_hba *hba); 71 int ufshcd_hba_init_crypto_capabilities(struct ufs_hba *hba); 73 void ufshcd_init_crypto(struct ufs_hba *hba); 75 void ufshcd_crypto_register(struct ufs_hba *hba, struct request_queue *q); [all …]
|
| /linux/drivers/scsi/ |
| H A D | stex.c | 391 static struct status_msg *stex_get_status(struct st_hba *hba) in stex_get_status() argument 393 struct status_msg *status = hba->status_buffer + hba->status_tail; in stex_get_status() 395 ++hba->status_tail; in stex_get_status() 396 hba->status_tail %= hba->sts_count+1; in stex_get_status() 409 static struct req_msg *stex_alloc_req(struct st_hba *hba) in stex_alloc_req() argument 411 struct req_msg *req = hba->dma_mem + hba->req_head * hba->rq_size; in stex_alloc_req() 413 ++hba->req_head; in stex_alloc_req() 414 hba->req_head %= hba->rq_count+1; in stex_alloc_req() 419 static struct req_msg *stex_ss_alloc_req(struct st_hba *hba) in stex_ss_alloc_req() argument 421 return (struct req_msg *)(hba->dma_mem + in stex_ss_alloc_req() [all …]
|
| /linux/drivers/scsi/bnx2i/ |
| H A D | bnx2i_iscsi.c | 34 static int bnx2i_adapter_ready(struct bnx2i_hba *hba) in bnx2i_adapter_ready() argument 38 if (!hba || !test_bit(ADAPTER_STATE_UP, &hba->adapter_state) || in bnx2i_adapter_ready() 39 test_bit(ADAPTER_STATE_GOING_DOWN, &hba->adapter_state) || in bnx2i_adapter_ready() 40 test_bit(ADAPTER_STATE_LINK_DOWN, &hba->adapter_state)) in bnx2i_adapter_ready() 138 * @hba: adapter instance 143 static int bnx2i_map_scsi_sg(struct bnx2i_hba *hba, struct bnx2i_cmd *cmd) in bnx2i_map_scsi_sg() argument 190 bd_count = bnx2i_map_scsi_sg(cmd->conn->hba, cmd); in bnx2i_iscsi_map_sg_list() 230 * @hba: pointer to adapter instance 238 static int bnx2i_bind_conn_to_iscsi_cid(struct bnx2i_hba *hba, in bnx2i_bind_conn_to_iscsi_cid() argument 242 if (hba && hba->cid_que.conn_cid_tbl[iscsi_cid]) { in bnx2i_bind_conn_to_iscsi_cid() [all …]
|
| H A D | bnx2i_init.c | 75 * @hba: Adapter structure pointer 82 void bnx2i_identify_device(struct bnx2i_hba *hba, struct cnic_dev *dev) in bnx2i_identify_device() argument 84 hba->cnic_dev_type = 0; in bnx2i_identify_device() 86 if (hba->pci_did == PCI_DEVICE_ID_NX2_5706 || in bnx2i_identify_device() 87 hba->pci_did == PCI_DEVICE_ID_NX2_5706S) { in bnx2i_identify_device() 88 set_bit(BNX2I_NX2_DEV_5706, &hba->cnic_dev_type); in bnx2i_identify_device() 89 } else if (hba->pci_did == PCI_DEVICE_ID_NX2_5708 || in bnx2i_identify_device() 90 hba->pci_did == PCI_DEVICE_ID_NX2_5708S) { in bnx2i_identify_device() 91 set_bit(BNX2I_NX2_DEV_5708, &hba->cnic_dev_type); in bnx2i_identify_device() 92 } else if (hba->pci_did == PCI_DEVICE_ID_NX2_5709 || in bnx2i_identify_device() [all …]
|
| H A D | bnx2i_hwi.c | 34 if (test_bit(BNX2I_NX2_DEV_57710, &ep->hba->cnic_dev_type)) in bnx2i_get_cid_num() 44 * @hba: Adapter for which adjustments is to be made 48 static void bnx2i_adjust_qp_size(struct bnx2i_hba *hba) in bnx2i_adjust_qp_size() argument 52 if (test_bit(BNX2I_NX2_DEV_5706, &hba->cnic_dev_type) || in bnx2i_adjust_qp_size() 53 test_bit(BNX2I_NX2_DEV_5708, &hba->cnic_dev_type) || in bnx2i_adjust_qp_size() 54 test_bit(BNX2I_NX2_DEV_5709, &hba->cnic_dev_type)) { in bnx2i_adjust_qp_size() 55 if (!is_power_of_2(hba->max_sqes)) in bnx2i_adjust_qp_size() 56 hba->max_sqes = rounddown_pow_of_two(hba->max_sqes); in bnx2i_adjust_qp_size() 58 if (!is_power_of_2(hba->max_rqes)) in bnx2i_adjust_qp_size() 59 hba->max_rqes = rounddown_pow_of_two(hba->max_rqes); in bnx2i_adjust_qp_size() [all …]
|
| /linux/include/ufs/ |
| H A D | ufshcd.h | 100 #define ufshcd_is_link_off(hba) ((hba)->uic_link_state == UIC_LINK_OFF_STATE) argument 101 #define ufshcd_is_link_active(hba) ((hba)->uic_link_state == \ argument 103 #define ufshcd_is_link_hibern8(hba) ((hba)->uic_link_state == \ argument 105 #define ufshcd_is_link_broken(hba) ((hba)->uic_link_state == \ argument 107 #define ufshcd_set_link_off(hba) ((hba) argument 108 ufshcd_set_link_active(hba) global() argument 110 ufshcd_set_link_hibern8(hba) global() argument 112 ufshcd_set_link_broken(hba) global() argument 1163 ufshcd_mcq_opr_offset(struct ufs_hba * hba,enum ufshcd_mcq_opr opr,int idx) ufshcd_mcq_opr_offset() argument 1175 ufshcd_sg_entry_size(const struct ufs_hba * hba) ufshcd_sg_entry_size() argument 1180 ufshcd_set_sg_entry_size(struct ufs_hba * hba,size_t sg_entry_size) ufshcd_set_sg_entry_size() argument 1186 ufshcd_sg_entry_size(const struct ufs_hba * hba) ufshcd_sg_entry_size() argument 1191 ufshcd_set_sg_entry_size(hba,sg_entry_size) global() argument 1203 ufshcd_get_ucd_size(const struct ufs_hba * hba) ufshcd_get_ucd_size() argument 1209 ufshcd_is_clkgating_allowed(struct ufs_hba * hba) ufshcd_is_clkgating_allowed() argument 1213 ufshcd_can_hibern8_during_gating(struct ufs_hba * hba) ufshcd_can_hibern8_during_gating() argument 1217 ufshcd_is_clkscaling_supported(struct ufs_hba * hba) ufshcd_is_clkscaling_supported() argument 1221 ufshcd_can_autobkops_during_suspend(struct ufs_hba * hba) ufshcd_can_autobkops_during_suspend() argument 1225 ufshcd_is_rpm_autosuspend_allowed(struct ufs_hba * hba) ufshcd_is_rpm_autosuspend_allowed() argument 1230 ufshcd_is_intr_aggr_allowed(struct ufs_hba * hba) ufshcd_is_intr_aggr_allowed() argument 1236 ufshcd_can_aggressive_pc(struct ufs_hba * hba) ufshcd_can_aggressive_pc() argument 1242 ufshcd_is_auto_hibern8_supported(struct ufs_hba * hba) ufshcd_is_auto_hibern8_supported() argument 1248 ufshcd_is_auto_hibern8_enabled(struct ufs_hba * hba) ufshcd_is_auto_hibern8_enabled() argument 1253 ufshcd_is_wb_allowed(struct ufs_hba * hba) ufshcd_is_wb_allowed() argument 1258 ufshcd_enable_wb_if_scaling_up(struct ufs_hba * hba) ufshcd_enable_wb_if_scaling_up() argument 1263 ufsmcq_writel(hba,val,reg) global() argument 1265 ufsmcq_readl(hba,reg) global() argument 1268 ufsmcq_writelx(hba,val,reg) global() argument 1270 ufsmcq_readlx(hba,reg) global() argument 1273 ufshcd_writel(hba,val,reg) global() argument 1275 ufshcd_readl(hba,reg) global() argument 1285 ufshcd_rmwl(struct ufs_hba * hba,u32 mask,u32 val,u32 reg) ufshcd_rmwl() argument 1329 ufshcd_set_variant(struct ufs_hba * hba,void * variant) ufshcd_set_variant() argument 1339 ufshcd_get_variant(struct ufs_hba * hba) ufshcd_get_variant() argument 1376 ufshcd_dme_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_set() argument 1383 ufshcd_dme_st_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_st_set() argument 1390 ufshcd_dme_peer_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_peer_set() argument 1397 ufshcd_dme_peer_st_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_peer_st_set() argument 1404 ufshcd_dme_get(struct ufs_hba * hba,u32 attr_sel,u32 * mib_val) ufshcd_dme_get() argument 1410 ufshcd_dme_peer_get(struct ufs_hba * hba,u32 attr_sel,u32 * mib_val) ufshcd_dme_peer_get() argument 1424 ufshcd_disable_host_tx_lcc(struct ufs_hba * hba) ufshcd_disable_host_tx_lcc() argument 1458 ufshcd_vops_init(struct ufs_hba * hba) ufshcd_vops_init() argument 1466 ufshcd_vops_phy_initialization(struct ufs_hba * hba) ufshcd_vops_phy_initialization() argument [all...] |
| /linux/drivers/scsi/bnx2fc/ |
| H A D | bnx2fc_hwi.c | 20 static void bnx2fc_fastpath_notification(struct bnx2fc_hba *hba, 22 static void bnx2fc_process_ofld_cmpl(struct bnx2fc_hba *hba, 24 static void bnx2fc_process_enable_conn_cmpl(struct bnx2fc_hba *hba, 26 static void bnx2fc_init_failure(struct bnx2fc_hba *hba, u32 err_code); 27 static void bnx2fc_process_conn_destroy_cmpl(struct bnx2fc_hba *hba, 30 int bnx2fc_send_stat_req(struct bnx2fc_hba *hba) in bnx2fc_send_stat_req() argument 42 stat_req.stat_params_addr_lo = (u32) hba->stats_buf_dma; in bnx2fc_send_stat_req() 43 stat_req.stat_params_addr_hi = (u32) ((u64)hba->stats_buf_dma >> 32); in bnx2fc_send_stat_req() 47 if (hba->cnic && hba->cnic->submit_kwqes) in bnx2fc_send_stat_req() 48 rc = hba->cnic->submit_kwqes(hba->cnic, kwqe_arr, num_kwqes); in bnx2fc_send_stat_req() [all …]
|
| H A D | bnx2fc_fcoe.c | 78 static int bnx2fc_em_config(struct fc_lport *lport, struct bnx2fc_hba *hba); 79 static int bnx2fc_bind_adapter_devices(struct bnx2fc_hba *hba); 80 static void bnx2fc_unbind_adapter_devices(struct bnx2fc_hba *hba); 81 static int bnx2fc_bind_pcidev(struct bnx2fc_hba *hba); 82 static void bnx2fc_unbind_pcidev(struct bnx2fc_hba *hba); 93 static int bnx2fc_fw_init(struct bnx2fc_hba *hba); 94 static void bnx2fc_fw_destroy(struct bnx2fc_hba *hba); 193 struct bnx2fc_hba *hba = interface->hba; in bnx2fc_cleanup() local 198 mutex_lock(&hba->hba_mutex); in bnx2fc_cleanup() 199 spin_lock_bh(&hba->hba_lock); in bnx2fc_cleanup() [all …]
|
| H A D | bnx2fc_tgt.c | 22 static u32 bnx2fc_alloc_conn_id(struct bnx2fc_hba *hba, 24 static int bnx2fc_alloc_session_resc(struct bnx2fc_hba *hba, 26 static void bnx2fc_free_session_resc(struct bnx2fc_hba *hba, 28 static void bnx2fc_free_conn_id(struct bnx2fc_hba *hba, u32 conn_id); 86 struct bnx2fc_hba *hba = interface->hba; in bnx2fc_offload_session() local 100 rval = bnx2fc_alloc_session_resc(hba, tgt); in bnx2fc_offload_session() 157 bnx2fc_free_session_resc(hba, tgt); in bnx2fc_offload_session() 160 bnx2fc_free_conn_id(hba, tgt->fcoe_conn_id); in bnx2fc_offload_session() 293 struct bnx2fc_hba *hba = interface->hba; in bnx2fc_upload_session() local 299 * Called with hba->hba_mutex held. in bnx2fc_upload_session() [all …]
|
| /linux/drivers/target/ |
| H A D | target_core_hba.c | 5 * This file contains the TCM HBA Transport related functions. 111 struct se_hba *hba; in core_alloc_hba() local 114 hba = kzalloc_obj(*hba); in core_alloc_hba() 115 if (!hba) { in core_alloc_hba() 120 spin_lock_init(&hba->device_lock); in core_alloc_hba() 121 mutex_init(&hba->hba_access_mutex); in core_alloc_hba() 123 hba->hba_index = scsi_get_new_index(SCSI_INST_INDEX); in core_alloc_hba() 124 hba->hba_flags |= hba_flags; in core_alloc_hba() 126 hba->backend = core_get_backend(plugin_name); in core_alloc_hba() 127 if (!hba->backend) { in core_alloc_hba() [all …]
|