Home
last modified time | relevance | path

Searched refs:hba (Results 1 – 25 of 80) sorted by relevance

1234

/openbmc/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.c107 static bool is_mcq_supported(struct ufs_hba *hba) in is_mcq_supported() argument
109 return hba->mcq_sup && use_mcq_mode; in is_mcq_supported()
132 int ufshcd_dump_regs(struct ufs_hba *hba, size_t offset, size_t len, in ufshcd_dump_regs() argument
150 regs[pos / 4] = ufshcd_readl(hba, offset + pos); in ufshcd_dump_regs()
240 static bool ufshcd_has_pending_tasks(struct ufs_hba *hba) in ufshcd_has_pending_tasks() argument
242 return hba->outstanding_tasks || hba->active_uic_cmd || in ufshcd_has_pending_tasks()
243 hba->uic_async_done; in ufshcd_has_pending_tasks()
246 static bool ufshcd_is_ufs_dev_busy(struct ufs_hba *hba) in ufshcd_is_ufs_dev_busy() argument
248 return scsi_host_busy(hba in ufshcd_is_ufs_dev_busy()
305 ufshcd_enable_irq(struct ufs_hba * hba) ufshcd_enable_irq() argument
313 ufshcd_disable_irq(struct ufs_hba * hba) ufshcd_disable_irq() argument
321 ufshcd_configure_wb(struct ufs_hba * hba) ufshcd_configure_wb() argument
334 ufshcd_scsi_unblock_requests(struct ufs_hba * hba) ufshcd_scsi_unblock_requests() argument
340 ufshcd_scsi_block_requests(struct ufs_hba * hba) ufshcd_scsi_block_requests() argument
346 ufshcd_add_cmd_upiu_trace(struct ufs_hba * hba,unsigned int tag,enum ufs_trace_str_t str_t) ufshcd_add_cmd_upiu_trace() argument
364 ufshcd_add_query_upiu_trace(struct ufs_hba * hba,enum ufs_trace_str_t str_t,struct utp_upiu_req * rq_rsp) ufshcd_add_query_upiu_trace() argument
375 ufshcd_add_tm_upiu_trace(struct ufs_hba * hba,unsigned int tag,enum ufs_trace_str_t str_t) ufshcd_add_tm_upiu_trace() argument
395 ufshcd_add_uic_command_trace(struct ufs_hba * hba,const struct uic_command * ucmd,enum ufs_trace_str_t str_t) ufshcd_add_uic_command_trace() argument
415 ufshcd_add_command_trace(struct ufs_hba * hba,unsigned int tag,enum ufs_trace_str_t str_t) ufshcd_add_command_trace() argument
468 ufshcd_print_clk_freqs(struct ufs_hba * hba) ufshcd_print_clk_freqs() argument
484 ufshcd_print_evt(struct ufs_hba * hba,u32 id,const char * err_name) ufshcd_print_evt() argument
512 ufshcd_print_evt_hist(struct ufs_hba * hba) ufshcd_print_evt_hist() argument
540 ufshcd_print_tr(struct ufs_hba * hba,int tag,bool pr_prdt) ufshcd_print_tr() argument
585 struct ufs_hba *hba = shost_priv(shost); ufshcd_print_tr_iter() local
597 ufshcd_print_trs_all(struct ufs_hba * hba,bool pr_prdt) ufshcd_print_trs_all() argument
602 ufshcd_print_tmrs(struct ufs_hba * hba,unsigned long bitmap) ufshcd_print_tmrs() argument
614 ufshcd_print_host_state(struct ufs_hba * hba) ufshcd_print_host_state() argument
655 ufshcd_print_pwr_info(struct ufs_hba * hba) ufshcd_print_pwr_info() argument
681 ufshcd_device_reset(struct ufs_hba * hba) ufshcd_device_reset() argument
723 ufshcd_wait_for_register(struct ufs_hba * hba,u32 reg,u32 mask,u32 val,unsigned long interval_us,unsigned long timeout_ms) ufshcd_wait_for_register() argument
751 ufshcd_get_intr_mask(struct ufs_hba * hba) ufshcd_get_intr_mask() argument
767 ufshcd_get_ufs_version(struct ufs_hba * hba) ufshcd_get_ufs_version() argument
794 ufshcd_is_device_present(struct ufs_hba * hba) ufshcd_is_device_present() argument
822 ufshcd_utrl_clear(struct ufs_hba * hba,u32 mask) ufshcd_utrl_clear() argument
847 ufshcd_utmrl_clear(struct ufs_hba * hba,u32 pos) ufshcd_utmrl_clear() argument
874 ufshcd_get_uic_cmd_result(struct ufs_hba * hba) ufshcd_get_uic_cmd_result() argument
888 ufshcd_get_dme_attr_val(struct ufs_hba * hba) ufshcd_get_dme_attr_val() argument
924 ufshcd_reset_intr_aggr(struct ufs_hba * hba) ufshcd_reset_intr_aggr() argument
938 ufshcd_config_intr_aggr(struct ufs_hba * hba,u8 cnt,u8 tmout) ufshcd_config_intr_aggr() argument
950 ufshcd_disable_intr_aggr(struct ufs_hba * hba) ufshcd_disable_intr_aggr() argument
961 ufshcd_enable_run_stop_reg(struct ufs_hba * hba) ufshcd_enable_run_stop_reg() argument
973 ufshcd_hba_start(struct ufs_hba * hba) ufshcd_hba_start() argument
989 ufshcd_is_hba_active(struct ufs_hba * hba) ufshcd_is_hba_active() argument
995 ufshcd_get_local_unipro_ver(struct ufs_hba * hba) ufshcd_get_local_unipro_ver() argument
1005 ufshcd_is_unipro_pa_params_tuning_req(struct ufs_hba * hba) ufshcd_is_unipro_pa_params_tuning_req() argument
1026 ufshcd_set_clk_freq(struct ufs_hba * hba,bool scale_up) ufshcd_set_clk_freq() argument
1088 ufshcd_scale_clks(struct ufs_hba * hba,bool scale_up) ufshcd_scale_clks() argument
1119 ufshcd_is_devfreq_scaling_required(struct ufs_hba * hba,bool scale_up) ufshcd_is_devfreq_scaling_required() argument
1152 ufshcd_pending_cmds(struct ufs_hba * hba) ufshcd_pending_cmds() argument
1170 ufshcd_wait_for_doorbell_clr(struct ufs_hba * hba,u64 wait_timeout_us) ufshcd_wait_for_doorbell_clr() argument
1237 ufshcd_scale_gear(struct ufs_hba * hba,bool scale_up) ufshcd_scale_gear() argument
1279 ufshcd_clock_scaling_prepare(struct ufs_hba * hba,u64 timeout_us) ufshcd_clock_scaling_prepare() argument
1306 ufshcd_clock_scaling_unprepare(struct ufs_hba * hba,int err,bool scale_up) ufshcd_clock_scaling_unprepare() argument
1328 ufshcd_devfreq_scale(struct ufs_hba * hba,bool scale_up) ufshcd_devfreq_scale() argument
1366 struct ufs_hba *hba = container_of(work, struct ufs_hba, ufshcd_clk_scaling_suspend_work() local
1383 struct ufs_hba *hba = container_of(work, struct ufs_hba, ufshcd_clk_scaling_resume_work() local
1402 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_devfreq_target() local
1459 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_devfreq_get_dev_status() local
1504 ufshcd_devfreq_init(struct ufs_hba * hba) ufshcd_devfreq_init() argument
1539 ufshcd_devfreq_remove(struct ufs_hba * hba) ufshcd_devfreq_remove() argument
1555 __ufshcd_suspend_clkscaling(struct ufs_hba * hba) __ufshcd_suspend_clkscaling() argument
1565 ufshcd_suspend_clkscaling(struct ufs_hba * hba) ufshcd_suspend_clkscaling() argument
1584 ufshcd_resume_clkscaling(struct ufs_hba * hba) ufshcd_resume_clkscaling() argument
1603 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_clkscale_enable_show() local
1611 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_clkscale_enable_store() local
1650 ufshcd_init_clk_scaling_sysfs(struct ufs_hba * hba) ufshcd_init_clk_scaling_sysfs() argument
1661 ufshcd_remove_clk_scaling_sysfs(struct ufs_hba * hba) ufshcd_remove_clk_scaling_sysfs() argument
1667 ufshcd_init_clk_scaling(struct ufs_hba * hba) ufshcd_init_clk_scaling() argument
1689 ufshcd_exit_clk_scaling(struct ufs_hba * hba) ufshcd_exit_clk_scaling() argument
1704 struct ufs_hba *hba = container_of(work, struct ufs_hba, ufshcd_ungate_work() local
1742 ufshcd_hold(struct ufs_hba * hba) ufshcd_hold() argument
1815 struct ufs_hba *hba = container_of(work, struct ufs_hba, ufshcd_gate_work() local
1884 __ufshcd_release(struct ufs_hba * hba) __ufshcd_release() argument
1904 ufshcd_release(struct ufs_hba * hba) ufshcd_release() argument
1917 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_clkgate_delay_show() local
1924 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_clkgate_delay_set() local
1948 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_clkgate_enable_show() local
1956 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_clkgate_enable_store() local
1980 ufshcd_init_clk_gating_sysfs(struct ufs_hba * hba) ufshcd_init_clk_gating_sysfs() argument
1999 ufshcd_remove_clk_gating_sysfs(struct ufs_hba * hba) ufshcd_remove_clk_gating_sysfs() argument
2007 ufshcd_init_clk_gating(struct ufs_hba * hba) ufshcd_init_clk_gating() argument
2031 ufshcd_exit_clk_gating(struct ufs_hba * hba) ufshcd_exit_clk_gating() argument
2046 ufshcd_clk_scaling_start_busy(struct ufs_hba * hba) ufshcd_clk_scaling_start_busy() argument
2081 ufshcd_clk_scaling_update_busy(struct ufs_hba * hba) ufshcd_clk_scaling_update_busy() argument
2110 ufshcd_should_inform_monitor(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_should_inform_monitor() argument
2120 ufshcd_start_monitor(struct ufs_hba * hba,const struct ufshcd_lrb * lrbp) ufshcd_start_monitor() argument
2132 ufshcd_update_monitor(struct ufs_hba * hba,const struct ufshcd_lrb * lrbp) ufshcd_update_monitor() argument
2171 ufshcd_send_command(struct ufs_hba * hba,unsigned int task_tag,struct ufs_hw_queue * hwq) ufshcd_send_command() argument
2239 ufshcd_copy_query_response(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_copy_query_response() argument
2277 ufshcd_hba_capabilities(struct ufs_hba * hba) ufshcd_hba_capabilities() argument
2324 ufshcd_ready_for_uic_cmd(struct ufs_hba * hba) ufshcd_ready_for_uic_cmd() argument
2341 ufshcd_get_upmcrs(struct ufs_hba * hba) ufshcd_get_upmcrs() argument
2352 ufshcd_dispatch_uic_cmd(struct ufs_hba * hba,struct uic_command * uic_cmd) ufshcd_dispatch_uic_cmd() argument
2380 ufshcd_wait_for_uic_cmd(struct ufs_hba * hba,struct uic_command * uic_cmd) ufshcd_wait_for_uic_cmd() argument
2418 __ufshcd_send_uic_cmd(struct ufs_hba * hba,struct uic_command * uic_cmd) __ufshcd_send_uic_cmd() argument
2443 ufshcd_send_uic_cmd(struct ufs_hba * hba,struct uic_command * uic_cmd) ufshcd_send_uic_cmd() argument
2471 ufshcd_sgl_to_prdt(struct ufs_hba * hba,struct ufshcd_lrb * lrbp,int sg_entries,struct scatterlist * sg_list) ufshcd_sgl_to_prdt() argument
2517 ufshcd_map_sg(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_map_sg() argument
2535 ufshcd_enable_intr(struct ufs_hba * hba,u32 intrs) ufshcd_enable_intr() argument
2555 ufshcd_disable_intr(struct ufs_hba * hba,u32 intrs) ufshcd_disable_intr() argument
2656 ufshcd_prepare_utp_query_req_upiu(struct ufs_hba * hba,struct ufshcd_lrb * lrbp,u8 upiu_flags) ufshcd_prepare_utp_query_req_upiu() argument
2711 ufshcd_compose_devman_upiu(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_compose_devman_upiu() argument
2741 ufshcd_comp_scsi_upiu(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_comp_scsi_upiu() argument
2784 struct ufs_hba *hba = shost_priv(shost); ufshcd_map_queues() local
2809 ufshcd_init_lrb(struct ufs_hba * hba,struct ufshcd_lrb * lrb,int i) ufshcd_init_lrb() argument
2839 struct ufs_hba *hba = shost_priv(host); ufshcd_queuecommand() local
2929 ufshcd_compose_dev_cmd(struct ufs_hba * hba,struct ufshcd_lrb * lrbp,enum dev_cmd_type cmd_type,int tag) ufshcd_compose_dev_cmd() argument
2968 ufshcd_clear_cmd(struct ufs_hba * hba,u32 task_tag) ufshcd_clear_cmd() argument
3011 ufshcd_dev_cmd_completion(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_dev_cmd_completion() argument
3056 ufshcd_wait_for_dev_cmd(struct ufs_hba * hba,struct ufshcd_lrb * lrbp,int max_timeout) ufshcd_wait_for_dev_cmd() argument
3155 ufshcd_exec_dev_cmd(struct ufs_hba * hba,enum dev_cmd_type cmd_type,int timeout) ufshcd_exec_dev_cmd() argument
3198 ufshcd_init_query(struct ufs_hba * hba,struct ufs_query_req ** request,struct ufs_query_res ** response,enum query_opcode opcode,u8 idn,u8 index,u8 selector) ufshcd_init_query() argument
3212 ufshcd_query_flag_retry(struct ufs_hba * hba,enum query_opcode opcode,enum flag_idn idn,u8 index,bool * flag_res) ufshcd_query_flag_retry() argument
3245 ufshcd_query_flag(struct ufs_hba * hba,enum query_opcode opcode,enum flag_idn idn,u8 index,bool * flag_res) ufshcd_query_flag() argument
3314 ufshcd_query_attr(struct ufs_hba * hba,enum query_opcode opcode,enum attr_idn idn,u8 index,u8 selector,u32 * attr_val) ufshcd_query_attr() argument
3379 ufshcd_query_attr_retry(struct ufs_hba * hba,enum query_opcode opcode,enum attr_idn idn,u8 index,u8 selector,u32 * attr_val) ufshcd_query_attr_retry() argument
3403 __ufshcd_query_descriptor(struct ufs_hba * hba,enum query_opcode opcode,enum desc_idn idn,u8 index,u8 selector,u8 * desc_buf,int * buf_len) __ufshcd_query_descriptor() argument
3480 ufshcd_query_descriptor_retry(struct ufs_hba * hba,enum query_opcode opcode,enum desc_idn idn,u8 index,u8 selector,u8 * desc_buf,int * buf_len) ufshcd_query_descriptor_retry() argument
3510 ufshcd_read_desc_param(struct ufs_hba * hba,enum desc_idn desc_id,int desc_index,u8 param_offset,u8 * param_read_buf,u8 param_size) ufshcd_read_desc_param() argument
3611 ufshcd_read_string_desc(struct ufs_hba * hba,u8 desc_index,u8 ** buf,bool ascii) ufshcd_read_string_desc() argument
3690 ufshcd_read_unit_desc_param(struct ufs_hba * hba,int lun,enum unit_desc_param param_offset,u8 * param_read_buf,u32 param_size) ufshcd_read_unit_desc_param() argument
3707 ufshcd_get_ref_clk_gating_wait(struct ufs_hba * hba) ufshcd_get_ref_clk_gating_wait() argument
3745 ufshcd_memory_alloc(struct ufs_hba * hba) ufshcd_memory_alloc() argument
3833 ufshcd_host_memory_configure(struct ufs_hba * hba) ufshcd_host_memory_configure() argument
3892 ufshcd_dme_link_startup(struct ufs_hba * hba) ufshcd_dme_link_startup() argument
3914 ufshcd_dme_reset(struct ufs_hba * hba) ufshcd_dme_reset() argument
3929 ufshcd_dme_configure_adapt(struct ufs_hba * hba,int agreed_gear,int adapt_val) ufshcd_dme_configure_adapt() argument
3953 ufshcd_dme_enable(struct ufs_hba * hba) ufshcd_dme_enable() argument
3968 ufshcd_add_delay_before_dme_cmd(struct ufs_hba * hba) ufshcd_add_delay_before_dme_cmd() argument
4014 ufshcd_dme_set_attr(struct ufs_hba * hba,u32 attr_sel,u8 attr_set,u32 mib_val,u8 peer) ufshcd_dme_set_attr() argument
4058 ufshcd_dme_get_attr(struct ufs_hba * hba,u32 attr_sel,u32 * mib_val,u8 peer) ufshcd_dme_get_attr() argument
4139 ufshcd_uic_pwr_ctrl(struct ufs_hba * hba,struct uic_command * cmd) ufshcd_uic_pwr_ctrl() argument
4228 ufshcd_send_bsg_uic_cmd(struct ufs_hba * hba,struct uic_command * uic_cmd) ufshcd_send_bsg_uic_cmd() argument
4265 ufshcd_uic_change_pwr_mode(struct ufs_hba * hba,u8 mode) ufshcd_uic_change_pwr_mode() argument
4292 ufshcd_link_recovery(struct ufs_hba * hba) ufshcd_link_recovery() argument
4321 ufshcd_uic_hibern8_enter(struct ufs_hba * hba) ufshcd_uic_hibern8_enter() argument
4345 ufshcd_uic_hibern8_exit(struct ufs_hba * hba) ufshcd_uic_hibern8_exit() argument
4372 ufshcd_auto_hibern8_update(struct ufs_hba * hba,u32 ahit) ufshcd_auto_hibern8_update() argument
4398 ufshcd_auto_hibern8_enable(struct ufs_hba * hba) ufshcd_auto_hibern8_enable() argument
4411 ufshcd_init_pwr_info(struct ufs_hba * hba) ufshcd_init_pwr_info() argument
4428 ufshcd_get_max_pwr_mode(struct ufs_hba * hba) ufshcd_get_max_pwr_mode() argument
4492 ufshcd_change_power_mode(struct ufs_hba * hba,struct ufs_pa_layer_attr * pwr_mode) ufshcd_change_power_mode() argument
4584 ufshcd_config_pwr_mode(struct ufs_hba * hba,struct ufs_pa_layer_attr * desired_pwr_mode) ufshcd_config_pwr_mode() argument
4614 ufshcd_complete_dev_init(struct ufs_hba * hba) ufshcd_complete_dev_init() argument
4665 ufshcd_make_hba_operational(struct ufs_hba * hba) ufshcd_make_hba_operational() argument
4715 ufshcd_hba_stop(struct ufs_hba * hba) ufshcd_hba_stop() argument
4746 ufshcd_hba_execute_hce(struct ufs_hba * hba) ufshcd_hba_execute_hce() argument
4801 ufshcd_hba_enable(struct ufs_hba * hba) ufshcd_hba_enable() argument
4832 ufshcd_disable_tx_lcc(struct ufs_hba * hba,bool peer) ufshcd_disable_tx_lcc() argument
4863 ufshcd_disable_device_tx_lcc(struct ufs_hba * hba) ufshcd_disable_device_tx_lcc() argument
4868 ufshcd_update_evt_hist(struct ufs_hba * hba,u32 id,u32 val) ufshcd_update_evt_hist() argument
4891 ufshcd_link_startup(struct ufs_hba * hba) ufshcd_link_startup() argument
4987 ufshcd_verify_dev_init(struct ufs_hba * hba) ufshcd_verify_dev_init() argument
5016 ufshcd_setup_links(struct ufs_hba * hba,struct scsi_device * sdev) ufshcd_setup_links() argument
5053 ufshcd_lu_init(struct ufs_hba * hba,struct scsi_device * sdev) ufshcd_lu_init() argument
5114 struct ufs_hba *hba; ufshcd_slave_alloc() local
5162 struct ufs_hba *hba = shost_priv(sdev->host); ufshcd_slave_configure() local
5194 struct ufs_hba *hba; ufshcd_slave_destroy() local
5269 ufshcd_transfer_rsp_status(struct ufs_hba * hba,struct ufshcd_lrb * lrbp,struct cq_entry * cqe) ufshcd_transfer_rsp_status() argument
5371 ufshcd_is_auto_hibern8_error(struct ufs_hba * hba,u32 intr_mask) ufshcd_is_auto_hibern8_error() argument
5398 ufshcd_uic_cmd_compl(struct ufs_hba * hba,u32 intr_status) ufshcd_uic_cmd_compl() argument
5431 ufshcd_release_scsi_cmd(struct ufs_hba * hba,struct ufshcd_lrb * lrbp) ufshcd_release_scsi_cmd() argument
5447 ufshcd_compl_one_cqe(struct ufs_hba * hba,int task_tag,struct cq_entry * cqe) ufshcd_compl_one_cqe() argument
5484 __ufshcd_transfer_req_compl(struct ufs_hba * hba,unsigned long completed_reqs) __ufshcd_transfer_req_compl() argument
5498 ufshcd_clear_polled(struct ufs_hba * hba,unsigned long * completed_reqs) ufshcd_clear_polled() argument
5519 struct ufs_hba *hba = shost_priv(shost); ufshcd_poll() local
5560 ufshcd_mcq_compl_pending_transfer(struct ufs_hba * hba,bool force_compl) ufshcd_mcq_compl_pending_transfer() argument
5608 ufshcd_transfer_req_compl(struct ufs_hba * hba) ufshcd_transfer_req_compl() argument
5633 __ufshcd_write_ee_control(struct ufs_hba * hba,u32 ee_ctrl_mask) __ufshcd_write_ee_control() argument
5640 ufshcd_write_ee_control(struct ufs_hba * hba) ufshcd_write_ee_control() argument
5653 ufshcd_update_ee_control(struct ufs_hba * hba,u16 * mask,const u16 * other_mask,u16 set,u16 clr) ufshcd_update_ee_control() argument
5683 ufshcd_disable_ee(struct ufs_hba * hba,u16 mask) ufshcd_disable_ee() argument
5698 ufshcd_enable_ee(struct ufs_hba * hba,u16 mask) ufshcd_enable_ee() argument
5714 ufshcd_enable_auto_bkops(struct ufs_hba * hba) ufshcd_enable_auto_bkops() argument
5753 ufshcd_disable_auto_bkops(struct ufs_hba * hba) ufshcd_disable_auto_bkops() argument
5796 ufshcd_force_reset_auto_bkops(struct ufs_hba * hba) ufshcd_force_reset_auto_bkops() argument
5811 ufshcd_get_bkops_status(struct ufs_hba * hba,u32 * status) ufshcd_get_bkops_status() argument
5833 ufshcd_bkops_ctrl(struct ufs_hba * hba,enum bkops_status status) ufshcd_bkops_ctrl() argument
5871 ufshcd_urgent_bkops(struct ufs_hba * hba) ufshcd_urgent_bkops() argument
5876 ufshcd_get_ee_status(struct ufs_hba * hba,u32 * status) ufshcd_get_ee_status() argument
5882 ufshcd_bkops_exception_event_handler(struct ufs_hba * hba) ufshcd_bkops_exception_event_handler() argument
5919 ufshcd_temp_exception_event_handler(struct ufs_hba * hba,u16 status) ufshcd_temp_exception_event_handler() argument
5937 __ufshcd_wb_toggle(struct ufs_hba * hba,bool set,enum flag_idn idn) __ufshcd_wb_toggle() argument
5947 ufshcd_wb_toggle(struct ufs_hba * hba,bool enable) ufshcd_wb_toggle() argument
5969 ufshcd_wb_toggle_buf_flush_during_h8(struct ufs_hba * hba,bool enable) ufshcd_wb_toggle_buf_flush_during_h8() argument
5985 ufshcd_wb_toggle_buf_flush(struct ufs_hba * hba,bool enable) ufshcd_wb_toggle_buf_flush() argument
6007 ufshcd_wb_presrv_usrspc_keep_vcc_on(struct ufs_hba * hba,u32 avail_buf) ufshcd_wb_presrv_usrspc_keep_vcc_on() argument
6033 ufshcd_wb_force_disable(struct ufs_hba * hba) ufshcd_wb_force_disable() argument
6045 ufshcd_is_wb_buf_lifetime_available(struct ufs_hba * hba) ufshcd_is_wb_buf_lifetime_available() argument
6074 ufshcd_wb_need_flush(struct ufs_hba * hba) ufshcd_wb_need_flush() argument
6117 struct ufs_hba *hba = container_of(to_delayed_work(work), ufshcd_rpm_dev_flush_recheck_work() local
6139 struct ufs_hba *hba; ufshcd_exception_event_handler() local
6166 ufshcd_complete_requests(struct ufs_hba * hba,bool force_compl) ufshcd_complete_requests() argument
6183 ufshcd_quirk_dl_nac_errors(struct ufs_hba * hba) ufshcd_quirk_dl_nac_errors() argument
6248 ufshcd_is_saved_err_fatal(struct ufs_hba * hba) ufshcd_is_saved_err_fatal() argument
6254 ufshcd_schedule_eh_work(struct ufs_hba * hba) ufshcd_schedule_eh_work() argument
6269 ufshcd_force_error_recovery(struct ufs_hba * hba) ufshcd_force_error_recovery() argument
6277 ufshcd_clk_scaling_allow(struct ufs_hba * hba,bool allow) ufshcd_clk_scaling_allow() argument
6286 ufshcd_clk_scaling_suspend(struct ufs_hba * hba,bool suspend) ufshcd_clk_scaling_suspend() argument
6299 ufshcd_err_handling_prepare(struct ufs_hba * hba) ufshcd_err_handling_prepare() argument
6334 ufshcd_err_handling_unprepare(struct ufs_hba * hba) ufshcd_err_handling_unprepare() argument
6343 ufshcd_err_handling_should_stop(struct ufs_hba * hba) ufshcd_err_handling_should_stop() argument
6353 ufshcd_recover_pm_error(struct ufs_hba * hba) ufshcd_recover_pm_error() argument
6386 ufshcd_recover_pm_error(struct ufs_hba * hba) ufshcd_recover_pm_error() argument
6391 ufshcd_is_pwr_mode_restore_needed(struct ufs_hba * hba) ufshcd_is_pwr_mode_restore_needed() argument
6414 struct ufs_hba *hba = shost_priv(shost); ufshcd_abort_one() local
6444 ufshcd_abort_all(struct ufs_hba * hba) ufshcd_abort_all() argument
6473 struct ufs_hba *hba; ufshcd_err_handler() local
6655 ufshcd_update_uic_error(struct ufs_hba * hba) ufshcd_update_uic_error() argument
6748 ufshcd_check_errors(struct ufs_hba * hba,u32 intr_status) ufshcd_check_errors() argument
6824 ufshcd_tmc_handler(struct ufs_hba * hba) ufshcd_tmc_handler() argument
6851 ufshcd_handle_mcq_cq_events(struct ufs_hba * hba) ufshcd_handle_mcq_cq_events() argument
6888 ufshcd_sl_intr(struct ufs_hba * hba,u32 intr_status) ufshcd_sl_intr() argument
6923 struct ufs_hba *hba = __hba; ufshcd_intr() local
6960 ufshcd_clear_tm_cmd(struct ufs_hba * hba,int tag) ufshcd_clear_tm_cmd() argument
6985 __ufshcd_issue_tm_cmd(struct ufs_hba * hba,struct utp_task_req_desc * treq,u8 tm_function) __ufshcd_issue_tm_cmd() argument
7066 ufshcd_issue_tm_cmd(struct ufs_hba * hba,int lun_id,int task_id,u8 tm_function,u8 * tm_response) ufshcd_issue_tm_cmd() argument
7122 ufshcd_issue_devman_upiu_cmd(struct ufs_hba * hba,struct utp_upiu_req * req_upiu,struct utp_upiu_req * rsp_upiu,u8 * desc_buff,int * buff_len,enum dev_cmd_type cmd_type,enum query_opcode desc_op) ufshcd_issue_devman_upiu_cmd() argument
7225 ufshcd_exec_raw_upiu_cmd(struct ufs_hba * hba,struct utp_upiu_req * req_upiu,struct utp_upiu_req * rsp_upiu,enum upiu_request_transaction msgcode,u8 * desc_buff,int * buff_len,enum query_opcode desc_op) ufshcd_exec_raw_upiu_cmd() argument
7294 ufshcd_advanced_rpmb_req_handler(struct ufs_hba * hba,struct utp_upiu_req * req_upiu,struct utp_upiu_req * rsp_upiu,struct ufs_ehs * req_ehs,struct ufs_ehs * rsp_ehs,int sg_cnt,struct scatterlist * sg_list,enum dma_data_direction dir) ufshcd_advanced_rpmb_req_handler() argument
7393 struct ufs_hba *hba; ufshcd_eh_device_reset_handler() local
7460 ufshcd_set_req_abort_skip(struct ufs_hba * hba,unsigned long bitmap) ufshcd_set_req_abort_skip() argument
7484 ufshcd_try_to_abort_task(struct ufs_hba * hba,int tag) ufshcd_try_to_abort_task() argument
7575 struct ufs_hba *hba = shost_priv(host); ufshcd_abort() local
7697 ufshcd_host_reset_and_restore(struct ufs_hba * hba) ufshcd_host_reset_and_restore() argument
7734 ufshcd_reset_and_restore(struct ufs_hba * hba) ufshcd_reset_and_restore() argument
7796 struct ufs_hba *hba; ufshcd_eh_host_reset_handler() local
7870 ufshcd_find_max_sup_active_icc_level(struct ufs_hba * hba,const u8 * desc_buf) ufshcd_find_max_sup_active_icc_level() argument
7910 ufshcd_set_active_icc_lvl(struct ufs_hba * hba) ufshcd_set_active_icc_lvl() argument
7980 ufshcd_scsi_add_wlus(struct ufs_hba * hba) ufshcd_scsi_add_wlus() argument
8019 ufshcd_wb_probe(struct ufs_hba * hba,const u8 * desc_buf) ufshcd_wb_probe() argument
8086 ufshcd_temp_notif_probe(struct ufs_hba * hba,const u8 * desc_buf) ufshcd_temp_notif_probe() argument
8109 ufshcd_ext_iid_probe(struct ufs_hba * hba,u8 * desc_buf) ufshcd_ext_iid_probe() argument
8134 ufshcd_fixup_dev_quirks(struct ufs_hba * hba,const struct ufs_dev_quirk * fixups) ufshcd_fixup_dev_quirks() argument
8154 ufs_fixup_device_setup(struct ufs_hba * hba) ufs_fixup_device_setup() argument
8163 ufshcd_update_rtc(struct ufs_hba * hba) ufshcd_update_rtc() argument
8198 struct ufs_hba *hba; ufshcd_rtc_work() local
8213 ufs_init_rtc(struct ufs_hba * hba,u8 * desc_buf) ufs_init_rtc() argument
8234 ufs_get_device_desc(struct ufs_hba * hba) ufs_get_device_desc() argument
8302 ufs_put_device_desc(struct ufs_hba * hba) ufs_put_device_desc() argument
8321 ufshcd_tune_pa_tactivate(struct ufs_hba * hba) ufshcd_tune_pa_tactivate() argument
8356 ufshcd_tune_pa_hibern8time(struct ufs_hba * hba) ufshcd_tune_pa_hibern8time() argument
8398 ufshcd_quirk_tune_host_pa_tactivate(struct ufs_hba * hba) ufshcd_quirk_tune_host_pa_tactivate() argument
8457 ufshcd_tune_unipro_params(struct ufs_hba * hba) ufshcd_tune_unipro_params() argument
8474 ufshcd_clear_dbg_ufs_stats(struct ufs_hba * hba) ufshcd_clear_dbg_ufs_stats() argument
8481 ufshcd_device_geo_params_init(struct ufs_hba * hba) ufshcd_device_geo_params_init() argument
8535 ufshcd_parse_dev_ref_clk_freq(struct ufs_hba * hba,struct clk * refclk) ufshcd_parse_dev_ref_clk_freq() argument
8549 ufshcd_set_dev_ref_clk(struct ufs_hba * hba) ufshcd_set_dev_ref_clk() argument
8583 ufshcd_device_params_init(struct ufs_hba * hba) ufshcd_device_params_init() argument
8616 ufshcd_set_timestamp_attr(struct ufs_hba * hba) ufshcd_set_timestamp_attr() argument
8657 ufshcd_add_lus(struct ufs_hba * hba) ufshcd_add_lus() argument
8697 ufshcd_release_sdb_queue(struct ufs_hba * hba,int nutrs) ufshcd_release_sdb_queue() argument
8712 ufshcd_alloc_mcq(struct ufs_hba * hba) ufshcd_alloc_mcq() argument
8748 ufshcd_config_mcq(struct ufs_hba * hba) ufshcd_config_mcq() argument
8777 ufshcd_device_init(struct ufs_hba * hba,bool init_dev_params) ufshcd_device_init() argument
8877 ufshcd_probe_hba(struct ufs_hba * hba,bool init_dev_params) ufshcd_probe_hba() argument
8946 struct ufs_hba *hba = (struct ufs_hba *)data; ufshcd_async_scan() local
8968 struct ufs_hba *hba = shost_priv(scmd->device->host); ufshcd_eh_timed_out() local
9058 ufshcd_config_vreg_lpm(struct ufs_hba * hba,struct ufs_vreg * vreg) ufshcd_config_vreg_lpm() argument
9064 ufshcd_config_vreg_hpm(struct ufs_hba * hba,struct ufs_vreg * vreg) ufshcd_config_vreg_hpm() argument
9123 ufshcd_setup_vreg(struct ufs_hba * hba,bool on) ufshcd_setup_vreg() argument
9148 ufshcd_setup_hba_vreg(struct ufs_hba * hba,bool on) ufshcd_setup_hba_vreg() argument
9173 ufshcd_init_vreg(struct ufs_hba * hba) ufshcd_init_vreg() argument
9190 ufshcd_init_hba_vreg(struct ufs_hba * hba) ufshcd_init_hba_vreg() argument
9197 ufshcd_setup_clocks(struct ufs_hba * hba,bool on) ufshcd_setup_clocks() argument
9265 ufshcd_parse_ref_clk_property(struct ufs_hba * hba) ufshcd_parse_ref_clk_property() argument
9278 ufshcd_init_clocks(struct ufs_hba * hba) ufshcd_init_clocks() argument
9325 ufshcd_variant_hba_init(struct ufs_hba * hba) ufshcd_variant_hba_init() argument
9341 ufshcd_variant_hba_exit(struct ufs_hba * hba) ufshcd_variant_hba_exit() argument
9349 ufshcd_hba_init(struct ufs_hba * hba) ufshcd_hba_init() argument
9406 ufshcd_hba_exit(struct ufs_hba * hba) ufshcd_hba_exit() argument
9448 ufshcd_set_dev_pwr_mode(struct ufs_hba * hba,enum ufs_dev_pwr_mode pwr_mode) ufshcd_set_dev_pwr_mode() argument
9507 ufshcd_link_state_transition(struct ufs_hba * hba,enum uic_link_state req_link_state,bool check_for_bkops) ufshcd_link_state_transition() argument
9565 ufshcd_vreg_set_lpm(struct ufs_hba * hba) ufshcd_vreg_set_lpm() argument
9616 ufshcd_vreg_set_hpm(struct ufs_hba * hba) ufshcd_vreg_set_hpm() argument
9645 ufshcd_hba_vreg_set_lpm(struct ufs_hba * hba) ufshcd_hba_vreg_set_lpm() argument
9651 ufshcd_hba_vreg_set_hpm(struct ufs_hba * hba) ufshcd_hba_vreg_set_hpm() argument
9657 __ufshcd_wl_suspend(struct ufs_hba * hba,enum ufs_pm_op pm_op) __ufshcd_wl_suspend() argument
9840 __ufshcd_wl_resume(struct ufs_hba * hba,enum ufs_pm_op pm_op) __ufshcd_wl_resume() argument
9935 struct ufs_hba *hba; ufshcd_wl_runtime_suspend() local
9955 struct ufs_hba *hba; ufshcd_wl_runtime_resume() local
9977 struct ufs_hba *hba; ufshcd_wl_suspend() local
10007 struct ufs_hba *hba; ufshcd_wl_resume() local
10040 ufshcd_suspend(struct ufs_hba * hba) ufshcd_suspend() argument
10078 ufshcd_resume(struct ufs_hba * hba) ufshcd_resume() argument
10121 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_system_suspend() local
10148 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_system_resume() local
10178 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_runtime_suspend() local
10205 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_runtime_resume() local
10222 struct ufs_hba *hba = shost_priv(sdev->host); ufshcd_wl_shutdown() local
10255 ufshcd_remove(struct ufs_hba * hba) ufshcd_remove() argument
10287 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_system_restore() local
10326 ufshcd_dealloc_host(struct ufs_hba * hba) ufshcd_dealloc_host() argument
10339 ufshcd_set_dma_mask(struct ufs_hba * hba) ufshcd_set_dma_mask() argument
10360 struct ufs_hba *hba; ufshcd_alloc_host() local
10414 ufshcd_init(struct ufs_hba * hba,void __iomem * mmio_base,unsigned int irq) ufshcd_init() argument
10644 struct ufs_hba *hba = dev_get_drvdata(dev); ufshcd_resume_complete() local
10653 ufshcd_rpm_ok_for_spm(struct ufs_hba * hba) ufshcd_rpm_ok_for_spm() argument
10675 struct ufs_hba *hba = dev_get_drvdata(dev); __ufshcd_suspend_prepare() local
10715 struct ufs_hba *hba = shost_priv(sdev->host); ufshcd_wl_poweroff() local
[all...]
H A Dufs-mcq.c91 void ufshcd_mcq_config_mac(struct ufs_hba *hba, u32 max_active_cmds) in ufshcd_mcq_config_mac() argument
95 val = ufshcd_readl(hba, REG_UFS_MCQ_CFG); in ufshcd_mcq_config_mac()
98 ufshcd_writel(hba, val, REG_UFS_MCQ_CFG); in ufshcd_mcq_config_mac()
111 struct ufs_hw_queue *ufshcd_mcq_req_to_hwq(struct ufs_hba *hba, in ufshcd_mcq_req_to_hwq() argument
116 return hctx ? &hba->uhq[hctx->queue_num] : NULL; in ufshcd_mcq_req_to_hwq()
131 int ufshcd_mcq_decide_queue_depth(struct ufs_hba *hba) in ufshcd_mcq_decide_queue_depth() argument
136 mac = ufshcd_mcq_vops_get_hba_mac(hba); in ufshcd_mcq_decide_queue_depth()
138 dev_err(hba->dev, "Failed to get mac, err=%d\n", mac); in ufshcd_mcq_decide_queue_depth()
142 WARN_ON_ONCE(!hba->dev_info.bqueuedepth); in ufshcd_mcq_decide_queue_depth()
148 return min_t(int, mac, hba->dev_info.bqueuedepth); in ufshcd_mcq_decide_queue_depth()
[all …]
H A Dufs-debugfs.c36 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()
76 ufshcd_rpm_get_sync(hba); in ufs_debugfs_get_user_access()
[all …]
H A Dufshcd-crypto.c20 static int 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()
27 ufshcd_hold(hba); in ufshcd_program_key()
29 if (hba->vops && hba->vops->program_key) { in ufshcd_program_key()
30 err = hba->vops->program_key(hba, cfg, slot); in ufshcd_program_key()
35 ufshcd_writel(hba, 0, slot_offset + 16 * sizeof(cfg->reg_val[0])); in ufshcd_program_key()
37 ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[i]), in ufshcd_program_key()
41 ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[17]), in ufshcd_program_key()
44 ufshcd_writel(hba, le32_to_cpu(cfg->reg_val[16]), in ufshcd_program_key()
47 ufshcd_release(hba); in ufshcd_program_key()
[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-sysfs.c42 struct ufs_hba *hba = dev_get_drvdata(dev); in ufs_sysfs_pm_lvl_store() local
43 struct ufs_dev_info *dev_info = &hba->dev_info; in ufs_sysfs_pm_lvl_store()
53 (!(hba->caps & UFSHCD_CAP_DEEPSLEEP) || in ufs_sysfs_pm_lvl_store()
57 spin_lock_irqsave(hba->host->host_lock, flags); in ufs_sysfs_pm_lvl_store()
59 hba->rpm_lvl = value; in ufs_sysfs_pm_lvl_store()
61 hba->spm_lvl = value; in ufs_sysfs_pm_lvl_store()
62 spin_unlock_irqrestore(hba->host->host_lock, flags); in ufs_sysfs_pm_lvl_store()
69 struct ufs_hba *hba = dev_get_drvdata(dev); in rpm_lvl_show() local
71 return sysfs_emit(buf, "%d\n", hba->rpm_lvl); in rpm_lvl_show()
83 struct ufs_hba *hba = dev_get_drvdata(dev); in rpm_target_dev_state_show() local
[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 …]
/openbmc/linux/drivers/ufs/host/
H A Dufs-mediatek.c31 static int ufs_mtk_config_mcq(struct ufs_hba *hba, bool irq);
94 static bool ufs_mtk_is_boost_crypt_enabled(struct ufs_hba *hba) in ufs_mtk_is_boost_crypt_enabled() argument
96 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_boost_crypt_enabled()
101 static bool ufs_mtk_is_va09_supported(struct ufs_hba *hba) in ufs_mtk_is_va09_supported() argument
103 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_va09_supported()
108 static bool ufs_mtk_is_broken_vcc(struct ufs_hba *hba) in ufs_mtk_is_broken_vcc() argument
110 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_broken_vcc()
115 static bool ufs_mtk_is_pmc_via_fastauto(struct ufs_hba *hba) in ufs_mtk_is_pmc_via_fastauto() argument
117 struct ufs_mtk_host *host = ufshcd_get_variant(hba); in ufs_mtk_is_pmc_via_fastauto()
122 static void ufs_mtk_cfg_unipro_cg(struct ufs_hba *hba, bool enable) in ufs_mtk_cfg_unipro_cg() argument
[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 Dufs-qcom.c102 static int ufs_qcom_set_dme_vs_core_clk_ctrl_clear_div(struct ufs_hba *hba,
114 if (host->hba->caps & UFSHCD_CAP_CRYPTO) in ufs_qcom_ice_enable()
120 struct ufs_hba *hba = host->hba; in ufs_qcom_ice_init() local
121 struct device *dev = hba->dev; in ufs_qcom_ice_init()
134 hba->caps |= UFSHCD_CAP_CRYPTO; in ufs_qcom_ice_init()
141 if (host->hba->caps & UFSHCD_CAP_CRYPTO) in ufs_qcom_ice_resume()
149 if (host->hba->caps & UFSHCD_CAP_CRYPTO) in ufs_qcom_ice_suspend()
155 static int ufs_qcom_ice_program_key(struct ufs_hba *hba, in ufs_qcom_ice_program_key() argument
159 struct ufs_qcom_host *host = ufshcd_get_variant(hba); in ufs_qcom_ice_program_key()
166 cap = hba->crypto_cap_array[cfg->crypto_cap_idx]; in ufs_qcom_ice_program_key()
[all …]
H A Dufshcd-pci.c24 void (*late_init)(struct ufs_hba *hba);
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()
[all …]
H A Dufs-exynos.c214 struct ufs_hba *hba = ufs->hba; in exynosauto_ufs_post_hce_enable() local
217 ufshcd_rmwl(hba, MHCTRL_EN_VH_MASK, MHCTRL_EN_VH(1), MHCTRL); in exynosauto_ufs_post_hce_enable()
228 struct ufs_hba *hba = ufs->hba; in exynosauto_ufs_pre_link() local
235 ufshcd_dme_set(hba, UIC_ARG_MIB(0x200), 0x40); in exynosauto_ufs_pre_link()
237 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(VND_RX_CLK_PRD, i), in exynosauto_ufs_pre_link()
239 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(VND_RX_CLK_PRD_EN, i), 0x0); in exynosauto_ufs_pre_link()
241 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(VND_RX_LINERESET_VALUE2, i), in exynosauto_ufs_pre_link()
243 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(VND_RX_LINERESET_VALUE1, i), in exynosauto_ufs_pre_link()
245 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(VND_RX_LINERESET_VALUE0, i), in exynosauto_ufs_pre_link()
248 ufshcd_dme_set(hba, UIC_ARG_MIB_SEL(0x2f, i), 0x79); in exynosauto_ufs_pre_link()
[all …]
H A Dcdns-pltfrm.c37 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 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 …]
/openbmc/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 …]
H A Dstex.c392 static struct status_msg *stex_get_status(struct st_hba *hba) in stex_get_status() argument
394 struct status_msg *status = hba->status_buffer + hba->status_tail; in stex_get_status()
396 ++hba->status_tail; in stex_get_status()
397 hba->status_tail %= hba->sts_count+1; in stex_get_status()
410 static struct req_msg *stex_alloc_req(struct st_hba *hba) in stex_alloc_req() argument
412 struct req_msg *req = hba->dma_mem + hba->req_head * hba->rq_size; in stex_alloc_req()
414 ++hba->req_head; in stex_alloc_req()
415 hba->req_head %= hba->rq_count+1; in stex_alloc_req()
420 static struct req_msg *stex_ss_alloc_req(struct st_hba *hba) in stex_ss_alloc_req() argument
422 return (struct req_msg *)(hba->dma_mem + in stex_ss_alloc_req()
[all …]
/openbmc/linux/drivers/scsi/bnx2i/
H A Dbnx2i_init.c82 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 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()
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 Dbnx2i_hwi.c34 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 …]
/openbmc/linux/include/ufs/
H A Dufshcd.h97 #define ufshcd_is_link_off(hba) ((hba)->uic_link_state == UIC_LINK_OFF_STATE) argument
98 #define ufshcd_is_link_active(hba) ((hba)->uic_link_state == \ argument
100 #define ufshcd_is_link_hibern8(hba) ((hba)->uic_link_state == \ argument
102 #define ufshcd_is_link_broken(hba) ((hba)->uic_link_state == \ argument
104 #define ufshcd_set_link_off(hba) ((hba)->uic_link_state = UIC_LINK_OFF_STATE) argument
105 #define ufshcd_set_link_active(hba) ((hba)->uic_link_state = \ argument
107 #define ufshcd_set_link_hibern8(hba) ((hba)->uic_link_state = \ argument
109 #define ufshcd_set_link_broken(hba) ((hba)->uic_link_state = \ argument
351 void (*setup_xfer_req)(struct ufs_hba *hba, int tag,
356 int (*apply_dev_quirks)(struct ufs_hba *hba);
[all …]
/openbmc/linux/drivers/parisc/
H A Dlba_pci.c111 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 …]
/openbmc/linux/drivers/scsi/bnx2fc/
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_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 …]
/openbmc/linux/drivers/target/
H A Dtarget_core_hba.c111 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()
132 ret = hba->backend->ops->attach_hba(hba, plugin_dep_id); in core_alloc_hba()
[all …]

1234