| /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-qcom.c | 129 static unsigned long ufs_qcom_opp_freq_to_clk_freq(struct ufs_hba *hba, 131 static int ufs_qcom_set_core_clk_ctrl(struct ufs_hba *hba, bool is_scale_up, unsigned long freq); 146 struct ufs_hba *hba = host->hba; in ufs_qcom_config_ice_allocator() local 151 !(host->hba->caps & UFSHCD_CAP_CRYPTO)) in ufs_qcom_config_ice_allocator() 156 ufshcd_writel(hba, ICE_ALLOCATOR_TYPE, REG_UFS_MEM_ICE_CONFIG); in ufs_qcom_config_ice_allocator() 157 ufshcd_writel(hba, config, REG_UFS_MEM_ICE_NUM_CORE); in ufs_qcom_config_ice_allocator() 162 if (host->hba->caps & UFSHCD_CAP_CRYPTO) in ufs_qcom_ice_enable() 170 struct ufs_hba *hba = host->hba; in ufs_qcom_ice_init() local 245 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); ufs_qcom_ice_keyslot_program() local 259 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); ufs_qcom_ice_keyslot_evict() local 273 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); ufs_qcom_ice_derive_sw_secret() local 284 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); ufs_qcom_ice_import_key() local 293 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); ufs_qcom_ice_generate_key() local 303 struct ufs_hba *hba = ufs_hba_from_crypto_profile(profile); ufs_qcom_ice_prepare_key() local 385 ufs_qcom_check_hibern8(struct ufs_hba * hba) ufs_qcom_check_hibern8() argument 436 ufs_qcom_host_reset(struct ufs_hba * hba) ufs_qcom_host_reset() argument 477 ufs_qcom_get_hs_gear(struct ufs_hba * hba) ufs_qcom_get_hs_gear() argument 488 ufs_qcom_power_up_sequence(struct ufs_hba * hba) ufs_qcom_power_up_sequence() argument 559 ufs_qcom_enable_hw_clk_gating(struct ufs_hba * hba) ufs_qcom_enable_hw_clk_gating() argument 589 ufs_qcom_hce_enable_notify(struct ufs_hba * hba,enum ufs_notify_change_status status) ufs_qcom_hce_enable_notify() argument 623 ufs_qcom_fw_managed_hce_enable_notify(struct ufs_hba * hba,enum ufs_notify_change_status status) ufs_qcom_fw_managed_hce_enable_notify() argument 652 ufs_qcom_cfg_timers(struct ufs_hba * hba,bool is_pre_scale_up,unsigned long freq) ufs_qcom_cfg_timers() argument 708 ufs_qcom_link_startup_notify(struct ufs_hba * hba,enum ufs_notify_change_status status) ufs_qcom_link_startup_notify() argument 741 ufs_qcom_device_reset_ctrl(struct ufs_hba * hba,bool asserted) ufs_qcom_device_reset_ctrl() argument 752 ufs_qcom_suspend(struct ufs_hba * hba,enum ufs_pm_op pm_op,enum ufs_notify_change_status status) ufs_qcom_suspend() argument 784 ufs_qcom_resume(struct ufs_hba * hba,enum ufs_pm_op pm_op) ufs_qcom_resume() argument 814 ufs_qcom_fw_managed_suspend(struct ufs_hba * hba,enum ufs_pm_op pm_op,enum ufs_notify_change_status status) ufs_qcom_fw_managed_suspend() argument 827 ufs_qcom_fw_managed_resume(struct ufs_hba * hba,enum ufs_pm_op pm_op) ufs_qcom_fw_managed_resume() argument 952 ufs_qcom_set_tx_hs_equalizer(struct ufs_hba * hba,u32 gear,u32 tx_lanes) ufs_qcom_set_tx_hs_equalizer() argument 969 ufs_qcom_negotiate_pwr_mode(struct ufs_hba * hba,const struct ufs_pa_layer_attr * dev_max_params,struct ufs_pa_layer_attr * dev_req_params) ufs_qcom_negotiate_pwr_mode() argument 979 ufs_qcom_pwr_change_notify(struct ufs_hba * hba,enum ufs_notify_change_status status,struct ufs_pa_layer_attr * dev_req_params) ufs_qcom_pwr_change_notify() argument 1047 ufs_qcom_quirk_host_pa_saveconfigtime(struct ufs_hba * hba) ufs_qcom_quirk_host_pa_saveconfigtime() argument 1062 ufs_qcom_override_pa_tx_hsg1_sync_len(struct ufs_hba * hba) ufs_qcom_override_pa_tx_hsg1_sync_len() argument 1130 ufs_qcom_limit_max_gear(struct ufs_hba * hba,enum ufs_hs_gear_tag gear) ufs_qcom_limit_max_gear() argument 1145 ufs_qcom_fixup_tx_adapt_l0l1l2l3(struct ufs_hba * hba) ufs_qcom_fixup_tx_adapt_l0l1l2l3() argument 1248 ufs_qcom_apply_dev_quirks(struct ufs_hba * hba) ufs_qcom_apply_dev_quirks() argument 1278 ufs_qcom_fixup_dev_quirks(struct ufs_hba * hba) ufs_qcom_fixup_dev_quirks() argument 1283 ufs_qcom_get_ufs_hci_version(struct ufs_hba * hba) ufs_qcom_get_ufs_hci_version() argument 1297 ufs_qcom_advertise_quirks(struct ufs_hba * hba) ufs_qcom_advertise_quirks() argument 1354 ufs_qcom_parse_gear_limits(struct ufs_hba * hba) ufs_qcom_parse_gear_limits() argument 1366 ufs_qcom_set_host_params(struct ufs_hba * hba) ufs_qcom_set_host_params() argument 1377 ufs_qcom_set_host_caps(struct ufs_hba * hba) ufs_qcom_set_host_caps() argument 1385 ufs_qcom_set_caps(struct ufs_hba * hba) ufs_qcom_set_caps() argument 1416 ufs_qcom_setup_clocks(struct ufs_hba * hba,bool on,enum ufs_notify_change_status status) ufs_qcom_setup_clocks() argument 1550 ufs_qcom_init(struct ufs_hba * hba) ufs_qcom_init() argument 1648 ufs_qcom_exit(struct ufs_hba * hba) ufs_qcom_exit() argument 1657 ufs_qcom_fw_managed_init(struct ufs_hba * hba) ufs_qcom_fw_managed_init() argument 1700 ufs_qcom_fw_managed_exit(struct ufs_hba * hba) ufs_qcom_fw_managed_exit() argument 1714 ufs_qcom_set_clk_40ns_cycles(struct ufs_hba * hba,u32 cycles_in_1us) ufs_qcom_set_clk_40ns_cycles() argument 1776 ufs_qcom_set_core_clk_ctrl(struct ufs_hba * hba,bool is_scale_up,unsigned long freq) ufs_qcom_set_core_clk_ctrl() argument 1848 ufs_qcom_clk_scale_up_pre_change(struct ufs_hba * hba,unsigned long freq) ufs_qcom_clk_scale_up_pre_change() argument 1861 ufs_qcom_clk_scale_up_post_change(struct ufs_hba * hba) ufs_qcom_clk_scale_up_post_change() argument 1866 ufs_qcom_clk_scale_down_pre_change(struct ufs_hba * hba) ufs_qcom_clk_scale_down_pre_change() argument 1887 ufs_qcom_clk_scale_down_post_change(struct ufs_hba * hba,unsigned long freq) ufs_qcom_clk_scale_down_post_change() argument 1900 ufs_qcom_clk_scale_notify(struct ufs_hba * hba,bool scale_up,unsigned long target_freq,enum ufs_notify_change_status status) ufs_qcom_clk_scale_notify() argument 2049 ufs_qcom_dump_testbus(struct ufs_hba * hba) ufs_qcom_dump_testbus() argument 2074 ufs_qcom_dump_regs(struct ufs_hba * hba,size_t offset,size_t len,const char * prefix,void __iomem * base) ufs_qcom_dump_regs() argument 2096 ufs_qcom_dump_mcq_hci_regs(struct ufs_hba * hba) ufs_qcom_dump_mcq_hci_regs() argument 2130 ufs_qcom_dump_dbg_regs(struct ufs_hba * hba) ufs_qcom_dump_dbg_regs() argument 2213 ufs_qcom_device_reset(struct ufs_hba * hba) ufs_qcom_device_reset() argument 2244 ufs_qcom_fw_managed_device_reset(struct ufs_hba * hba) ufs_qcom_fw_managed_device_reset() argument 2265 ufs_qcom_config_scaling_param(struct ufs_hba * hba,struct devfreq_dev_profile * p,struct devfreq_simple_ondemand_data * d) ufs_qcom_config_scaling_param() argument 2277 ufs_qcom_mcq_config_resource(struct ufs_hba * hba) ufs_qcom_mcq_config_resource() argument 2299 ufs_qcom_op_runtime_config(struct ufs_hba * hba) ufs_qcom_op_runtime_config() argument 2344 ufs_qcom_get_hba_mac(struct ufs_hba * hba) ufs_qcom_get_hba_mac() argument 2350 ufs_qcom_get_outstanding_cqs(struct ufs_hba * hba,unsigned long * ocqs) ufs_qcom_get_outstanding_cqs() argument 2362 struct ufs_hba *hba = dev_get_drvdata(dev); ufs_qcom_write_msi_msg() local 2370 struct ufs_hba *hba; global() member 2376 struct ufs_hba *hba = qi->hba; ufs_qcom_mcq_esi_handler() local 2385 ufs_qcom_config_esi(struct ufs_hba * hba) ufs_qcom_config_esi() argument 2441 ufs_qcom_opp_freq_to_clk_freq(struct ufs_hba * hba,unsigned long freq,char * name) ufs_qcom_opp_freq_to_clk_freq() argument 2478 ufs_qcom_freq_to_gear_speed(struct ufs_hba * hba,unsigned long freq) ufs_qcom_freq_to_gear_speed() argument 2513 ufs_qcom_host_eom_config(struct ufs_hba * hba,int lane,const struct ufs_eom_coord * eom_coord,u32 target_test_count) ufs_qcom_host_eom_config() argument 2580 ufs_qcom_host_eom_may_stop(struct ufs_hba * hba,int lane,u32 target_test_count,u32 * err_count) ufs_qcom_host_eom_may_stop() argument 2636 ufs_qcom_host_eom_scan(struct ufs_hba * hba,int num_lanes,const struct ufs_eom_coord * eom_coord,u32 target_test_count,u32 * err_count) ufs_qcom_host_eom_scan() argument 2701 ufs_qcom_host_sw_rx_fom(struct ufs_hba * hba,int num_lanes,u32 * fom) ufs_qcom_host_sw_rx_fom() argument 2747 ufs_qcom_get_rx_fom(struct ufs_hba * hba,struct ufs_pa_layer_attr * pwr_mode,struct tx_eqtr_iter * h_iter,struct tx_eqtr_iter * d_iter) ufs_qcom_get_rx_fom() argument 2824 ufs_qcom_apply_tx_eqtr_settings(struct ufs_hba * hba,struct ufs_pa_layer_attr * pwr_mode,struct tx_eqtr_iter * h_iter,struct tx_eqtr_iter * d_iter) ufs_qcom_apply_tx_eqtr_settings() argument 2844 ufs_qcom_tx_eqtr_notify(struct ufs_hba * hba,enum ufs_notify_change_status status,struct ufs_pa_layer_attr * pwr_mode) ufs_qcom_tx_eqtr_notify() argument 2977 struct ufs_hba *hba = platform_get_drvdata(pdev); ufs_qcom_remove() local [all...] |
| H A D | cdns-pltfrm.c | 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() 55 ufshcd_dme_get(hba, UIC_ARG_MIB(T_LOCALBUFFERSPACE), in cdns_ufs_get_l4_attr() [all …]
|
| H A D | ufshcd-dwc.c | 18 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() 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() 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() 80 static int ufshcd_dwc_connection_setup(struct ufs_hba *hba) in ufshcd_dwc_connection_setup() argument 103 return ufshcd_dwc_dme_set_attrs(hba, setup_attrs, ARRAY_SIZE(setup_attrs)); in ufshcd_dwc_connection_setup() 113 int ufshcd_dwc_link_startup_notify(struct ufs_hba *hba, in ufshcd_dwc_link_startup_notify() argument [all …]
|
| H A D | tc-dwc-g210.c | 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() 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() 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() 194 ret = ufshcd_dwc_dme_set_attrs(hba, setup_tx_attrs, in tc_dwc_g210_setup_20bit_rmmi_lane1() 202 ret = ufshcd_dwc_dme_set_attrs(hba, setup_rx_attrs, in tc_dwc_g210_setup_20bit_rmmi_lane1() 216 static int tc_dwc_g210_setup_20bit_rmmi(struct ufs_hba *hba) in tc_dwc_g210_setup_20bit_rmmi() argument [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 …]
|
| H A D | hptiop.h | 333 struct hptiop_hba * hba; member 346 int (*iop_wait_ready)(struct hptiop_hba *hba, u32 millisec); 347 int (*internal_memalloc)(struct hptiop_hba *hba); 348 int (*internal_memfree)(struct hptiop_hba *hba); 349 int (*map_pci_bar)(struct hptiop_hba *hba); 350 void (*unmap_pci_bar)(struct hptiop_hba *hba); 351 void (*enable_intr)(struct hptiop_hba *hba); 352 void (*disable_intr)(struct hptiop_hba *hba); 353 int (*get_config)(struct hptiop_hba *hba, 355 int (*set_config)(struct hptiop_hba *hba, [all …]
|
| /linux/drivers/scsi/bnx2i/ |
| H A D | bnx2i_init.c | 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() 93 hba->pci_did == PCI_DEVICE_ID_NX2_5709S) { in bnx2i_identify_device() [all …]
|
| 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() 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() 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() 248 hba->cid_que.conn_cid_tbl[iscsi_cid] = bnx2i_conn; in bnx2i_bind_conn_to_iscsi_cid() 258 struct bnx2i_conn *bnx2i_get_conn_from_id(struct bnx2i_hba *hba, in bnx2i_get_conn_from_id() argument [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() 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() 67 if (hba->max_sqes < num_elements_per_pg) in bnx2i_adjust_qp_size() [all …]
|
| H A D | bnx2i_sysfs.c | 42 struct bnx2i_hba *hba = bnx2i_dev_to_hba(dev); in bnx2i_show_sq_info() local 44 return sprintf(buf, "0x%x\n", hba->max_sqes); in bnx2i_show_sq_info() 63 struct bnx2i_hba *hba = bnx2i_dev_to_hba(dev); in bnx2i_set_sq_info() local 67 if (hba->ofld_conns_active) in bnx2i_set_sq_info() 70 if (test_bit(BNX2I_NX2_DEV_57710, &hba->cnic_dev_type)) in bnx2i_set_sq_info() 78 hba->max_sqes = val; in bnx2i_set_sq_info() 100 struct bnx2i_hba *hba = bnx2i_dev_to_hba(dev); in bnx2i_show_ccell_info() local 102 return sprintf(buf, "0x%x\n", hba->num_ccell); in bnx2i_show_ccell_info() 120 struct bnx2i_hba *hba = bnx2i_dev_to_hba(dev); in bnx2i_set_ccell_info() local 122 if (hba->ofld_conns_active) in bnx2i_set_ccell_info() [all …]
|
| /linux/drivers/ufs/core/ |
| 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-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_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-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 | 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-fault-injection.c | 64 void ufs_fault_inject_hba_init(struct ufs_hba *hba) in ufs_fault_inject_hba_init() argument 66 hba->trigger_eh_attr = ufs_trigger_eh_attr; in ufs_fault_inject_hba_init() 67 hba->timeout_attr = ufs_timeout_attr; in ufs_fault_inject_hba_init() 69 fault_create_debugfs_attr("trigger_eh_inject", hba->debugfs_root, &hba->trigger_eh_attr); in ufs_fault_inject_hba_init() 70 fault_create_debugfs_attr("timeout_inject", hba->debugfs_root, &hba->timeout_attr); in ufs_fault_inject_hba_init() 74 bool ufs_trigger_eh(struct ufs_hba *hba) in ufs_trigger_eh() argument 76 return should_fail(&hba->trigger_eh_attr, 1); in ufs_trigger_eh() 79 bool ufs_fail_completion(struct ufs_hba *hba) in ufs_fail_completion() argument 81 return should_fail(&hba->timeout_attr, 1); in ufs_fail_completion()
|
| /linux/drivers/scsi/bnx2fc/ |
| H A D | bnx2fc_fcoe.c | 79 static int bnx2fc_em_config(struct fc_lport *lport, struct bnx2fc_hba *hba); 80 static int bnx2fc_bind_adapter_devices(struct bnx2fc_hba *hba); 81 static void bnx2fc_unbind_adapter_devices(struct bnx2fc_hba *hba); 82 static int bnx2fc_bind_pcidev(struct bnx2fc_hba *hba); 83 static void bnx2fc_unbind_pcidev(struct bnx2fc_hba *hba); 94 static int bnx2fc_fw_init(struct bnx2fc_hba *hba); 95 static void bnx2fc_fw_destroy(struct bnx2fc_hba *hba); 194 struct bnx2fc_hba *hba = interface->hba; in bnx2fc_cleanup() 199 mutex_lock(&hba in bnx2fc_cleanup() 193 struct bnx2fc_hba *hba = interface->hba; bnx2fc_cleanup() local 272 struct bnx2fc_hba *hba; bnx2fc_xmit() local 682 struct bnx2fc_hba *hba = interface->hba; bnx2fc_get_host_stats() local 732 struct bnx2fc_hba *hba = interface->hba; bnx2fc_shost_config() local 765 struct bnx2fc_hba *hba = interface->hba; bnx2fc_link_ok() local 785 bnx2fc_get_link_state(struct bnx2fc_hba * hba) bnx2fc_get_link_state() argument 795 struct bnx2fc_hba *hba; bnx2fc_net_config() local 840 struct bnx2fc_hba *hba = timer_container_of(hba, t, destroy_timer); bnx2fc_destroy_timer() local 861 struct bnx2fc_hba *hba = (struct bnx2fc_hba *)context; bnx2fc_indicate_netevent() local 995 bnx2fc_em_config(struct fc_lport * lport,struct bnx2fc_hba * hba) bnx2fc_em_config() argument 1168 bnx2fc_free_vport(struct bnx2fc_hba * hba,struct fc_lport * lport) bnx2fc_free_vport() argument 1333 bnx2fc_hba_destroy(struct bnx2fc_hba * hba) bnx2fc_hba_destroy() argument 1355 struct bnx2fc_hba *hba; bnx2fc_hba_create() local 1429 bnx2fc_interface_create(struct bnx2fc_hba * hba,struct net_device * netdev,enum fip_mode fip_mode) bnx2fc_interface_create() argument 1491 struct bnx2fc_hba *hba = interface->hba; bnx2fc_if_create() local 1598 struct bnx2fc_hba *hba = interface->hba; bnx2fc_interface_cleanup() local 1694 bnx2fc_unbind_adapter_devices(struct bnx2fc_hba * hba) bnx2fc_unbind_adapter_devices() argument 1706 bnx2fc_bind_adapter_devices(struct bnx2fc_hba * hba) bnx2fc_bind_adapter_devices() argument 1720 bnx2fc_bind_pcidev(struct bnx2fc_hba * hba) bnx2fc_bind_pcidev() argument 1771 bnx2fc_unbind_pcidev(struct bnx2fc_hba * hba) bnx2fc_unbind_pcidev() argument 1787 struct bnx2fc_hba *hba = handle; bnx2fc_ulp_get_stats() local 1823 struct bnx2fc_hba *hba = handle; bnx2fc_ulp_start() local 1878 bnx2fc_fw_init(struct bnx2fc_hba * hba) bnx2fc_fw_init() argument 1923 bnx2fc_fw_destroy(struct bnx2fc_hba * hba) bnx2fc_fw_destroy() argument 1956 struct bnx2fc_hba *hba = handle; bnx2fc_ulp_stop() local 2033 struct bnx2fc_hba *hba; bnx2fc_ulp_init() local 2169 struct bnx2fc_hba *hba; __bnx2fc_enable() local 2294 struct bnx2fc_hba *hba; _bnx2fc_create() local 2470 struct bnx2fc_hba *hba; bnx2fc_find_hba_for_cnic() local 2496 struct bnx2fc_hba *hba; bnx2fc_hba_lookup() local 2514 struct bnx2fc_hba *hba; bnx2fc_ulp_exit() local 2746 struct bnx2fc_hba *hba, *next; bnx2fc_mod_exit() local [all...] |
| 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_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 324 bnx2fc_send_session_destroy_req(hba, tgt); in bnx2fc_upload_session() [all …]
|
| /linux/drivers/target/ |
| H A D | target_core_hba.c | 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() 132 ret = hba->backend->ops->attach_hba(hba, plugin_dep_id); in core_alloc_hba() [all …]
|
| /linux/drivers/parisc/ |
| H A D | lba_pci.c | 111 static inline struct lba_device *LBA_DEV(struct pci_hba_data *hba) in LBA_DEV() argument 113 return container_of(hba, struct lba_device, hba); in LBA_DEV() 191 u8 first_bus = d->hba.hba_bus->busn_res.start; in lba_device_present() 192 u8 last_sub_bus = d->hba.hba_bus->busn_res.end; in lba_device_present() 207 error_config = READ_REG32(d->hba.base_addr + LBA_ERROR_CONFIG); \ 210 status_control = READ_REG32(d->hba.base_addr + LBA_STAT_CTL); \ 216 arb_mask = READ_REG32(d->hba.base_addr + LBA_ARB_MASK); \ 222 WRITE_REG32(0x1, d->hba.base_addr + LBA_ARB_MASK); \ 228 WRITE_REG32(error_config | LBA_SMART_MODE, d->hba.base_addr + LBA_ERROR_CONFIG); \ 237 WRITE_REG32(tok | PCI_VENDOR_ID, (d)->hba.base_addr + LBA_PCI_CFG_ADDR);\ [all …]
|
| H A D | dino.c | 143 struct pci_hba_data hba; /* 'C' inheritance - must be first */ member 153 static inline struct dino_device *DINO_DEV(struct pci_hba_data *hba) in DINO_DEV() argument 155 return container_of(hba, struct dino_device, hba); in DINO_DEV() 177 void __iomem *base_addr = d->hba.base_addr; in dino_cfg_read() 212 void __iomem *base_addr = d->hba.base_addr; in dino_cfg_write() 305 __raw_writel(dino_dev->imr, dino_dev->hba.base_addr+DINO_IMR); in dino_mask_irq() 322 __raw_readl(dino_dev->hba.base_addr+DINO_IPR); in dino_unmask_irq() 326 __raw_writel( dino_dev->imr, dino_dev->hba.base_addr+DINO_IMR); in dino_unmask_irq() 337 tmp = __raw_readl(dino_dev->hba.base_addr+DINO_ILR); in dino_unmask_irq() 363 __raw_writel(eim, dino_dev->hba.base_addr+DINO_IAR0); in dino_set_affinity_irq() [all …]
|
| H A D | eisa.c | 62 struct pci_hba_data hba; member 303 eisa_dev.hba.dev = dev; in eisa_probe() 304 eisa_dev.hba.iommu = ccio_get_iommu(dev); in eisa_probe() 306 eisa_dev.hba.lmmio_space.name = "EISA"; in eisa_probe() 307 eisa_dev.hba.lmmio_space.start = F_EXTEND(0xfc000000); in eisa_probe() 308 eisa_dev.hba.lmmio_space.end = F_EXTEND(0xffbfffff); in eisa_probe() 309 eisa_dev.hba.lmmio_space.flags = IORESOURCE_MEM; in eisa_probe() 310 result = ccio_request_resource(dev, &eisa_dev.hba.lmmio_space); in eisa_probe() 315 eisa_dev.hba.io_space.name = "EISA"; in eisa_probe() 316 eisa_dev.hba.io_space.start = 0; in eisa_probe() [all …]
|
| /linux/arch/parisc/include/asm/ |
| H A D | pci.h | 111 u8 (*inb) (struct pci_hba_data *hba, u16 port); 112 u16 (*inw) (struct pci_hba_data *hba, u16 port); 113 u32 (*inl) (struct pci_hba_data *hba, u16 port); 114 void (*outb) (struct pci_hba_data *hba, u16 port, u8 data); 115 void (*outw) (struct pci_hba_data *hba, u16 port, u16 data); 116 void (*outl) (struct pci_hba_data *hba, u16 port, u32 data);
|