Lines Matching defs:ufs_hba
31 struct ufs_hba;
332 int (*init)(struct ufs_hba *);
333 void (*exit)(struct ufs_hba *);
334 u32 (*get_ufs_hci_version)(struct ufs_hba *);
335 int (*clk_scale_notify)(struct ufs_hba *, bool,
337 int (*setup_clocks)(struct ufs_hba *, bool,
339 int (*hce_enable_notify)(struct ufs_hba *,
341 int (*link_startup_notify)(struct ufs_hba *,
343 int (*pwr_change_notify)(struct ufs_hba *,
347 void (*setup_xfer_req)(struct ufs_hba *hba, int tag,
349 void (*setup_task_mgmt)(struct ufs_hba *, int, u8);
350 void (*hibern8_notify)(struct ufs_hba *, enum uic_cmd_dme,
352 int (*apply_dev_quirks)(struct ufs_hba *hba);
353 void (*fixup_dev_quirks)(struct ufs_hba *hba);
354 int (*suspend)(struct ufs_hba *, enum ufs_pm_op,
356 int (*resume)(struct ufs_hba *, enum ufs_pm_op);
357 void (*dbg_register_dump)(struct ufs_hba *hba);
358 int (*phy_initialization)(struct ufs_hba *);
359 int (*device_reset)(struct ufs_hba *hba);
360 void (*config_scaling_param)(struct ufs_hba *hba,
363 int (*program_key)(struct ufs_hba *hba,
365 void (*event_notify)(struct ufs_hba *hba,
367 void (*reinit_notify)(struct ufs_hba *);
368 int (*mcq_config_resource)(struct ufs_hba *hba);
369 int (*get_hba_mac)(struct ufs_hba *hba);
370 int (*op_runtime_config)(struct ufs_hba *hba);
371 int (*get_outstanding_cqs)(struct ufs_hba *hba,
373 int (*config_esi)(struct ufs_hba *hba);
797 * struct ufs_hba - per adapter private structure
915 struct ufs_hba {
1115 static inline bool is_mcq_enabled(struct ufs_hba *hba)
1121 static inline size_t ufshcd_sg_entry_size(const struct ufs_hba *hba)
1126 static inline void ufshcd_set_sg_entry_size(struct ufs_hba *hba, size_t sg_entry_size)
1132 static inline size_t ufshcd_sg_entry_size(const struct ufs_hba *hba)
1141 static inline size_t ufshcd_get_ucd_size(const struct ufs_hba *hba)
1147 static inline bool ufshcd_is_clkgating_allowed(struct ufs_hba *hba)
1151 static inline bool ufshcd_can_hibern8_during_gating(struct ufs_hba *hba)
1155 static inline int ufshcd_is_clkscaling_supported(struct ufs_hba *hba)
1159 static inline bool ufshcd_can_autobkops_during_suspend(struct ufs_hba *hba)
1163 static inline bool ufshcd_is_rpm_autosuspend_allowed(struct ufs_hba *hba)
1168 static inline bool ufshcd_is_intr_aggr_allowed(struct ufs_hba *hba)
1174 static inline bool ufshcd_can_aggressive_pc(struct ufs_hba *hba)
1180 static inline bool ufshcd_is_auto_hibern8_supported(struct ufs_hba *hba)
1186 static inline bool ufshcd_is_auto_hibern8_enabled(struct ufs_hba *hba)
1191 static inline bool ufshcd_is_wb_allowed(struct ufs_hba *hba)
1196 static inline bool ufshcd_enable_wb_if_scaling_up(struct ufs_hba *hba)
1223 static inline void ufshcd_rmwl(struct ufs_hba *hba, u32 mask, u32 val, u32 reg)
1233 int ufshcd_alloc_host(struct device *, struct ufs_hba **);
1234 void ufshcd_dealloc_host(struct ufs_hba *);
1235 int ufshcd_hba_enable(struct ufs_hba *hba);
1236 int ufshcd_init(struct ufs_hba *, void __iomem *, unsigned int);
1237 int ufshcd_link_recovery(struct ufs_hba *hba);
1238 int ufshcd_make_hba_operational(struct ufs_hba *hba);
1239 void ufshcd_remove(struct ufs_hba *);
1240 int ufshcd_uic_hibern8_enter(struct ufs_hba *hba);
1241 int ufshcd_uic_hibern8_exit(struct ufs_hba *hba);
1243 void ufshcd_parse_dev_ref_clk_freq(struct ufs_hba *hba, struct clk *refclk);
1244 void ufshcd_update_evt_hist(struct ufs_hba *hba, u32 id, u32 val);
1245 void ufshcd_hba_stop(struct ufs_hba *hba);
1246 void ufshcd_schedule_eh_work(struct ufs_hba *hba);
1247 void ufshcd_mcq_config_mac(struct ufs_hba *hba, u32 max_active_cmds);
1248 u32 ufshcd_mcq_read_cqis(struct ufs_hba *hba, int i);
1249 void ufshcd_mcq_write_cqis(struct ufs_hba *hba, u32 val, int i);
1250 unsigned long ufshcd_mcq_poll_cqe_lock(struct ufs_hba *hba,
1252 void ufshcd_mcq_make_queues_operational(struct ufs_hba *hba);
1253 void ufshcd_mcq_enable_esi(struct ufs_hba *hba);
1254 void ufshcd_mcq_config_esi(struct ufs_hba *hba, struct msi_msg *msg);
1261 static inline void ufshcd_set_variant(struct ufs_hba *hba, void *variant)
1271 static inline void *ufshcd_get_variant(struct ufs_hba *hba)
1289 extern int ufshcd_dme_configure_adapt(struct ufs_hba *hba,
1292 extern int ufshcd_dme_set_attr(struct ufs_hba *hba, u32 attr_sel,
1294 extern int ufshcd_dme_get_attr(struct ufs_hba *hba, u32 attr_sel,
1296 extern int ufshcd_config_pwr_mode(struct ufs_hba *hba,
1298 extern int ufshcd_uic_change_pwr_mode(struct ufs_hba *hba, u8 mode);
1306 static inline int ufshcd_dme_set(struct ufs_hba *hba, u32 attr_sel,
1313 static inline int ufshcd_dme_st_set(struct ufs_hba *hba, u32 attr_sel,
1320 static inline int ufshcd_dme_peer_set(struct ufs_hba *hba, u32 attr_sel,
1327 static inline int ufshcd_dme_peer_st_set(struct ufs_hba *hba, u32 attr_sel,
1334 static inline int ufshcd_dme_get(struct ufs_hba *hba,
1340 static inline int ufshcd_dme_peer_get(struct ufs_hba *hba,
1354 static inline int ufshcd_disable_host_tx_lcc(struct ufs_hba *hba)
1359 void ufshcd_auto_hibern8_enable(struct ufs_hba *hba);
1360 void ufshcd_auto_hibern8_update(struct ufs_hba *hba, u32 ahit);
1361 void ufshcd_fixup_dev_quirks(struct ufs_hba *hba,
1365 int ufshcd_read_string_desc(struct ufs_hba *hba, u8 desc_index,
1368 void ufshcd_hold(struct ufs_hba *hba);
1369 void ufshcd_release(struct ufs_hba *hba);
1373 u32 ufshcd_get_local_unipro_ver(struct ufs_hba *hba);
1377 int ufshcd_send_uic_cmd(struct ufs_hba *hba, struct uic_command *uic_cmd);
1379 int ufshcd_advanced_rpmb_req_handler(struct ufs_hba *hba, struct utp_upiu_req *req_upiu,
1383 int ufshcd_wb_toggle(struct ufs_hba *hba, bool enable);
1384 int ufshcd_wb_toggle_buf_flush(struct ufs_hba *hba, bool enable);
1388 bool ufshcd_is_hba_active(struct ufs_hba *hba);
1391 static inline int ufshcd_vops_init(struct ufs_hba *hba)
1399 static inline int ufshcd_vops_phy_initialization(struct ufs_hba *hba)
1409 int ufshcd_dump_regs(struct ufs_hba *hba, size_t offset, size_t len,
1412 int __ufshcd_write_ee_control(struct ufs_hba *hba, u32 ee_ctrl_mask);
1413 int ufshcd_write_ee_control(struct ufs_hba *hba);
1414 int ufshcd_update_ee_control(struct ufs_hba *hba, u16 *mask,