Messages in this thread | | | From | Mike Frysinger <> | Date | Tue, 22 Sep 2009 10:15:37 -0400 | Subject | Re: [PATCH 1/2] spi: new SPI bus lock/unlock functions |
| |
On Thu, Sep 17, 2009 at 18:03, Mike Frysinger wrote: > --- a/drivers/spi/spi.c > +++ b/drivers/spi/spi.c > @@ -653,6 +653,54 @@ static void spi_complete(void *arg) > +int spi_lock_bus(struct spi_device *spi) > +{ > + if (spi->master->lock_bus) > + return spi->master->lock_bus(spi); > + else > + return 0; > +} > +EXPORT_SYMBOL_GPL(spi_lock_bus); > + > +int spi_unlock_bus(struct spi_device *spi) > +{ > + if (spi->master->unlock_bus) > + return spi->master->unlock_bus(spi); > + else > + return 0; > +} > +EXPORT_SYMBOL_GPL(spi_unlock_bus);
there's nothing Blackfin-specific in the implementation of these functions. i think the way we should be handling these is by doing: - remove {lock,unlock}_bus functions from spi_master - move the {lock,unlock}_bus code from spi_bfin5xx.c to spi.c - drop the SPI_BFIN_LOCK Kconfig - add a new spi_master flag to spi.h like SPI_MASTER_HALF_DUPLEX -- SPI_MASTER_LOCK_BUS - have spi_bfin5xx.c/bfin_sport_spi.c add that flag to its master setup - have the common spi code key off of that flag to return ENOSYS - have the mmc_spi code check that bit in the master before falling back to its hack -mike -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |