summaryrefslogtreecommitdiff
path: root/include/spi_flash.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2013-12-03 16:43:24 -0700
committerSimon Glass <sjg@chromium.org>2013-12-09 12:22:12 -0700
commit0efc02499f9131bd7e1689ebb8d626ef12387de4 (patch)
treed6b4296f983ebe381432d7db3b12e4368ec0efe9 /include/spi_flash.h
parent7b3efc66996b6686ad393b706c323990afa31930 (diff)
downloadu-boot-imx-0efc02499f9131bd7e1689ebb8d626ef12387de4.zip
u-boot-imx-0efc02499f9131bd7e1689ebb8d626ef12387de4.tar.gz
u-boot-imx-0efc02499f9131bd7e1689ebb8d626ef12387de4.tar.bz2
spi_flash: Add spi_flash_probe_fdt() to locate SPI by FDT node
This allows us to put the SPI flash chip inside the SPI interface node, with U-Boot finding the correct bus and chip select automatically. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/spi_flash.h')
-rw-r--r--include/spi_flash.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/spi_flash.h b/include/spi_flash.h
index 25ca8f1..afc3a58 100644
--- a/include/spi_flash.h
+++ b/include/spi_flash.h
@@ -67,6 +67,19 @@ struct spi_flash {
struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs,
unsigned int max_hz, unsigned int spi_mode);
+
+/**
+ * Set up a new SPI flash from an fdt node
+ *
+ * @param blob Device tree blob
+ * @param slave_node Pointer to this SPI slave node in the device tree
+ * @param spi_node Cached pointer to the SPI interface this node belongs
+ * to
+ * @return 0 if ok, -1 on error
+ */
+struct spi_flash *spi_flash_probe_fdt(const void *blob, int slave_node,
+ int spi_node);
+
void spi_flash_free(struct spi_flash *flash);
static inline int spi_flash_read(struct spi_flash *flash, u32 offset,