diff options
author | Simon Glass <sjg@chromium.org> | 2015-01-25 18:27:12 +0300 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2015-01-30 03:09:56 +0300 |
commit | d0cff03e187cc1de3d6b477b92c376aae27c95e8 (patch) | |
tree | 28fe778799e181dac5adcf4d7ae847d28d6fef0d /drivers/spi/soft_spi.c | |
parent | 440714eeb8938e9710d1b2bba17c6c0af7c2cf69 (diff) | |
download | u-boot-d0cff03e187cc1de3d6b477b92c376aae27c95e8.tar.xz |
dm: spi: Move slave details to child platdata
At present we go through various contortions to store the SPI slave's chip
select in its private data. This only exists when the slave is active so
must be set up when it is probed. Until the device is probed we don't
actually know what chip select it will appear on.
However, now that we can support per-child platform data, we can use that
instead. This allows us to set up the chip select when the child is bound,
and avoid the messy contortions.
Unfortunately this is a fairly large change and it seems to be difficult to
break it down further.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/spi/soft_spi.c')
-rw-r--r-- | drivers/spi/soft_spi.c | 9 |
1 files changed, 0 insertions, 9 deletions
diff --git a/drivers/spi/soft_spi.c b/drivers/spi/soft_spi.c index 9f7d80ee4d..6ae45f5377 100644 --- a/drivers/spi/soft_spi.c +++ b/drivers/spi/soft_spi.c @@ -179,14 +179,6 @@ static int soft_spi_set_mode(struct udevice *dev, unsigned int mode) return 0; } -static int soft_spi_child_pre_probe(struct udevice *dev) -{ - struct spi_slave *slave = dev_get_parentdata(dev); - - slave->dev = dev; - return spi_ofdata_to_platdata(gd->fdt_blob, dev->of_offset, slave); -} - static const struct dm_spi_ops soft_spi_ops = { .claim_bus = soft_spi_claim_bus, .release_bus = soft_spi_release_bus, @@ -241,5 +233,4 @@ U_BOOT_DRIVER(soft_spi) = { .platdata_auto_alloc_size = sizeof(struct soft_spi_platdata), .priv_auto_alloc_size = sizeof(struct soft_spi_priv), .probe = soft_spi_probe, - .child_pre_probe = soft_spi_child_pre_probe, }; |