Lines Matching defs:host

71 	struct ufs_hisi_host *host = ufshcd_get_variant(hba);
73 ufs_sys_ctrl_clr_bits(host, BIT_SYSCTRL_REF_CLOCK_EN, PHY_CLK_CTRL);
74 if (ufs_sys_ctrl_readl(host, PHY_CLK_CTRL) & BIT_SYSCTRL_REF_CLOCK_EN)
77 ufs_sys_ctrl_clr_bits(host, BIT_UFS_REFCLK_SRC_SEl, UFS_SYSCTRL);
78 ufs_sys_ctrl_clr_bits(host, BIT_UFS_REFCLK_ISO_EN, PHY_ISO_EN);
80 ufs_sys_ctrl_set_bits(host, BIT_SYSCTRL_REF_CLOCK_EN, PHY_CLK_CTRL);
85 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
88 if (!IS_ERR(host->rst))
89 reset_control_assert(host->rst);
92 ufs_sys_ctrl_set_bits(host, BIT_UFS_PSW_MTCMOS_EN, PSW_POWER_CTRL);
95 ufs_sys_ctrl_set_bits(host, BIT_SYSCTRL_PWR_READY, HC_LP_CTRL);
96 ufs_sys_ctrl_writel(host, MASK_UFS_DEVICE_RESET | 0,
99 reg = ufs_sys_ctrl_readl(host, PHY_CLK_CTRL);
102 ufs_sys_ctrl_writel(host, reg, PHY_CLK_CTRL);
104 ufs_sys_ctrl_clr_bits(host, MASK_SYSCTRL_REF_CLOCK_SEL, PHY_CLK_CTRL);
106 ufs_sys_ctrl_set_bits(host, MASK_UFS_CLK_GATE_BYPASS,
108 ufs_sys_ctrl_set_bits(host, MASK_UFS_SYSCRTL_BYPASS, UFS_SYSCTRL);
111 ufs_sys_ctrl_set_bits(host, BIT_SYSCTRL_PSW_CLK_EN, PSW_CLK_CTRL);
113 ufs_sys_ctrl_clr_bits(host, BIT_UFS_PSW_ISO_CTRL, PSW_POWER_CTRL);
115 ufs_sys_ctrl_clr_bits(host, BIT_UFS_PHY_ISO_CTRL, PHY_ISO_EN);
117 ufs_sys_ctrl_clr_bits(host, BIT_SYSCTRL_LP_ISOL_EN, HC_LP_CTRL);
120 ufs_sys_ctrl_set_bits(host, BIT_SYSCTRL_LP_RESET_N, RESET_CTRL_EN);
123 ufs_sys_ctrl_writel(host, MASK_UFS_DEVICE_RESET | BIT_UFS_DEVICE_RESET,
134 ufs_sys_ctrl_writel(host, 0x03300330, UFS_DEVICE_RESET_CTRL);
136 if (!IS_ERR(host->rst))
137 reset_control_deassert(host->rst);
142 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
158 if (host->caps & UFS_HISI_CAP_PHY10nm) {
185 if (host->caps & UFS_HISI_CAP_PHY10nm) {
231 if (!(host->caps & UFS_HISI_CAP_PHY10nm))
254 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
264 ufs_sys_ctrl_clr_bits(host, MASK_UFS_CLK_GATE_BYPASS,
266 ufs_sys_ctrl_clr_bits(host, MASK_UFS_SYSCRTL_BYPASS,
303 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
305 if (host->caps & UFS_HISI_CAP_PHY10nm) {
410 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
418 if (host->in_suspend) {
423 ufs_sys_ctrl_clr_bits(host, BIT_SYSCTRL_REF_CLOCK_EN, PHY_CLK_CTRL);
426 ufs_sys_ctrl_writel(host, 0x00100000, UFS_DEVICE_RESET_CTRL);
428 host->in_suspend = true;
435 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
437 if (!host->in_suspend)
441 ufs_sys_ctrl_writel(host, 0x00100010, UFS_DEVICE_RESET_CTRL);
443 ufs_sys_ctrl_set_bits(host, BIT_SYSCTRL_REF_CLOCK_EN, PHY_CLK_CTRL);
445 host->in_suspend = false;
449 static int ufs_hisi_get_resource(struct ufs_hisi_host *host)
451 struct device *dev = host->hba->dev;
455 host->ufs_sys_ctrl = devm_platform_ioremap_resource(pdev, 1);
456 return PTR_ERR_OR_ZERO(host->ufs_sys_ctrl);
467 * @hba: host controller instance
473 struct ufs_hisi_host *host;
475 host = devm_kzalloc(dev, sizeof(*host), GFP_KERNEL);
476 if (!host)
479 host->hba = hba;
480 ufshcd_set_variant(hba, host);
482 host->rst = devm_reset_control_get(dev, "rst");
483 if (IS_ERR(host->rst)) {
485 err = PTR_ERR(host->rst);
491 err = ufs_hisi_get_resource(host);
524 struct ufs_hisi_host *host;
537 host = ufshcd_get_variant(hba);
538 host->caps |= UFS_HISI_CAP_PHY10nm;