aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass2014-11-11 10:46:22 -0700
committerSimon Glass2014-11-22 10:16:47 +0100
commitff56bba2d6952176a826bddcd9baf84f61b419a3 (patch)
treeef05d1506ddb26b4d0f97d47525722fde585d30f
parente33dc221f45ca501319f5aebd1c88574238261be (diff)
dm: spi: Correct handling of SPI chip selects in sandbox
This code was not updated when the chip select handling was adjusted. Fix it to call the correct function. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jagannadha Sutradharudu Teki <jagannadh.teki@gmail.com> Acked-by: Heiko Schocher <hs@denx.de>
-rw-r--r--drivers/mtd/spi/sandbox.c2
-rw-r--r--drivers/spi/spi-uclass.c11
-rw-r--r--include/spi.h10
3 files changed, 12 insertions, 11 deletions
diff --git a/drivers/mtd/spi/sandbox.c b/drivers/mtd/spi/sandbox.c
index 1cf2f98310a..fecf6d4bc34 100644
--- a/drivers/mtd/spi/sandbox.c
+++ b/drivers/mtd/spi/sandbox.c
@@ -602,7 +602,7 @@ static int sandbox_sf_bind_bus_cs(struct sandbox_state *state, int busnum,
spec, ret);
return ret;
}
- ret = device_find_child_by_seq(bus, cs, true, &slave);
+ ret = spi_find_chip_select(bus, cs, &slave);
if (!ret) {
printf("Chip select %d already exists for spec '%s'\n", cs,
spec);
diff --git a/drivers/spi/spi-uclass.c b/drivers/spi/spi-uclass.c
index 13c6b77d73d..6bfc274956d 100644
--- a/drivers/spi/spi-uclass.c
+++ b/drivers/spi/spi-uclass.c
@@ -115,16 +115,7 @@ int spi_chip_select(struct udevice *dev)
return slave ? slave->cs : -ENOENT;
}
-/**
- * spi_find_chip_select() - Find the slave attached to chip select
- *
- * @bus: SPI bus to search
- * @cs: Chip select to look for
- * @devp: Returns the slave device if found
- * @return 0 if found, -ENODEV on error
- */
-static int spi_find_chip_select(struct udevice *bus, int cs,
- struct udevice **devp)
+int spi_find_chip_select(struct udevice *bus, int cs, struct udevice **devp)
{
struct udevice *dev;
diff --git a/include/spi.h b/include/spi.h
index aa0a48ea627..5975cda8653 100644
--- a/include/spi.h
+++ b/include/spi.h
@@ -534,6 +534,16 @@ int spi_get_bus_and_cs(int busnum, int cs, int speed, int mode,
int spi_chip_select(struct udevice *slave);
/**
+ * spi_find_chip_select() - Find the slave attached to chip select
+ *
+ * @bus: SPI bus to search
+ * @cs: Chip select to look for
+ * @devp: Returns the slave device if found
+ * @return 0 if found, -ENODEV on error
+ */
+int spi_find_chip_select(struct udevice *bus, int cs, struct udevice **devp);
+
+/**
* spi_bind_device() - bind a device to a bus's chip select
*
* This binds a new device to an given chip select (which must be unused).