Lines Matching defs:host
9 #include <linux/mmc/host.h>
29 static void dw_mci_rk3288_set_ios(struct dw_mci *host, struct mmc_ios *ios)
31 struct dw_mci_rockchip_priv_data *priv = host->priv;
54 ret = clk_set_rate(host->ciu_clk, cclkin);
56 dev_warn(host->dev, "failed to set rate %uHz err: %d\n", cclkin, ret);
58 bus_hz = clk_get_rate(host->ciu_clk) / RK3288_CLKGEN_DIV;
59 if (bus_hz != host->bus_hz) {
60 host->bus_hz = bus_hz;
62 host->current_speed = 0;
139 struct dw_mci *host = slot->host;
140 struct dw_mci_rockchip_priv_data *priv = host->priv;
156 dev_err(host->dev, "Tuning clock (sample_clk) not defined.\n");
202 dev_warn(host->dev, "All phases bad!");
215 dev_info(host->dev, "All phases work, using default phase %d.",
232 dev_dbg(host->dev, "Good phase range %d-%d (%d len)\n",
241 dev_dbg(host->dev, "Best phase range %d-%d (%d len)\n",
251 dev_info(host->dev, "Successfully tuned phase to %d\n",
263 static int dw_mci_rk3288_parse_dt(struct dw_mci *host)
265 struct device_node *np = host->dev->of_node;
268 priv = devm_kzalloc(host->dev, sizeof(*priv), GFP_KERNEL);
280 priv->drv_clk = devm_clk_get(host->dev, "ciu-drive");
282 dev_dbg(host->dev, "ciu-drive not available\n");
284 priv->sample_clk = devm_clk_get(host->dev, "ciu-sample");
286 dev_dbg(host->dev, "ciu-sample not available\n");
288 host->priv = priv;
293 static int dw_mci_rockchip_init(struct dw_mci *host)
298 host->sdio_id0 = 8;
300 if (of_device_is_compatible(host->dev->of_node, "rockchip,rk3288-dw-mshc")) {
301 host->bus_hz /= RK3288_CLKGEN_DIV;
309 ret = clk_round_rate(host->ciu_clk, freqs[i] * RK3288_CLKGEN_DIV);
311 host->minimum_speed = ret / RK3288_CLKGEN_DIV;
316 dev_warn(host->dev, "no valid minimum freq: %d\n", ret);