Lines Matching full:hba
33 * @hba: per adapter instance
36 static void cdns_ufs_get_l4_attr(struct ufs_hba *hba) in cdns_ufs_get_l4_attr() argument
38 struct cdns_ufs_host *host = ufshcd_get_variant(hba); in cdns_ufs_get_l4_attr()
40 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PEERDEVICEID), in cdns_ufs_get_l4_attr()
42 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PEERCPORTID), in cdns_ufs_get_l4_attr()
44 ufshcd_dme_get(hba, UIC_ARG_MIB(T_TRAFFICCLASS), in cdns_ufs_get_l4_attr()
46 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PROTOCOLID), in cdns_ufs_get_l4_attr()
48 ufshcd_dme_get(hba, UIC_ARG_MIB(T_CPORTFLAGS), in cdns_ufs_get_l4_attr()
50 ufshcd_dme_get(hba, UIC_ARG_MIB(T_TXTOKENVALUE), in cdns_ufs_get_l4_attr()
52 ufshcd_dme_get(hba, UIC_ARG_MIB(T_RXTOKENVALUE), in cdns_ufs_get_l4_attr()
54 ufshcd_dme_get(hba, UIC_ARG_MIB(T_LOCALBUFFERSPACE), in cdns_ufs_get_l4_attr()
56 ufshcd_dme_get(hba, UIC_ARG_MIB(T_PEERBUFFERSPACE), in cdns_ufs_get_l4_attr()
58 ufshcd_dme_get(hba, UIC_ARG_MIB(T_CREDITSTOSEND), in cdns_ufs_get_l4_attr()
60 ufshcd_dme_get(hba, UIC_ARG_MIB(T_CPORTMODE), in cdns_ufs_get_l4_attr()
62 ufshcd_dme_get(hba, UIC_ARG_MIB(T_CONNECTIONSTATE), in cdns_ufs_get_l4_attr()
68 * @hba: per adapter instance
71 static void cdns_ufs_set_l4_attr(struct ufs_hba *hba) in cdns_ufs_set_l4_attr() argument
73 struct cdns_ufs_host *host = ufshcd_get_variant(hba); in cdns_ufs_set_l4_attr()
75 ufshcd_dme_set(hba, UIC_ARG_MIB(T_CONNECTIONSTATE), 0); in cdns_ufs_set_l4_attr()
76 ufshcd_dme_set(hba, UIC_ARG_MIB(T_PEERDEVICEID), in cdns_ufs_set_l4_attr()
78 ufshcd_dme_set(hba, UIC_ARG_MIB(T_PEERCPORTID), in cdns_ufs_set_l4_attr()
80 ufshcd_dme_set(hba, UIC_ARG_MIB(T_TRAFFICCLASS), in cdns_ufs_set_l4_attr()
82 ufshcd_dme_set(hba, UIC_ARG_MIB(T_PROTOCOLID), in cdns_ufs_set_l4_attr()
84 ufshcd_dme_set(hba, UIC_ARG_MIB(T_CPORTFLAGS), in cdns_ufs_set_l4_attr()
86 ufshcd_dme_set(hba, UIC_ARG_MIB(T_TXTOKENVALUE), in cdns_ufs_set_l4_attr()
88 ufshcd_dme_set(hba, UIC_ARG_MIB(T_RXTOKENVALUE), in cdns_ufs_set_l4_attr()
90 ufshcd_dme_set(hba, UIC_ARG_MIB(T_LOCALBUFFERSPACE), in cdns_ufs_set_l4_attr()
92 ufshcd_dme_set(hba, UIC_ARG_MIB(T_PEERBUFFERSPACE), in cdns_ufs_set_l4_attr()
94 ufshcd_dme_set(hba, UIC_ARG_MIB(T_CREDITSTOSEND), in cdns_ufs_set_l4_attr()
96 ufshcd_dme_set(hba, UIC_ARG_MIB(T_CPORTMODE), in cdns_ufs_set_l4_attr()
98 ufshcd_dme_set(hba, UIC_ARG_MIB(T_CONNECTIONSTATE), in cdns_ufs_set_l4_attr()
104 * @hba: host controller instance
108 static int cdns_ufs_set_hclkdiv(struct ufs_hba *hba) in cdns_ufs_set_hclkdiv() argument
111 struct list_head *head = &hba->clk_list_head; in cdns_ufs_set_hclkdiv()
126 dev_err(hba->dev, "%s: unable to find core_clk rate\n", in cdns_ufs_set_hclkdiv()
133 ufshcd_writel(hba, core_clk_div, CDNS_UFS_REG_HCLKDIV); in cdns_ufs_set_hclkdiv()
145 * @hba: host controller instance
150 static int cdns_ufs_hce_enable_notify(struct ufs_hba *hba, in cdns_ufs_hce_enable_notify() argument
156 return cdns_ufs_set_hclkdiv(hba); in cdns_ufs_hce_enable_notify()
161 * @hba: host controller instance
166 static void cdns_ufs_hibern8_notify(struct ufs_hba *hba, enum uic_cmd_dme cmd, in cdns_ufs_hibern8_notify() argument
170 cdns_ufs_get_l4_attr(hba); in cdns_ufs_hibern8_notify()
172 cdns_ufs_set_l4_attr(hba); in cdns_ufs_hibern8_notify()
177 * @hba: host controller instance
182 static int cdns_ufs_link_startup_notify(struct ufs_hba *hba, in cdns_ufs_link_startup_notify() argument
195 ufshcd_disable_host_tx_lcc(hba); in cdns_ufs_link_startup_notify()
201 hba->ahit = 0; in cdns_ufs_link_startup_notify()
208 * @hba: host controller instance
212 static int cdns_ufs_init(struct ufs_hba *hba) in cdns_ufs_init() argument
216 struct device *dev = hba->dev; in cdns_ufs_init()
222 ufshcd_set_variant(hba, host); in cdns_ufs_init()
224 if (hba->vops && hba->vops->phy_initialization) in cdns_ufs_init()
225 status = hba->vops->phy_initialization(hba); in cdns_ufs_init()
232 * @hba: host controller instance
236 static int cdns_ufs_m31_16nm_phy_initialization(struct ufs_hba *hba) in cdns_ufs_m31_16nm_phy_initialization() argument
241 data = ufshcd_readl(hba, CDNS_UFS_REG_PHY_XCFGD1); in cdns_ufs_m31_16nm_phy_initialization()
243 ufshcd_writel(hba, data, CDNS_UFS_REG_PHY_XCFGD1); in cdns_ufs_m31_16nm_phy_initialization()
311 struct ufs_hba *hba = platform_get_drvdata(pdev); in cdns_ufs_pltfrm_remove() local
313 ufshcd_remove(hba); in cdns_ufs_pltfrm_remove()