]> git.sur5r.net Git - u-boot/blobdiff - drivers/spi/tegra210_qspi.c
Merge branch 'master' of git://git.denx.de/u-boot-sunxi
[u-boot] / drivers / spi / tegra210_qspi.c
index 6bbbe93839544114958b534353bf827b59685d77..e4b82767f82edadaa0f1a7f295e9daefa23015d1 100644 (file)
@@ -1,9 +1,8 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * NVIDIA Tegra210 QSPI controller driver
  *
  * (C) Copyright 2015 NVIDIA Corporation <www.nvidia.com>
- *
- * SPDX-License-Identifier:     GPL-2.0+
  */
 
 #include <common.h>
@@ -97,10 +96,10 @@ static int tegra210_qspi_ofdata_to_platdata(struct udevice *bus)
 {
        struct tegra_spi_platdata *plat = bus->platdata;
        const void *blob = gd->fdt_blob;
-       int node = bus->of_offset;
+       int node = dev_of_offset(bus);
 
-       plat->base = dev_get_addr(bus);
-       plat->periph_id = clock_decode_periph_id(blob, node);
+       plat->base = devfdt_get_addr(bus);
+       plat->periph_id = clock_decode_periph_id(bus);
 
        if (plat->periph_id == PERIPH_ID_NONE) {
                debug("%s: could not decode periph id %d\n", __func__,
@@ -131,6 +130,9 @@ static int tegra210_qspi_probe(struct udevice *bus)
        priv->freq = plat->frequency;
        priv->periph_id = plat->periph_id;
 
+       /* Change SPI clock to correct frequency, PLLP_OUT0 source */
+       clock_start_periph_pll(priv->periph_id, CLOCK_ID_PERIPH, priv->freq);
+
        return 0;
 }