diff options
author | Simon Glass <sjg@chromium.org> | 2017-07-25 08:30:00 -0600 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2017-07-28 12:02:47 -0600 |
commit | 000f15fa15c57d2d2f5a1a1d2ea233edbff6461e (patch) | |
tree | 513ea1a9c8f4a49b24ae90e7f1b3add7140d1a49 | |
parent | be7890927a0f9fd40e697ed857cba8c2de1d178e (diff) | |
download | u-boot-000f15fa15c57d2d2f5a1a1d2ea233edbff6461e.tar.gz u-boot-000f15fa15c57d2d2f5a1a1d2ea233edbff6461e.tar.xz u-boot-000f15fa15c57d2d2f5a1a1d2ea233edbff6461e.zip |
dm: tegra: Convert clock_decode_periph_id() to support livetree
Adjust this to take a device as a parameter instead of a node.
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Tested-on: Beaver, Jetson-TK1
Tested-by: Stephen Warren <swarren@nvidia.com>
-rw-r--r-- | arch/arm/include/asm/arch-tegra/clock.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-tegra/clock.c | 5 | ||||
-rw-r--r-- | drivers/spi/tegra114_spi.c | 2 | ||||
-rw-r--r-- | drivers/spi/tegra20_sflash.c | 2 | ||||
-rw-r--r-- | drivers/spi/tegra20_slink.c | 2 | ||||
-rw-r--r-- | drivers/spi/tegra210_qspi.c | 2 | ||||
-rw-r--r-- | drivers/usb/host/ehci-tegra.c | 2 |
7 files changed, 8 insertions, 9 deletions
diff --git a/arch/arm/include/asm/arch-tegra/clock.h b/arch/arm/include/asm/arch-tegra/clock.h index f62b2a4378..92180db321 100644 --- a/arch/arm/include/asm/arch-tegra/clock.h +++ b/arch/arm/include/asm/arch-tegra/clock.h @@ -266,7 +266,7 @@ void clock_ll_start_uart(enum periph_id periph_id); * @param node Node to look at * @return peripheral ID, or PERIPH_ID_NONE if none */ -enum periph_id clock_decode_periph_id(const void *blob, int node); +int clock_decode_periph_id(struct udevice *dev); /** * Checks if the oscillator bypass is enabled (XOBP bit) diff --git a/arch/arm/mach-tegra/clock.c b/arch/arm/mach-tegra/clock.c index 668bbd20c1..dc58b3027d 100644 --- a/arch/arm/mach-tegra/clock.c +++ b/arch/arm/mach-tegra/clock.c @@ -655,14 +655,13 @@ void clock_ll_start_uart(enum periph_id periph_id) } #if CONFIG_IS_ENABLED(OF_CONTROL) -int clock_decode_periph_id(const void *blob, int node) +int clock_decode_periph_id(struct udevice *dev) { enum periph_id id; u32 cell[2]; int err; - err = fdtdec_get_int_array(blob, node, "clocks", cell, - ARRAY_SIZE(cell)); + err = dev_read_u32_array(dev, "clocks", cell, ARRAY_SIZE(cell)); if (err) return -1; id = clk_id_to_periph_id(cell[1]); diff --git a/drivers/spi/tegra114_spi.c b/drivers/spi/tegra114_spi.c index 91659349a3..6478352c31 100644 --- a/drivers/spi/tegra114_spi.c +++ b/drivers/spi/tegra114_spi.c @@ -104,7 +104,7 @@ static int tegra114_spi_ofdata_to_platdata(struct udevice *bus) int node = dev_of_offset(bus); plat->base = devfdt_get_addr(bus); - plat->periph_id = clock_decode_periph_id(blob, node); + 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__, diff --git a/drivers/spi/tegra20_sflash.c b/drivers/spi/tegra20_sflash.c index 299e1b44fa..e70210d7ab 100644 --- a/drivers/spi/tegra20_sflash.c +++ b/drivers/spi/tegra20_sflash.c @@ -91,7 +91,7 @@ static int tegra20_sflash_ofdata_to_platdata(struct udevice *bus) int node = dev_of_offset(bus); plat->base = devfdt_get_addr(bus); - plat->periph_id = clock_decode_periph_id(blob, node); + 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__, diff --git a/drivers/spi/tegra20_slink.c b/drivers/spi/tegra20_slink.c index 4cbde7b22f..f242574760 100644 --- a/drivers/spi/tegra20_slink.c +++ b/drivers/spi/tegra20_slink.c @@ -97,7 +97,7 @@ static int tegra30_spi_ofdata_to_platdata(struct udevice *bus) int node = dev_of_offset(bus); plat->base = devfdt_get_addr(bus); - plat->periph_id = clock_decode_periph_id(blob, node); + 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__, diff --git a/drivers/spi/tegra210_qspi.c b/drivers/spi/tegra210_qspi.c index 6d0b5da261..2a35a583f5 100644 --- a/drivers/spi/tegra210_qspi.c +++ b/drivers/spi/tegra210_qspi.c @@ -100,7 +100,7 @@ static int tegra210_qspi_ofdata_to_platdata(struct udevice *bus) int node = dev_of_offset(bus); plat->base = devfdt_get_addr(bus); - plat->periph_id = clock_decode_periph_id(blob, node); + 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__, diff --git a/drivers/usb/host/ehci-tegra.c b/drivers/usb/host/ehci-tegra.c index 7dc37f045d..873bf8ecfd 100644 --- a/drivers/usb/host/ehci-tegra.c +++ b/drivers/usb/host/ehci-tegra.c @@ -723,7 +723,7 @@ static int fdt_decode_usb(struct udevice *dev, struct fdt_usb *config) config->enabled = fdtdec_get_is_enabled(blob, node); config->has_legacy_mode = fdtdec_get_bool(blob, node, "nvidia,has-legacy-mode"); - config->periph_id = clock_decode_periph_id(blob, node); + config->periph_id = clock_decode_periph_id(dev); if (config->periph_id == PERIPH_ID_NONE) { debug("%s: Missing/invalid peripheral ID\n", __func__); return -EINVAL; |