From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jagan Teki Date: Tue, 22 Mar 2016 13:17:00 +0530 Subject: [U-Boot] [PATCH v7 00/87] mtd: Add SPI-NOR core support In-Reply-To: <1458632239-22468-1-git-send-email-jteki@openedev.com> References: <1458632239-22468-1-git-send-email-jteki@openedev.com> Message-ID: <56F0F874.3030604@openedev.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Tuesday 22 March 2016 01:07 PM, Jagan Teki wrote: > Some of the SPI device drivers at drivers/spi not a real > spi controllers, Unlike normal/generic SPI controllers they > operates only with SPI-NOR flash devices. these were technically > termed as SPI-NOR controllers, Ex: drivers/spi/fsl_qspi.c > > The problem with these were resides at drivers/spi is entire > SPI layer becomes SPI-NOR flash oriented which is absolutely > a wrong indication where SPI layer getting effected more with > flash operations - So this SPI-NOR core will resolve this issue > by separating all SPI-NOR flash operations from spi layer and > creats a generic layer called SPI-NOR core which can be used to > interact SPI-NOR to SPI driver interface layer and the SPI-NOR > controller driver. The idea is taken from Linux spi-nor framework. > > Before SPI-NOR: > > ----------------------- > cmd/sf.c > ----------------------- > spi_flash.c > ----------------------- > sf_probe.c > ----------------------- > spi-uclass > ----------------------- > spi drivers > ----------------------- > SPI NOR chip > ----------------------- > > After SPI-NOR: > > ------------------------------ > cmd/sf.c > ------------------------------ > spi-nor.c > ------------------------------- > m25p80.c spi nor drivers > ------------------------------- > spi-uclass SPI NOR chip > ------------------------------- > spi drivers > ------------------------------- > SPI NOR chip > ------------------------------- > > SPI-NOR with MTD: > > ------------------------------ > cmd/sf.c > ------------------------------ > MTD core > ------------------------------ > spi-nor.c > ------------------------------- > m25p80.c spi nor drivers > ------------------------------- > spi-uclass SPI NOR chip > ------------------------------- > spi drivers > ------------------------------- > SPI NOR chip > ------------------------------- > > drivers/mtd/spi-nor/spi-nor.c: spi-nor core > drivers/mtd/spi-nor/m25p80.c: mtd uclass driver > which is an interface layer b/w spi-nor core drivers/spi > drivers/mtd/spi-nor/fsl_qspi.c: spi-nor controller driver(mtd uclass) > > Changes for v7: > - Rebase to latest > - Fixed git bisectable issues, with buildman. > - Fixed spi-nor compilation issues > - newly designed changes. > > Changes for v6: > - Fixed git bisectable issues, with buildman. > - Fixed spi-nor compilation issues > - newly designed changes. > > Changes for v5: > - newly designed changes > > Testing: > $ git clone git://git.denx.de/u-boot-spi.git > $ cd u-boot-spi > $ git checkout -b spi-nor-test origin/spi-nor-test > > Alison Wang (1): > defconfig: ls1021atwr_sdcard_qspi: Enable CONFIG_MTD Tested in hardware and sandbox [1] Tested-by: Jagan Teki [1] http://paste.ubuntu.com/15470696/