struct dwmci_exynos_priv_data *priv = dev_get_priv(dev);
struct dwmci_host *host = &priv->host;
int err = 0;
- u32 timing[3];
+ u32 div, timing[2];
#ifdef CONFIG_CPU_V7A
const void *blob = gd->fdt_blob;
}
/* Extract the timing info from the node */
- err = dev_read_u32_array(dev, "samsung,timing", timing, 3);
+ div = dev_read_u32_default(dev, "samsung,dw-mshc-ciu-div", 0);
+ err = dev_read_u32_array(dev, "samsung,dw-mshc-sdr-timing", timing, 2);
if (err) {
- printf("DWMMC%d: Can't get sdr-timings for devider\n",
- host->dev_index);
+ printf("DWMMC%d: Can't get sdr-timings\n", host->dev_index);
return -EINVAL;
}
- priv->sdr_timing = (DWMCI_SET_SAMPLE_CLK(timing[0]) |
- DWMCI_SET_DRV_CLK(timing[1]) |
- DWMCI_SET_DIV_RATIO(timing[2]));
+ priv->sdr_timing = DWMCI_SET_SAMPLE_CLK(timing[0]) |
+ DWMCI_SET_DRV_CLK(timing[1]) |
+ DWMCI_SET_DIV_RATIO(div);
/* sdr_timing didn't assigned anything, use the default value */
if (!priv->sdr_timing) {