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) {
409 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
417 if (host->in_suspend) {
422 ufs_sys_ctrl_clr_bits(host, BIT_SYSCTRL_REF_CLOCK_EN, PHY_CLK_CTRL);
425 ufs_sys_ctrl_writel(host, 0x00100000, UFS_DEVICE_RESET_CTRL);
427 host->in_suspend = true;
434 struct ufs_hisi_host *host = ufshcd_get_variant(hba);
436 if (!host->in_suspend)
440 ufs_sys_ctrl_writel(host, 0x00100010, UFS_DEVICE_RESET_CTRL);
442 ufs_sys_ctrl_set_bits(host, BIT_SYSCTRL_REF_CLOCK_EN, PHY_CLK_CTRL);
444 host->in_suspend = false;
448 static int ufs_hisi_get_resource(struct ufs_hisi_host *host)
450 struct device *dev = host->hba->dev;
454 host->ufs_sys_ctrl = devm_platform_ioremap_resource(pdev, 1);
455 return PTR_ERR_OR_ZERO(host->ufs_sys_ctrl);
466 * @hba: host controller instance
472 struct ufs_hisi_host *host;
474 host = devm_kzalloc(dev, sizeof(*host), GFP_KERNEL);
475 if (!host)
478 host->hba = hba;
479 ufshcd_set_variant(hba, host);
481 host->rst = devm_reset_control_get(dev, "rst");
482 if (IS_ERR(host->rst)) {
484 err = PTR_ERR(host->rst);
490 err = ufs_hisi_get_resource(host);
523 struct ufs_hisi_host *host;
536 host = ufshcd_get_variant(hba);
537 host->caps |= UFS_HISI_CAP_PHY10nm;