Home
last modified time | relevance | path

Searched full:hba (Results 1 – 25 of 253) sorted by relevance

1234567891011

/linux/drivers/ufs/core/
H A Dufshcd-priv.h9 static inline bool ufshcd_is_user_access_allowed(struct ufs_hba *hba) in ufshcd_is_user_access_allowed() argument
11 return !hba->shutting_down; in ufshcd_is_user_access_allowed()
14 void ufshcd_schedule_eh_work(struct ufs_hba *hba);
17 struct ufs_hba *hba) in ufshcd_keep_autobkops_enabled_except_suspend() argument
19 return hba->caps & UFSHCD_CAP_KEEP_AUTO_BKOPS_ENABLED_EXCEPT_SUSPEND; in ufshcd_keep_autobkops_enabled_except_suspend()
22 static inline u8 ufshcd_wb_get_query_index(struct ufs_hba *hba) in ufshcd_wb_get_query_index() argument
24 if (hba->dev_info.wb_buffer_type == WB_BUF_MODE_LU_DEDICATED) in ufshcd_wb_get_query_index()
25 return hba->dev_info.wb_dedicated_lu; in ufshcd_wb_get_query_index()
29 static inline bool ufshcd_is_wb_buf_flush_allowed(struct ufs_hba *hba) in ufshcd_is_wb_buf_flush_allowed() argument
31 return ufshcd_is_wb_allowed(hba) && in ufshcd_is_wb_buf_flush_allowed()
[all …]
H A Dufshcd.c112 static bool is_mcq_supported(struct ufs_hba *hba) in is_mcq_supported() argument
114 return hba->mcq_sup && use_mcq_mode; in is_mcq_supported()
171 int ufshcd_dump_regs(struct ufs_hba *hba, size_t offset, size_t len, in ufshcd_dump_regs() argument
189 regs[pos / 4] = ufshcd_readl(hba, offset + pos); in ufshcd_dump_regs()
277 static bool ufshcd_has_pending_tasks(struct ufs_hba *hba) in ufshcd_has_pending_tasks() argument
279 return hba->outstanding_tasks || hba->active_uic_cmd || in ufshcd_has_pending_tasks()
280 hba->uic_async_done; in ufshcd_has_pending_tasks()
283 static bool ufshcd_is_ufs_dev_busy(struct ufs_hba *hba) in ufshcd_is_ufs_dev_busy() argument
285 return scsi_host_busy(hba->host) || ufshcd_has_pending_tasks(hba); in ufshcd_is_ufs_dev_busy()
320 static irqreturn_t ufshcd_tmc_handler(struct ufs_hba *hba);
[all …]
H A Dufs-sysfs.c137 struct ufs_hba *hba = dev_get_drvdata(dev); in ufs_sysfs_pm_lvl_store() local
138 struct ufs_dev_info *dev_info = &hba->dev_info; in ufs_sysfs_pm_lvl_store()
148 (!(hba->caps & UFSHCD_CAP_DEEPSLEEP) || in ufs_sysfs_pm_lvl_store()
152 spin_lock_irqsave(hba->host->host_lock, flags); in ufs_sysfs_pm_lvl_store()
154 hba->rpm_lvl = value; in ufs_sysfs_pm_lvl_store()
156 hba->spm_lvl = value; in ufs_sysfs_pm_lvl_store()
157 spin_unlock_irqrestore(hba->host->host_lock, flags); in ufs_sysfs_pm_lvl_store()
164 struct ufs_hba *hba = dev_get_drvdata(dev); in rpm_lvl_show() local
166 return sysfs_emit(buf, "%d\n", hba->rpm_lvl); in rpm_lvl_show()
178 struct ufs_hba *hba = dev_get_drvdata(dev); in rpm_target_dev_state_show() local
[all …]
H A Dufs-debugfs.c18 /* @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 Dufshcd-crypto.c20 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 Dufs-hwmon.c14 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 Dufs_bsg.c16 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 Dufshcd-crypto.h40 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
56 if (!(hba->quirks & UFSHCD_QUIRK_KEYS_IN_PRDT)) in ufshcd_crypto_clear_prdt()
64 ufshcd_sg_entry_size(hba) * scsi_sg_count(lrbp->cmd)); in ufshcd_crypto_clear_prdt()
67 bool ufshcd_crypto_enable(struct ufs_hba *hba);
69 int ufshcd_hba_init_crypto_capabilities(struct ufs_hba *hba);
71 void ufshcd_init_crypto(struct ufs_hba *hba);
73 void ufshcd_crypto_register(struct ufs_hba *hba, struct request_queue *q);
[all …]
/linux/drivers/ufs/host/
H A Dufs-renesas.c29 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 Dufs-hisi.c25 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 Dufshcd-pci.c95 static int ufs_intel_hce_enable_notify(struct ufs_hba *hba, in ufs_intel_hce_enable_notify() argument
99 if (status == POST_CHANGE && hba->caps & UFSHCD_CAP_CRYPTO) { in ufs_intel_hce_enable_notify()
100 u32 hce = ufshcd_readl(hba, REG_CONTROLLER_ENABLE); in ufs_intel_hce_enable_notify()
103 ufshcd_writel(hba, hce, REG_CONTROLLER_ENABLE); in ufs_intel_hce_enable_notify()
109 static int ufs_intel_disable_lcc(struct ufs_hba *hba) in ufs_intel_disable_lcc() argument
114 ufshcd_dme_get(hba, attr, &lcc_enable); in ufs_intel_disable_lcc()
116 ufshcd_disable_host_tx_lcc(hba); in ufs_intel_disable_lcc()
121 static int ufs_intel_link_startup_notify(struct ufs_hba *hba, in ufs_intel_link_startup_notify() argument
128 err = ufs_intel_disable_lcc(hba); in ufs_intel_link_startup_notify()
139 static int ufs_intel_set_lanes(struct ufs_hba *hba, u32 lanes) in ufs_intel_set_lanes() argument
[all …]
H A Dcdns-pltfrm.c34 * @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 Dufs-rockchip.c23 static int ufs_rockchip_hce_enable_notify(struct ufs_hba *hba, in ufs_rockchip_hce_enable_notify() argument
29 err = ufshcd_dme_reset(hba); in ufs_rockchip_hce_enable_notify()
33 err = ufshcd_dme_enable(hba); in ufs_rockchip_hce_enable_notify()
37 return ufshcd_vops_phy_initialization(hba); in ufs_rockchip_hce_enable_notify()
43 static void ufs_rockchip_set_pm_lvl(struct ufs_hba *hba) in ufs_rockchip_set_pm_lvl() argument
45 hba->rpm_lvl = UFS_PM_LVL_5; in ufs_rockchip_set_pm_lvl()
46 hba->spm_lvl = UFS_PM_LVL_5; in ufs_rockchip_set_pm_lvl()
49 static int ufs_rockchip_rk3576_phy_init(struct ufs_hba *hba) in ufs_rockchip_rk3576_phy_init() argument
51 struct ufs_rockchip_host *host = ufshcd_get_variant(hba); in ufs_rockchip_rk3576_phy_init()
53 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(PA_LOCAL_TX_LCC_ENABLE, 0x0), 0x0); in ufs_rockchip_rk3576_phy_init()
[all …]
H A Dufs-sprd.c23 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 Dufshcd-dwc.c18 int ufshcd_dwc_dme_set_attrs(struct ufs_hba *hba, in ufshcd_dwc_dme_set_attrs() argument
25 ret = ufshcd_dme_set_attr(hba, v[attr_node].attr_sel, in ufshcd_dwc_dme_set_attrs()
38 * @hba: Private Structure pointer
42 static void ufshcd_dwc_program_clk_div(struct ufs_hba *hba, u32 divider_val) in ufshcd_dwc_program_clk_div() argument
44 ufshcd_writel(hba, divider_val, DWC_UFS_REG_HCLKDIV); in ufshcd_dwc_program_clk_div()
49 * @hba: private structure pointer
53 static int ufshcd_dwc_link_is_up(struct ufs_hba *hba) in ufshcd_dwc_link_is_up() argument
57 ufshcd_dme_get(hba, UIC_ARG_MIB(VS_POWERSTATE), &dme_result); in ufshcd_dwc_link_is_up()
60 ufshcd_set_link_active(hba); in ufshcd_dwc_link_is_up()
69 * @hba: pointer to drivers private data
[all …]
H A Dtc-dwc-g210.c21 * @hba: Pointer to drivers structure
25 static int tc_dwc_g210_setup_40bit_rmmi(struct ufs_hba *hba) in tc_dwc_g210_setup_40bit_rmmi() argument
78 return ufshcd_dwc_dme_set_attrs(hba, setup_attrs, in tc_dwc_g210_setup_40bit_rmmi()
84 * @hba: Pointer to drivers structure
88 static int tc_dwc_g210_setup_20bit_rmmi_lane0(struct ufs_hba *hba) in tc_dwc_g210_setup_20bit_rmmi_lane0() argument
130 return ufshcd_dwc_dme_set_attrs(hba, setup_attrs, in tc_dwc_g210_setup_20bit_rmmi_lane0()
136 * @hba: Pointer to drivers structure
140 static int tc_dwc_g210_setup_20bit_rmmi_lane1(struct ufs_hba *hba) in tc_dwc_g210_setup_20bit_rmmi_lane1() argument
187 ufshcd_dme_get(hba, UIC_ARG_MIB(PA_AVAILRXDATALANES), in tc_dwc_g210_setup_20bit_rmmi_lane1()
189 ufshcd_dme_get(hba, UIC_ARG_MIB(PA_AVAILTXDATALANES), in tc_dwc_g210_setup_20bit_rmmi_lane1()
[all …]
/linux/drivers/scsi/
H A Dhptiop.c39 static int iop_send_sync_msg(struct hptiop_hba *hba, u32 msg, u32 millisec);
40 static void hptiop_finish_scsi_req(struct hptiop_hba *hba, u32 tag,
42 static void hptiop_host_request_callback_itl(struct hptiop_hba *hba, u32 tag);
43 static void hptiop_iop_request_callback_itl(struct hptiop_hba *hba, u32 tag);
44 static void hptiop_message_callback(struct hptiop_hba *hba, u32 msg);
46 static int iop_wait_ready_itl(struct hptiop_hba *hba, u32 millisec) in iop_wait_ready_itl() argument
52 req = readl(&hba->u.itl.iop->inbound_queue); in iop_wait_ready_itl()
59 writel(req, &hba->u.itl.iop->outbound_queue); in iop_wait_ready_itl()
60 readl(&hba->u.itl.iop->outbound_intstatus); in iop_wait_ready_itl()
67 static int iop_wait_ready_mv(struct hptiop_hba *hba, u32 millisec) in iop_wait_ready_mv() argument
[all …]
/linux/drivers/scsi/bnx2i/
H A Dbnx2i_iscsi.c34 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 Dbnx2i_init.c75 * @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 Dbnx2i_hwi.c34 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 Dufshcd.h100 #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
1187 ufshcd_mcq_opr_offset(struct ufs_hba * hba,enum ufshcd_mcq_opr opr,int idx) ufshcd_mcq_opr_offset() argument
1199 ufshcd_sg_entry_size(const struct ufs_hba * hba) ufshcd_sg_entry_size() argument
1204 ufshcd_set_sg_entry_size(struct ufs_hba * hba,size_t sg_entry_size) ufshcd_set_sg_entry_size() argument
1210 ufshcd_sg_entry_size(const struct ufs_hba * hba) ufshcd_sg_entry_size() argument
1215 ufshcd_set_sg_entry_size(hba,sg_entry_size) global() argument
1227 ufshcd_get_ucd_size(const struct ufs_hba * hba) ufshcd_get_ucd_size() argument
1233 ufshcd_is_clkgating_allowed(struct ufs_hba * hba) ufshcd_is_clkgating_allowed() argument
1237 ufshcd_can_hibern8_during_gating(struct ufs_hba * hba) ufshcd_can_hibern8_during_gating() argument
1241 ufshcd_is_clkscaling_supported(struct ufs_hba * hba) ufshcd_is_clkscaling_supported() argument
1245 ufshcd_can_autobkops_during_suspend(struct ufs_hba * hba) ufshcd_can_autobkops_during_suspend() argument
1249 ufshcd_is_rpm_autosuspend_allowed(struct ufs_hba * hba) ufshcd_is_rpm_autosuspend_allowed() argument
1254 ufshcd_is_intr_aggr_allowed(struct ufs_hba * hba) ufshcd_is_intr_aggr_allowed() argument
1260 ufshcd_can_aggressive_pc(struct ufs_hba * hba) ufshcd_can_aggressive_pc() argument
1266 ufshcd_is_auto_hibern8_supported(struct ufs_hba * hba) ufshcd_is_auto_hibern8_supported() argument
1272 ufshcd_is_auto_hibern8_enabled(struct ufs_hba * hba) ufshcd_is_auto_hibern8_enabled() argument
1277 ufshcd_is_wb_allowed(struct ufs_hba * hba) ufshcd_is_wb_allowed() argument
1282 ufshcd_enable_wb_if_scaling_up(struct ufs_hba * hba) ufshcd_enable_wb_if_scaling_up() argument
1287 ufsmcq_writel(hba,val,reg) global() argument
1289 ufsmcq_readl(hba,reg) global() argument
1292 ufsmcq_writelx(hba,val,reg) global() argument
1294 ufsmcq_readlx(hba,reg) global() argument
1297 ufshcd_writel(hba,val,reg) global() argument
1299 ufshcd_readl(hba,reg) global() argument
1309 ufshcd_rmwl(struct ufs_hba * hba,u32 mask,u32 val,u32 reg) ufshcd_rmwl() argument
1353 ufshcd_set_variant(struct ufs_hba * hba,void * variant) ufshcd_set_variant() argument
1363 ufshcd_get_variant(struct ufs_hba * hba) ufshcd_get_variant() argument
1400 ufshcd_dme_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_set() argument
1407 ufshcd_dme_st_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_st_set() argument
1414 ufshcd_dme_peer_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_peer_set() argument
1421 ufshcd_dme_peer_st_set(struct ufs_hba * hba,u32 attr_sel,u32 mib_val) ufshcd_dme_peer_st_set() argument
1428 ufshcd_dme_get(struct ufs_hba * hba,u32 attr_sel,u32 * mib_val) ufshcd_dme_get() argument
1434 ufshcd_dme_peer_get(struct ufs_hba * hba,u32 attr_sel,u32 * mib_val) ufshcd_dme_peer_get() argument
1448 ufshcd_disable_host_tx_lcc(struct ufs_hba * hba) ufshcd_disable_host_tx_lcc() argument
1485 ufshcd_vops_init(struct ufs_hba * hba) ufshcd_vops_init() argument
1493 ufshcd_vops_phy_initialization(struct ufs_hba * hba) ufshcd_vops_phy_initialization() argument
[all...]
/linux/drivers/scsi/bnx2fc/
H A Dbnx2fc_hwi.c20 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 Dbnx2fc_fcoe.c78 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 Dbnx2fc_tgt.c22 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 Dtarget_core_hba.c5 * This file contains the TCM HBA Transport related functions.
111 struct se_hba *hba; in core_alloc_hba() local
114 hba = kzalloc(sizeof(*hba), GFP_KERNEL); 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 …]

1234567891011