]> git.sur5r.net Git - u-boot/blobdiff - drivers/spi/exynos_spi.c
cros: exynos: add SPI support for cros_ec
[u-boot] / drivers / spi / exynos_spi.c
index 01378d098e53cf7065425bd4d83a5a38415ba4d5..7a25a35aa0f22fc3776e5919b916c3f01ad41a1f 100644 (file)
@@ -465,6 +465,28 @@ static int process_nodes(const void *blob, int node_list[], int count)
 }
 #endif
 
+/**
+ * Set up a new SPI slave for an fdt node
+ *
+ * @param blob         Device tree blob
+ * @param node         SPI peripheral node to use
+ * @return 0 if ok, -1 on error
+ */
+struct spi_slave *spi_setup_slave_fdt(const void *blob, int node,
+               unsigned int cs, unsigned int max_hz, unsigned int mode)
+{
+       struct spi_bus *bus;
+       unsigned int i;
+
+       for (i = 0, bus = spi_bus; i < bus_count; i++, bus++) {
+               if (bus->node == node)
+                       return spi_setup_slave(i, cs, max_hz, mode);
+       }
+
+       debug("%s: Failed to find bus node %d\n", __func__, node);
+       return NULL;
+}
+
 /* Sadly there is no error return from this function */
 void spi_init(void)
 {