• Home
  • Raw
  • Download

Lines Matching +full:dll +full:- +full:config

1 // SPDX-License-Identifier: GPL-2.0-or-later
21 #include "dw_mmc-pltfm.h"
22 #include "dw_mmc-zx.h"
36 struct dw_mci_zx_priv_data *priv = host->priv; in dw_mci_zx_emmc_set_delay()
37 struct regmap *sysc_base = priv->sysc_base; in dw_mci_zx_emmc_set_delay()
43 return -EINVAL; in dw_mci_zx_emmc_set_delay()
78 } while (--loop && !(clksel & ZX_DLL_LOCKED)); in dw_mci_zx_emmc_set_delay()
81 dev_err(host->dev, "Error: %s dll lock fail\n", __func__); in dw_mci_zx_emmc_set_delay()
82 return -EIO; in dw_mci_zx_emmc_set_delay()
90 struct dw_mci *host = slot->host; in dw_mci_zx_emmc_execute_tuning()
91 struct mmc_host *mmc = slot->mmc; in dw_mci_zx_emmc_execute_tuning()
98 end = delay - 1; in dw_mci_zx_emmc_execute_tuning()
100 if ((end - start) > len) { in dw_mci_zx_emmc_execute_tuning()
102 len = end - start; in dw_mci_zx_emmc_execute_tuning()
105 start = -1; in dw_mci_zx_emmc_execute_tuning()
114 end = delay - 1; in dw_mci_zx_emmc_execute_tuning()
115 if ((end - start) > len) { in dw_mci_zx_emmc_execute_tuning()
117 len = end - start; in dw_mci_zx_emmc_execute_tuning()
121 return -EIO; in dw_mci_zx_emmc_execute_tuning()
123 dev_info(host->dev, "%s best range: start %d end %d\n", __func__, in dw_mci_zx_emmc_execute_tuning()
133 /* config phase shift as 90 degree */ in dw_mci_zx_prepare_hs400_tuning()
136 return -EIO; in dw_mci_zx_prepare_hs400_tuning()
143 struct dw_mci *host = slot->host; in dw_mci_zx_execute_tuning()
145 if (host->verid == 0x290a) /* only for emmc */ in dw_mci_zx_execute_tuning()
154 struct device_node *np = host->dev->of_node; in dw_mci_zx_parse_dt()
160 node = of_parse_phandle(np, "zte,aon-syscon", 0); in dw_mci_zx_parse_dt()
166 return dev_err_probe(host->dev, PTR_ERR(sysc_base), in dw_mci_zx_parse_dt()
172 priv = devm_kzalloc(host->dev, sizeof(*priv), GFP_KERNEL); in dw_mci_zx_parse_dt()
174 return -ENOMEM; in dw_mci_zx_parse_dt()
175 priv->sysc_base = sysc_base; in dw_mci_zx_parse_dt()
176 host->priv = priv; in dw_mci_zx_parse_dt()
196 { .compatible = "zte,zx296718-dw-mshc", .data = &zx_drv_data},
206 match = of_match_node(dw_mci_zx_match, pdev->dev.of_node); in dw_mci_zx_probe()
207 drv_data = match->data; in dw_mci_zx_probe()