On Wed, Jun 6, 2018 at 9:00 PM, Miquel Raynal <miquel.ray...@bootlin.com> wrote: > From: Boris Brezillon <boris.brezil...@bootlin.com> > > Some controllers are exposing high-level interfaces to access various > kind of SPI memories. Unfortunately they do not fit in the current > spi_controller model and usually have drivers placed in > drivers/mtd/spi-nor which are only supporting SPI NORs and not SPI > memories in general. > > This is an attempt at defining a SPI memory interface which works for > all kinds of SPI memories (NORs, NANDs, SRAMs). > > Signed-off-by: Boris Brezillon <boris.brezil...@bootlin.com> > Signed-off-by: Miquel Raynal <miquel.ray...@bootlin.com> > --- > drivers/spi/Kconfig | 7 + > drivers/spi/Makefile | 1 + > drivers/spi/spi-mem.c | 500 > ++++++++++++++++++++++++++++++++++++++++++++++++++ > include/spi-mem.h | 258 ++++++++++++++++++++++++++ > include/spi.h | 11 ++ > 5 files changed, 777 insertions(+) > create mode 100644 drivers/spi/spi-mem.c > create mode 100644 include/spi-mem.h > > diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig > index 235a8c7d73..0ee371b2d9 100644 > --- a/drivers/spi/Kconfig > +++ b/drivers/spi/Kconfig > @@ -15,6 +15,13 @@ config DM_SPI > > if DM_SPI > > +config SPI_MEM > + bool "SPI memory extension" > + help > + Enable this option if you want to enable the SPI memory extension. > + This extension is meant to simplify interaction with SPI memories > + by providing an high-level interface to send memory-like commands. > + > config ALTERA_SPI > bool "Altera SPI driver" > help > diff --git a/drivers/spi/Makefile b/drivers/spi/Makefile > index 4b6000fd9a..982529a0e6 100644 > --- a/drivers/spi/Makefile > +++ b/drivers/spi/Makefile > @@ -10,6 +10,7 @@ ifdef CONFIG_DM_SPI > obj-y += spi-uclass.o > obj-$(CONFIG_SANDBOX) += spi-emul-uclass.o > obj-$(CONFIG_SOFT_SPI) += soft_spi.o > +obj-$(CONFIG_SPI_MEM) += spi-mem.o > else > obj-y += spi.o > obj-$(CONFIG_SOFT_SPI) += soft_spi_legacy.o > diff --git a/drivers/spi/spi-mem.c b/drivers/spi/spi-mem.c > new file mode 100644 > index 0000000000..1aabe56819 > --- /dev/null > +++ b/drivers/spi/spi-mem.c > @@ -0,0 +1,500 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +/* > + * Copyright (C) 2018 Exceet Electronics GmbH > + * Copyright (C) 2018 Bootlin > + * > + * Author: Boris Brezillon <boris.brezil...@bootlin.com> > + */ > + > +#ifndef __UBOOT__ > +#include <linux/dmaengine.h> > +#include <linux/pm_runtime.h> > +#include "internals.h" > +#else > +#include <spi.h> > +#include <spi-mem.h> > +#endif > + > +#ifndef __UBOOT__
I would like remove Linux stuff atleast on this file becuase it's difficult for me to read or review the code and also driver/spi have fully u-boot dm stuff. I know it's easy for Linux sync but for this we can do manual sync what ever need. I'm on something what from Linux. _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot