Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi Bin, On Wed, Aug 30, 2017 at 1:17 PM, Bin Mengwrote: > Hi Jagan, > > On Wed, Aug 30, 2017 at 2:30 PM, Jagan Teki wrote: >> Hi Bin, >> >> On Wed, Aug 30, 2017 at 11:11 AM, Bin Meng wrote: >>> On Wed, Aug 30, 2017 at 1:27 PM, Yang, Wenyou >>> wrote: On 2017/8/30 11:43, Bin Meng wrote: > > On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyou > wrote: >> >> >> On 2017/8/26 14:34, Jagan Teki wrote: >>> >>> Hi, >>> >>> Thanks for the changes. >>> >>> On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang >>> >>> wrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller >>> >>> Comments: >>> How about writing struct spi_flash_command in spi_flash area >>> (include/spi_flash.h)? and then write atmel_qspi with >>> UCLASS_SPI_FLASH? >>> >>> Testing: >>> Basic testing works fine. >>> >>> Issues: >>> - Build issue: with zynq_microzed_defconfig >>> drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: >>> drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set >>> but not used [-Wunused-but-set-variable] >>> bool above_16MB; >>> ^~ >>> CC spl/lib/membuff.o >>> >>> - issue with spi_flash_cmd_read_ops 4BAIS >>> Need to calculate bank length only if BAR is in use. Otherwise, >>> consider the given len as read_len. >>> >>> Will send separate patch for this. >> >> Will You send a separate patch? or I include it in this patch set? > > This should not be a separate patch. Since every patch needs to pass > buildman testing. But it is not introduced by this patch set. So should be a separate patch to fix. >>> >>> Do you mean the build warnings exist in current u-boot/master? >>> >>> If so, Jagan can you please explain why you mention this? This is >>> nothing related to this patch review. >> >> Please read my previous comments, I was clearly explain the issue and >> diff. Issue came up this series with 4BAIS on spi_flash_cmd_read_ops >> > > So your words and Wenyou are contradictory. Wenyou claimed the > warnings do not come from his patchset while you said yes. Anyway will > leave you guys to resolve. No, I didn't say that I wrote "Will send separate patch for this." for 4BIAS fix not for the
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi Jagan, On Wed, Aug 30, 2017 at 2:30 PM, Jagan Tekiwrote: > Hi Bin, > > On Wed, Aug 30, 2017 at 11:11 AM, Bin Meng wrote: >> On Wed, Aug 30, 2017 at 1:27 PM, Yang, Wenyou >> wrote: >>> >>> >>> On 2017/8/30 11:43, Bin Meng wrote: On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyou wrote: > > > On 2017/8/26 14:34, Jagan Teki wrote: >> >> Hi, >> >> Thanks for the changes. >> >> On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang >> >> wrote: >>> >>> This series of patches are based and have been tested on the 'master' >>> branch of the u-boot.git tree. >>> >>> Tests were passed with a sama5d2 xplained board which embeds both SPI >>> and >>> QSPI controllers. >>> >>> The following tests have been passed: >>> >>> - QSPI0 + Macronix MX25L25673G: >>> + probe: OK >>> + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >>> + Page Program 1-1-4 at offset 0x1: OK >>> The Macronix datasheet tells that only Page Program 1-4-4 is >>> supported, not Page Program 1-1-4, however it worked, I don't >>> know >>> why... >>> >>> - QSPI0 + Microchip SST26 >>> + probe: OK >>> + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >>> + Page Program 1-1-1 at offset 0x1: OK >>> SST26 memories support Page Program 1-4-4 but with the op code of >>> Page Program 1-1-4, which is not standard so I don't use it. >>> >>> - QSPI0 + Adesto AT25DF321A >>> + probe: OK >>> + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK >>> + Page Program 1-1-1 at offset 0x1: OK >>> >>> - SPI0 + Adesto AT25DF321A >>> + probe: OK >>> + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK >>> + Page Program 1-1-1 at offest 0x6000: OK >>> >>> - SPI1 + Atmel AT45 >>> + probe: OK >>> + Read at offset 0 and other than 0: OK >>> + Write at offset 0 and other than 0: OK >>> >>> During my tests, I used: >>> - setenv/saveenv, reboot, printenv >>> or >>> - sf probe, sf read, sf write, sf erase and sf update. >>> >>> Changes in v3: >>>- Add the include to fix build error for corvus_defconfig. >>> >>> Changes in v2: >>>- Rebase on the latest u-boot/master(2710d54f5). >>> >>> Cyrille Pitchen (8): >>> spi: add support of SPI flash commands >>> sf: describe all SPI flash commands with 'struct spi_flash_command' >>> sf: select the relevant SPI flash protocol for read and write >>> commands >>> sf: differentiate Page Program 1-1-4 and 1-4-4 >>> sf: add 'addr_len' member to 'struct spi_flash' >>> sf: add new option to support SPI flash above 16MiB >>> sf: add support to Microchip SST26 QSPI memories >>> sf: add driver for Atmel QSPI controller >> >> Comments: >> How about writing struct spi_flash_command in spi_flash area >> (include/spi_flash.h)? and then write atmel_qspi with >> UCLASS_SPI_FLASH? >> >> Testing: >> Basic testing works fine. >> >> Issues: >> - Build issue: with zynq_microzed_defconfig >> drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: >> drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set >> but not used [-Wunused-but-set-variable] >> bool above_16MB; >> ^~ >> CC spl/lib/membuff.o >> >> - issue with spi_flash_cmd_read_ops 4BAIS >> Need to calculate bank length only if BAR is in use. Otherwise, >> consider the given len as read_len. >> >> Will send separate patch for this. > > Will You send a separate patch? or I include it in this patch set? This should not be a separate patch. Since every patch needs to pass buildman testing. >>> >>> But it is not introduced by this patch set. So should be a separate patch to >>> fix. >> >> Do you mean the build warnings exist in current u-boot/master? >> >> If so, Jagan can you please explain why you mention this? This is >> nothing related to this patch review. > > Please read my previous comments, I was clearly explain the issue and > diff. Issue came up this series with 4BAIS on spi_flash_cmd_read_ops > So your words and Wenyou are contradictory. Wenyou claimed the warnings do not come from his patchset while you said yes. Anyway will leave you guys to resolve. My point is: if the warnings exist in current mainline, this should be fixed as a unrelated patch. If the warnings come from this series, this should be fixed in the particular patch that introduces the warnings! Regards, Bin ___ U-Boot mailing list U-Boot@lists.denx.de
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi Wenyou Yang, On Wed, Aug 30, 2017 at 7:28 AM, Yang, Wenyouwrote: > Hi Jagan, > > > On 2017/8/26 14:34, Jagan Teki wrote: >> >> Hi, >> >> Thanks for the changes. >> >> On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang >> wrote: >>> >>> This series of patches are based and have been tested on the 'master' >>> branch of the u-boot.git tree. >>> >>> Tests were passed with a sama5d2 xplained board which embeds both SPI and >>> QSPI controllers. >>> >>> The following tests have been passed: >>> >>> - QSPI0 + Macronix MX25L25673G: >>>+ probe: OK >>>+ Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >>>+ Page Program 1-1-4 at offset 0x1: OK >>> The Macronix datasheet tells that only Page Program 1-4-4 is >>> supported, not Page Program 1-1-4, however it worked, I don't know >>> why... >>> >>> - QSPI0 + Microchip SST26 >>>+ probe: OK >>>+ Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >>>+ Page Program 1-1-1 at offset 0x1: OK >>> SST26 memories support Page Program 1-4-4 but with the op code of >>> Page Program 1-1-4, which is not standard so I don't use it. >>> >>> - QSPI0 + Adesto AT25DF321A >>>+ probe: OK >>>+ Fast Read 1-1-1 at offset 0x1 (u-boot env): OK >>>+ Page Program 1-1-1 at offset 0x1: OK >>> >>> - SPI0 + Adesto AT25DF321A >>>+ probe: OK >>>+ Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK >>>+ Page Program 1-1-1 at offest 0x6000: OK >>> >>> - SPI1 + Atmel AT45 >>>+ probe: OK >>>+ Read at offset 0 and other than 0: OK >>>+ Write at offset 0 and other than 0: OK >>> >>> During my tests, I used: >>>- setenv/saveenv, reboot, printenv >>>or >>>- sf probe, sf read, sf write, sf erase and sf update. >>> >>> Changes in v3: >>> - Add the include to fix build error for corvus_defconfig. >>> >>> Changes in v2: >>> - Rebase on the latest u-boot/master(2710d54f5). >>> >>> Cyrille Pitchen (8): >>>spi: add support of SPI flash commands >>>sf: describe all SPI flash commands with 'struct spi_flash_command' >>>sf: select the relevant SPI flash protocol for read and write commands >>>sf: differentiate Page Program 1-1-4 and 1-4-4 >>>sf: add 'addr_len' member to 'struct spi_flash' >>>sf: add new option to support SPI flash above 16MiB >>>sf: add support to Microchip SST26 QSPI memories >>>sf: add driver for Atmel QSPI controller >> >> Comments: >> How about writing struct spi_flash_command in spi_flash area >> (include/spi_flash.h)? and then write atmel_qspi with >> UCLASS_SPI_FLASH? > > The spi_flash_command struct describes the relevant features of the spi > controller, instead of the spi_flash device. > The purpose of patch set is used to supersede the spi_xfer() function to > access the spi_flash device. > So putting it in include/spi.h is suitable, we should not move it in the > spi_flash area. > > Moreover, why do we write atmel_qspi with UCLASS_SPI_FLASH? It is not easy > to understand. I will send explanation for these on respective patches, that would rather clean to understand from code point-of-view. thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi Bin, On Wed, Aug 30, 2017 at 11:11 AM, Bin Mengwrote: > On Wed, Aug 30, 2017 at 1:27 PM, Yang, Wenyou > wrote: >> >> >> On 2017/8/30 11:43, Bin Meng wrote: >>> >>> On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyou >>> wrote: On 2017/8/26 14:34, Jagan Teki wrote: > > Hi, > > Thanks for the changes. > > On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang > > wrote: >> >> This series of patches are based and have been tested on the 'master' >> branch of the u-boot.git tree. >> >> Tests were passed with a sama5d2 xplained board which embeds both SPI >> and >> QSPI controllers. >> >> The following tests have been passed: >> >> - QSPI0 + Macronix MX25L25673G: >> + probe: OK >> + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >> + Page Program 1-1-4 at offset 0x1: OK >> The Macronix datasheet tells that only Page Program 1-4-4 is >> supported, not Page Program 1-1-4, however it worked, I don't >> know >> why... >> >> - QSPI0 + Microchip SST26 >> + probe: OK >> + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >> + Page Program 1-1-1 at offset 0x1: OK >> SST26 memories support Page Program 1-4-4 but with the op code of >> Page Program 1-1-4, which is not standard so I don't use it. >> >> - QSPI0 + Adesto AT25DF321A >> + probe: OK >> + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK >> + Page Program 1-1-1 at offset 0x1: OK >> >> - SPI0 + Adesto AT25DF321A >> + probe: OK >> + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK >> + Page Program 1-1-1 at offest 0x6000: OK >> >> - SPI1 + Atmel AT45 >> + probe: OK >> + Read at offset 0 and other than 0: OK >> + Write at offset 0 and other than 0: OK >> >> During my tests, I used: >> - setenv/saveenv, reboot, printenv >> or >> - sf probe, sf read, sf write, sf erase and sf update. >> >> Changes in v3: >>- Add the include to fix build error for corvus_defconfig. >> >> Changes in v2: >>- Rebase on the latest u-boot/master(2710d54f5). >> >> Cyrille Pitchen (8): >> spi: add support of SPI flash commands >> sf: describe all SPI flash commands with 'struct spi_flash_command' >> sf: select the relevant SPI flash protocol for read and write >> commands >> sf: differentiate Page Program 1-1-4 and 1-4-4 >> sf: add 'addr_len' member to 'struct spi_flash' >> sf: add new option to support SPI flash above 16MiB >> sf: add support to Microchip SST26 QSPI memories >> sf: add driver for Atmel QSPI controller > > Comments: > How about writing struct spi_flash_command in spi_flash area > (include/spi_flash.h)? and then write atmel_qspi with > UCLASS_SPI_FLASH? > > Testing: > Basic testing works fine. > > Issues: > - Build issue: with zynq_microzed_defconfig > drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: > drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set > but not used [-Wunused-but-set-variable] > bool above_16MB; > ^~ > CC spl/lib/membuff.o > > - issue with spi_flash_cmd_read_ops 4BAIS > Need to calculate bank length only if BAR is in use. Otherwise, > consider the given len as read_len. > > Will send separate patch for this. Will You send a separate patch? or I include it in this patch set? >>> >>> This should not be a separate patch. Since every patch needs to pass >>> buildman testing. >> >> But it is not introduced by this patch set. So should be a separate patch to >> fix. > > Do you mean the build warnings exist in current u-boot/master? > > If so, Jagan can you please explain why you mention this? This is > nothing related to this patch review. Please read my previous comments, I was clearly explain the issue and diff. Issue came up this series with 4BAIS on spi_flash_cmd_read_ops thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On 2017/8/30 13:41, Bin Meng wrote: On Wed, Aug 30, 2017 at 1:27 PM, Yang, Wenyouwrote: On 2017/8/30 11:43, Bin Meng wrote: On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyou wrote: On 2017/8/26 14:34, Jagan Teki wrote: Hi, Thanks for the changes. On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang wrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller Comments: How about writing struct spi_flash_command in spi_flash area (include/spi_flash.h)? and then write atmel_qspi with UCLASS_SPI_FLASH? Testing: Basic testing works fine. Issues: - Build issue: with zynq_microzed_defconfig drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set but not used [-Wunused-but-set-variable] bool above_16MB; ^~ CC spl/lib/membuff.o - issue with spi_flash_cmd_read_ops 4BAIS Need to calculate bank length only if BAR is in use. Otherwise, consider the given len as read_len. Will send separate patch for this. Will You send a separate patch? or I include it in this patch set? This should not be a separate patch. Since every patch needs to pass buildman testing. But it is not introduced by this patch set. So should be a separate patch to fix. Do you mean the build warnings exist in current u-boot/master? Here are two issue, one is the build warning, other is the issue with spi_flash_cmd_read_ops. The build warning is related with this patch, I will fix it in the next version. But the issue with spi_flash_cmd_read_ops on bank length is not related with this patch. If so, Jagan can you please explain why you mention this? This is nothing related to this patch review. Regards, Bin Best Regards, Wenyou Yang ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Wed, Aug 30, 2017 at 1:27 PM, Yang, Wenyouwrote: > > > On 2017/8/30 11:43, Bin Meng wrote: >> >> On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyou >> wrote: >>> >>> >>> On 2017/8/26 14:34, Jagan Teki wrote: Hi, Thanks for the changes. On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang wrote: > > This series of patches are based and have been tested on the 'master' > branch of the u-boot.git tree. > > Tests were passed with a sama5d2 xplained board which embeds both SPI > and > QSPI controllers. > > The following tests have been passed: > > - QSPI0 + Macronix MX25L25673G: > + probe: OK > + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK > + Page Program 1-1-4 at offset 0x1: OK > The Macronix datasheet tells that only Page Program 1-4-4 is > supported, not Page Program 1-1-4, however it worked, I don't > know > why... > > - QSPI0 + Microchip SST26 > + probe: OK > + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK > + Page Program 1-1-1 at offset 0x1: OK > SST26 memories support Page Program 1-4-4 but with the op code of > Page Program 1-1-4, which is not standard so I don't use it. > > - QSPI0 + Adesto AT25DF321A > + probe: OK > + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK > + Page Program 1-1-1 at offset 0x1: OK > > - SPI0 + Adesto AT25DF321A > + probe: OK > + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK > + Page Program 1-1-1 at offest 0x6000: OK > > - SPI1 + Atmel AT45 > + probe: OK > + Read at offset 0 and other than 0: OK > + Write at offset 0 and other than 0: OK > > During my tests, I used: > - setenv/saveenv, reboot, printenv > or > - sf probe, sf read, sf write, sf erase and sf update. > > Changes in v3: >- Add the include to fix build error for corvus_defconfig. > > Changes in v2: >- Rebase on the latest u-boot/master(2710d54f5). > > Cyrille Pitchen (8): > spi: add support of SPI flash commands > sf: describe all SPI flash commands with 'struct spi_flash_command' > sf: select the relevant SPI flash protocol for read and write > commands > sf: differentiate Page Program 1-1-4 and 1-4-4 > sf: add 'addr_len' member to 'struct spi_flash' > sf: add new option to support SPI flash above 16MiB > sf: add support to Microchip SST26 QSPI memories > sf: add driver for Atmel QSPI controller Comments: How about writing struct spi_flash_command in spi_flash area (include/spi_flash.h)? and then write atmel_qspi with UCLASS_SPI_FLASH? Testing: Basic testing works fine. Issues: - Build issue: with zynq_microzed_defconfig drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set but not used [-Wunused-but-set-variable] bool above_16MB; ^~ CC spl/lib/membuff.o - issue with spi_flash_cmd_read_ops 4BAIS Need to calculate bank length only if BAR is in use. Otherwise, consider the given len as read_len. Will send separate patch for this. >>> >>> Will You send a separate patch? or I include it in this patch set? >> >> This should not be a separate patch. Since every patch needs to pass >> buildman testing. > > But it is not introduced by this patch set. So should be a separate patch to > fix. Do you mean the build warnings exist in current u-boot/master? If so, Jagan can you please explain why you mention this? This is nothing related to this patch review. Regards, Bin ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On 2017/8/30 11:43, Bin Meng wrote: On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyouwrote: On 2017/8/26 14:34, Jagan Teki wrote: Hi, Thanks for the changes. On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang wrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller Comments: How about writing struct spi_flash_command in spi_flash area (include/spi_flash.h)? and then write atmel_qspi with UCLASS_SPI_FLASH? Testing: Basic testing works fine. Issues: - Build issue: with zynq_microzed_defconfig drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set but not used [-Wunused-but-set-variable] bool above_16MB; ^~ CC spl/lib/membuff.o - issue with spi_flash_cmd_read_ops 4BAIS Need to calculate bank length only if BAR is in use. Otherwise, consider the given len as read_len. Will send separate patch for this. Will You send a separate patch? or I include it in this patch set? This should not be a separate patch. Since every patch needs to pass buildman testing. But it is not introduced by this patch set. So should be a separate patch to fix. diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index 89ceae2..b5d8ef3 100644 --- a/drivers/mtd/spi/spi_flash.c +++ b/drivers/mtd/spi/spi_flash.c @@ -558,13 +558,15 @@ int spi_flash_cmd_read_ops(struct spi_flash *flash, u32 offset, if (ret < 0) return ret; bank_sel = flash->bank_curr; -#endif remain_len = ((SPI_FLASH_16MB_BOUN << flash->shift) * (bank_sel + 1)) - offset; if (len < remain_len) read_len = len; else read_len = remain_len; +#else +read_len = len; +#endif cmd.addr = read_addr; cmd.data_len = read_len; Regards, Bin Best Regards, Wenyou Yang ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Wed, Aug 30, 2017 at 11:25 AM, Yang, Wenyouwrote: > > > On 2017/8/26 14:34, Jagan Teki wrote: >> >> Hi, >> >> Thanks for the changes. >> >> On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yang >> wrote: >>> >>> This series of patches are based and have been tested on the 'master' >>> branch of the u-boot.git tree. >>> >>> Tests were passed with a sama5d2 xplained board which embeds both SPI and >>> QSPI controllers. >>> >>> The following tests have been passed: >>> >>> - QSPI0 + Macronix MX25L25673G: >>>+ probe: OK >>>+ Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >>>+ Page Program 1-1-4 at offset 0x1: OK >>> The Macronix datasheet tells that only Page Program 1-4-4 is >>> supported, not Page Program 1-1-4, however it worked, I don't know >>> why... >>> >>> - QSPI0 + Microchip SST26 >>>+ probe: OK >>>+ Fast Read 1-1-4 at offset 0x1 (u-boot env): OK >>>+ Page Program 1-1-1 at offset 0x1: OK >>> SST26 memories support Page Program 1-4-4 but with the op code of >>> Page Program 1-1-4, which is not standard so I don't use it. >>> >>> - QSPI0 + Adesto AT25DF321A >>>+ probe: OK >>>+ Fast Read 1-1-1 at offset 0x1 (u-boot env): OK >>>+ Page Program 1-1-1 at offset 0x1: OK >>> >>> - SPI0 + Adesto AT25DF321A >>>+ probe: OK >>>+ Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK >>>+ Page Program 1-1-1 at offest 0x6000: OK >>> >>> - SPI1 + Atmel AT45 >>>+ probe: OK >>>+ Read at offset 0 and other than 0: OK >>>+ Write at offset 0 and other than 0: OK >>> >>> During my tests, I used: >>>- setenv/saveenv, reboot, printenv >>>or >>>- sf probe, sf read, sf write, sf erase and sf update. >>> >>> Changes in v3: >>> - Add the include to fix build error for corvus_defconfig. >>> >>> Changes in v2: >>> - Rebase on the latest u-boot/master(2710d54f5). >>> >>> Cyrille Pitchen (8): >>>spi: add support of SPI flash commands >>>sf: describe all SPI flash commands with 'struct spi_flash_command' >>>sf: select the relevant SPI flash protocol for read and write commands >>>sf: differentiate Page Program 1-1-4 and 1-4-4 >>>sf: add 'addr_len' member to 'struct spi_flash' >>>sf: add new option to support SPI flash above 16MiB >>>sf: add support to Microchip SST26 QSPI memories >>>sf: add driver for Atmel QSPI controller >> >> Comments: >> How about writing struct spi_flash_command in spi_flash area >> (include/spi_flash.h)? and then write atmel_qspi with >> UCLASS_SPI_FLASH? >> >> Testing: >> Basic testing works fine. >> >> Issues: >> - Build issue: with zynq_microzed_defconfig >> drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: >> drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set >> but not used [-Wunused-but-set-variable] >>bool above_16MB; >> ^~ >>CC spl/lib/membuff.o >> >> - issue with spi_flash_cmd_read_ops 4BAIS >> Need to calculate bank length only if BAR is in use. Otherwise, >> consider the given len as read_len. >> >> Will send separate patch for this. > > Will You send a separate patch? or I include it in this patch set? >> This should not be a separate patch. Since every patch needs to pass buildman testing. >> diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c >> index 89ceae2..b5d8ef3 100644 >> --- a/drivers/mtd/spi/spi_flash.c >> +++ b/drivers/mtd/spi/spi_flash.c >> @@ -558,13 +558,15 @@ int spi_flash_cmd_read_ops(struct spi_flash >> *flash, u32 offset, >> if (ret < 0) >> return ret; >> bank_sel = flash->bank_curr; >> -#endif >> remain_len = ((SPI_FLASH_16MB_BOUN << flash->shift) * >> (bank_sel + 1)) - offset; >> if (len < remain_len) >> read_len = len; >> else >> read_len = remain_len; >> +#else >> +read_len = len; >> +#endif >> >> cmd.addr = read_addr; >> cmd.data_len = read_len; >> Regards, Bin ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On 2017/8/26 14:34, Jagan Teki wrote: Hi, Thanks for the changes. On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yangwrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller Comments: How about writing struct spi_flash_command in spi_flash area (include/spi_flash.h)? and then write atmel_qspi with UCLASS_SPI_FLASH? Testing: Basic testing works fine. Issues: - Build issue: with zynq_microzed_defconfig drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set but not used [-Wunused-but-set-variable] bool above_16MB; ^~ CC spl/lib/membuff.o - issue with spi_flash_cmd_read_ops 4BAIS Need to calculate bank length only if BAR is in use. Otherwise, consider the given len as read_len. Will send separate patch for this. Will You send a separate patch? or I include it in this patch set? diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index 89ceae2..b5d8ef3 100644 --- a/drivers/mtd/spi/spi_flash.c +++ b/drivers/mtd/spi/spi_flash.c @@ -558,13 +558,15 @@ int spi_flash_cmd_read_ops(struct spi_flash *flash, u32 offset, if (ret < 0) return ret; bank_sel = flash->bank_curr; -#endif remain_len = ((SPI_FLASH_16MB_BOUN << flash->shift) * (bank_sel + 1)) - offset; if (len < remain_len) read_len = len; else read_len = remain_len; +#else +read_len = len; +#endif cmd.addr = read_addr; cmd.data_len = read_len; thanks! Best Regards, Wenyou Yang ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi Jagan, On 2017/8/26 14:34, Jagan Teki wrote: Hi, Thanks for the changes. On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yangwrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller Comments: How about writing struct spi_flash_command in spi_flash area (include/spi_flash.h)? and then write atmel_qspi with UCLASS_SPI_FLASH? The spi_flash_command struct describes the relevant features of the spi controller, instead of the spi_flash device. The purpose of patch set is used to supersede the spi_xfer() function to access the spi_flash device. So putting it in include/spi.h is suitable, we should not move it in the spi_flash area. Moreover, why do we write atmel_qspi with UCLASS_SPI_FLASH? It is not easy to understand. Testing: Basic testing works fine. Issues: - Build issue: with zynq_microzed_defconfig drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set but not used [-Wunused-but-set-variable] bool above_16MB; Will send a new version to fix it. Thanks a lot. ^~ CC spl/lib/membuff.o - issue with spi_flash_cmd_read_ops 4BAIS Need to calculate bank length only if BAR is in use. Otherwise, consider the given len as read_len. Will send separate patch for this. diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index 89ceae2..b5d8ef3 100644 --- a/drivers/mtd/spi/spi_flash.c +++ b/drivers/mtd/spi/spi_flash.c @@ -558,13 +558,15 @@ int spi_flash_cmd_read_ops(struct spi_flashmake *flash, u32 offset, if (ret < 0) return ret; bank_sel = flash->bank_curr; -#endif remain_len = ((SPI_FLASH_16MB_BOUN << flash->shift) * (bank_sel + 1)) - offset; if (len < remain_len) read_len = len; else read_len = remain_len; +#else +read_len = len; +#endif cmd.addr = read_addr; cmd.data_len = read_len; thanks! Best Regards, Wenyou Yang ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Sat, Aug 26, 2017 at 10:36:57AM +0200, Marek Vasut wrote: > On 08/26/2017 08:14 AM, Jagan Teki wrote: > > On Sat, Aug 26, 2017 at 4:35 AM, Bin Mengwrote: > >> On Sat, Aug 26, 2017 at 12:45 AM, Marek Vasut wrote: > >>> On 08/25/2017 06:28 PM, Jagan Teki wrote: > On Fri, Aug 25, 2017 at 9:43 PM, Marek Vasut wrote: > > On 08/25/2017 06:07 PM, Jagan Teki wrote: > >> On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou > >> wrote: > >>> Hi, > >>> > >>> This patch set has been here for a long time, could you have a look > >>> and take > >>> it? > >> > >> Yeah, I'm holding this because of my current spi-nor work. But anyway > >> I will try to merge on coming MW If all OK. > > > > Is your work posted somewhere or available in some git repository ? > >>> > >>> You did not answer this question. > >>> > > I don't see any reason why you should not perform your maintainer duties > > by reviewing/replying to an incoming patch, no matter what work you do > > to the subsystem though ... > > I didn't write "this series holding spi-nor work" since it has some > new features I'm taking time to review. > >>> > >>> I never implied this. Rather the opposite, you claim you do some work on > >>> the SPI NOR core, yet you let this patchset rot in the list for over a > >>> month now and gave the author zero feedback. > >>> > >>> Notifying the author about the core changes early could've prevented a > >>> lot of wasted effort on his side. Reviewing early could've prevented a > >>> lot of frustration from patches being ignored. > >>> > There is nothing wrong with > maintainer duties here, you must need to understand. > >>> > >>> I disagree. > >>> > >> > >> I agree with Marek here. I found it's really hard to get feedback for > >> SF patches in time and what I have to do is to ping again and again. > > > > I agree that the SF side patches have got some delay recently, but ie > > something not intentional. SF stack is not stable as of now, so I'm > > working on SPI-NOR (v10)[1] the new patches for SF need to wait - > > please be patient. > > What are the problems with the stack causing this instability ? > > How do you plan to stabilize the stack for the current release ? > > Given how complex and incomplete this patch(set) [1] is and that it's > already in v10, it seems it will take a while to get it into shape in > which it can be included in mainline. Blocking all other contributions > because of this patchset seems wrong and hurtful to the contributors to me. Yes. We cannot let a new framework block progress enabling things on our current framework. We are not at the point with spi-nor that we can say nothing else is allowed to move forward. Thanks! -- Tom signature.asc Description: Digital signature ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On 08/26/2017 08:14 AM, Jagan Teki wrote: > On Sat, Aug 26, 2017 at 4:35 AM, Bin Mengwrote: >> On Sat, Aug 26, 2017 at 12:45 AM, Marek Vasut wrote: >>> On 08/25/2017 06:28 PM, Jagan Teki wrote: On Fri, Aug 25, 2017 at 9:43 PM, Marek Vasut wrote: > On 08/25/2017 06:07 PM, Jagan Teki wrote: >> On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou >> wrote: >>> Hi, >>> >>> This patch set has been here for a long time, could you have a look and >>> take >>> it? >> >> Yeah, I'm holding this because of my current spi-nor work. But anyway >> I will try to merge on coming MW If all OK. > > Is your work posted somewhere or available in some git repository ? >>> >>> You did not answer this question. >>> > I don't see any reason why you should not perform your maintainer duties > by reviewing/replying to an incoming patch, no matter what work you do > to the subsystem though ... I didn't write "this series holding spi-nor work" since it has some new features I'm taking time to review. >>> >>> I never implied this. Rather the opposite, you claim you do some work on >>> the SPI NOR core, yet you let this patchset rot in the list for over a >>> month now and gave the author zero feedback. >>> >>> Notifying the author about the core changes early could've prevented a >>> lot of wasted effort on his side. Reviewing early could've prevented a >>> lot of frustration from patches being ignored. >>> There is nothing wrong with maintainer duties here, you must need to understand. >>> >>> I disagree. >>> >> >> I agree with Marek here. I found it's really hard to get feedback for >> SF patches in time and what I have to do is to ping again and again. > > I agree that the SF side patches have got some delay recently, but ie > something not intentional. SF stack is not stable as of now, so I'm > working on SPI-NOR (v10)[1] the new patches for SF need to wait - > please be patient. What are the problems with the stack causing this instability ? How do you plan to stabilize the stack for the current release ? Given how complex and incomplete this patch(set) [1] is and that it's already in v10, it seems it will take a while to get it into shape in which it can be included in mainline. Blocking all other contributions because of this patchset seems wrong and hurtful to the contributors to me. > [1] http://git.denx.de/?p=u-boot-spi.git;a=shortlog;h=refs/heads/mtd-spinor > > thanks! > -- Best regards, Marek Vasut ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi, Thanks for the changes. On Tue, Jul 25, 2017 at 12:30 PM, Wenyou Yangwrote: > This series of patches are based and have been tested on the 'master' > branch of the u-boot.git tree. > > Tests were passed with a sama5d2 xplained board which embeds both SPI and > QSPI controllers. > > The following tests have been passed: > > - QSPI0 + Macronix MX25L25673G: > + probe: OK > + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK > + Page Program 1-1-4 at offset 0x1: OK > The Macronix datasheet tells that only Page Program 1-4-4 is > supported, not Page Program 1-1-4, however it worked, I don't know > why... > > - QSPI0 + Microchip SST26 > + probe: OK > + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK > + Page Program 1-1-1 at offset 0x1: OK > SST26 memories support Page Program 1-4-4 but with the op code of > Page Program 1-1-4, which is not standard so I don't use it. > > - QSPI0 + Adesto AT25DF321A > + probe: OK > + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK > + Page Program 1-1-1 at offset 0x1: OK > > - SPI0 + Adesto AT25DF321A > + probe: OK > + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK > + Page Program 1-1-1 at offest 0x6000: OK > > - SPI1 + Atmel AT45 > + probe: OK > + Read at offset 0 and other than 0: OK > + Write at offset 0 and other than 0: OK > > During my tests, I used: > - setenv/saveenv, reboot, printenv > or > - sf probe, sf read, sf write, sf erase and sf update. > > Changes in v3: > - Add the include to fix build error for corvus_defconfig. > > Changes in v2: > - Rebase on the latest u-boot/master(2710d54f5). > > Cyrille Pitchen (8): > spi: add support of SPI flash commands > sf: describe all SPI flash commands with 'struct spi_flash_command' > sf: select the relevant SPI flash protocol for read and write commands > sf: differentiate Page Program 1-1-4 and 1-4-4 > sf: add 'addr_len' member to 'struct spi_flash' > sf: add new option to support SPI flash above 16MiB > sf: add support to Microchip SST26 QSPI memories > sf: add driver for Atmel QSPI controller Comments: How about writing struct spi_flash_command in spi_flash area (include/spi_flash.h)? and then write atmel_qspi with UCLASS_SPI_FLASH? Testing: Basic testing works fine. Issues: - Build issue: with zynq_microzed_defconfig drivers/mtd/spi/spi_flash.c: In function ‘spi_flash_scan’: drivers/mtd/spi/spi_flash.c:1049:7: warning: variable ‘above_16MB’ set but not used [-Wunused-but-set-variable] bool above_16MB; ^~ CC spl/lib/membuff.o - issue with spi_flash_cmd_read_ops 4BAIS Need to calculate bank length only if BAR is in use. Otherwise, consider the given len as read_len. Will send separate patch for this. diff --git a/drivers/mtd/spi/spi_flash.c b/drivers/mtd/spi/spi_flash.c index 89ceae2..b5d8ef3 100644 --- a/drivers/mtd/spi/spi_flash.c +++ b/drivers/mtd/spi/spi_flash.c @@ -558,13 +558,15 @@ int spi_flash_cmd_read_ops(struct spi_flash *flash, u32 offset, if (ret < 0) return ret; bank_sel = flash->bank_curr; -#endif remain_len = ((SPI_FLASH_16MB_BOUN << flash->shift) * (bank_sel + 1)) - offset; if (len < remain_len) read_len = len; else read_len = remain_len; +#else +read_len = len; +#endif cmd.addr = read_addr; cmd.data_len = read_len; thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Sat, Aug 26, 2017 at 4:35 AM, Bin Mengwrote: > On Sat, Aug 26, 2017 at 12:45 AM, Marek Vasut wrote: >> On 08/25/2017 06:28 PM, Jagan Teki wrote: >>> On Fri, Aug 25, 2017 at 9:43 PM, Marek Vasut wrote: On 08/25/2017 06:07 PM, Jagan Teki wrote: > On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou > wrote: >> Hi, >> >> This patch set has been here for a long time, could you have a look and >> take >> it? > > Yeah, I'm holding this because of my current spi-nor work. But anyway > I will try to merge on coming MW If all OK. Is your work posted somewhere or available in some git repository ? >> >> You did not answer this question. >> I don't see any reason why you should not perform your maintainer duties by reviewing/replying to an incoming patch, no matter what work you do to the subsystem though ... >>> >>> I didn't write "this series holding spi-nor work" since it has some >>> new features I'm taking time to review. >> >> I never implied this. Rather the opposite, you claim you do some work on >> the SPI NOR core, yet you let this patchset rot in the list for over a >> month now and gave the author zero feedback. >> >> Notifying the author about the core changes early could've prevented a >> lot of wasted effort on his side. Reviewing early could've prevented a >> lot of frustration from patches being ignored. >> >>> There is nothing wrong with >>> maintainer duties here, you must need to understand. >> >> I disagree. >> > > I agree with Marek here. I found it's really hard to get feedback for > SF patches in time and what I have to do is to ping again and again. I agree that the SF side patches have got some delay recently, but ie something not intentional. SF stack is not stable as of now, so I'm working on SPI-NOR (v10)[1] the new patches for SF need to wait - please be patient. [1] http://git.denx.de/?p=u-boot-spi.git;a=shortlog;h=refs/heads/mtd-spinor thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Sat, Aug 26, 2017 at 12:45 AM, Marek Vasutwrote: > On 08/25/2017 06:28 PM, Jagan Teki wrote: >> On Fri, Aug 25, 2017 at 9:43 PM, Marek Vasut wrote: >>> On 08/25/2017 06:07 PM, Jagan Teki wrote: On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou wrote: > Hi, > > This patch set has been here for a long time, could you have a look and > take > it? Yeah, I'm holding this because of my current spi-nor work. But anyway I will try to merge on coming MW If all OK. >>> >>> Is your work posted somewhere or available in some git repository ? > > You did not answer this question. > >>> I don't see any reason why you should not perform your maintainer duties >>> by reviewing/replying to an incoming patch, no matter what work you do >>> to the subsystem though ... >> >> I didn't write "this series holding spi-nor work" since it has some >> new features I'm taking time to review. > > I never implied this. Rather the opposite, you claim you do some work on > the SPI NOR core, yet you let this patchset rot in the list for over a > month now and gave the author zero feedback. > > Notifying the author about the core changes early could've prevented a > lot of wasted effort on his side. Reviewing early could've prevented a > lot of frustration from patches being ignored. > >> There is nothing wrong with >> maintainer duties here, you must need to understand. > > I disagree. > I agree with Marek here. I found it's really hard to get feedback for SF patches in time and what I have to do is to ping again and again. Regards, Bin ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On 08/25/2017 06:28 PM, Jagan Teki wrote: > On Fri, Aug 25, 2017 at 9:43 PM, Marek Vasutwrote: >> On 08/25/2017 06:07 PM, Jagan Teki wrote: >>> On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou >>> wrote: Hi, This patch set has been here for a long time, could you have a look and take it? >>> >>> Yeah, I'm holding this because of my current spi-nor work. But anyway >>> I will try to merge on coming MW If all OK. >> >> Is your work posted somewhere or available in some git repository ? You did not answer this question. >> I don't see any reason why you should not perform your maintainer duties >> by reviewing/replying to an incoming patch, no matter what work you do >> to the subsystem though ... > > I didn't write "this series holding spi-nor work" since it has some > new features I'm taking time to review. I never implied this. Rather the opposite, you claim you do some work on the SPI NOR core, yet you let this patchset rot in the list for over a month now and gave the author zero feedback. Notifying the author about the core changes early could've prevented a lot of wasted effort on his side. Reviewing early could've prevented a lot of frustration from patches being ignored. > There is nothing wrong with > maintainer duties here, you must need to understand. I disagree. -- Best regards, Marek Vasut ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Fri, Aug 25, 2017 at 9:43 PM, Marek Vasutwrote: > On 08/25/2017 06:07 PM, Jagan Teki wrote: >> On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou >> wrote: >>> Hi, >>> >>> This patch set has been here for a long time, could you have a look and take >>> it? >> >> Yeah, I'm holding this because of my current spi-nor work. But anyway >> I will try to merge on coming MW If all OK. > > Is your work posted somewhere or available in some git repository ? > > I don't see any reason why you should not perform your maintainer duties > by reviewing/replying to an incoming patch, no matter what work you do > to the subsystem though ... I didn't write "this series holding spi-nor work" since it has some new features I'm taking time to review. There is nothing wrong with maintainer duties here, you must need to understand. thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On 08/25/2017 06:07 PM, Jagan Teki wrote: > On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyou> wrote: >> Hi, >> >> This patch set has been here for a long time, could you have a look and take >> it? > > Yeah, I'm holding this because of my current spi-nor work. But anyway > I will try to merge on coming MW If all OK. Is your work posted somewhere or available in some git repository ? I don't see any reason why you should not perform your maintainer duties by reviewing/replying to an incoming patch, no matter what work you do to the subsystem though ... -- Best regards, Marek Vasut ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Fri, Aug 25, 2017 at 6:47 AM, Yang, Wenyouwrote: > Hi, > > This patch set has been here for a long time, could you have a look and take > it? Yeah, I'm holding this because of my current spi-nor work. But anyway I will try to merge on coming MW If all OK. thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi, This patch set has been here for a long time, could you have a look and take it? Best Regards, Wenyou Yang On 2017/7/25 15:00, Wenyou Yang wrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller drivers/mtd/spi/Kconfig | 16 +- drivers/mtd/spi/sf.c| 78 ++-- drivers/mtd/spi/sf_dataflash.c | 119 ++-- drivers/mtd/spi/sf_internal.h | 48 +++-- drivers/mtd/spi/spi_flash.c | 341 +++-- drivers/mtd/spi/spi_flash_ids.c | 5 + drivers/spi/Kconfig | 7 + drivers/spi/Makefile| 1 + drivers/spi/atmel_qspi.c| 404 drivers/spi/atmel_qspi.h| 169 + drivers/spi/spi-uclass.c| 40 drivers/spi/spi.c | 13 ++ include/spi.h | 168 + include/spi_flash.h | 7 + 14 files changed, 1226 insertions(+), 190 deletions(-) create mode 100644 drivers/spi/atmel_qspi.c create mode 100644 drivers/spi/atmel_qspi.h ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
On Fri, Aug 11, 2017 at 6:32 AM, Yang, Wenyouwrote: > Hi All, > > Do you have some comment on it? Yes, Will come back. thanks! -- Jagan Teki Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India. ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi All, Do you have some comment on it? On 2017/7/25 15:00, Wenyou Yang wrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller drivers/mtd/spi/Kconfig | 16 +- drivers/mtd/spi/sf.c| 78 ++-- drivers/mtd/spi/sf_dataflash.c | 119 ++-- drivers/mtd/spi/sf_internal.h | 48 +++-- drivers/mtd/spi/spi_flash.c | 341 +++-- drivers/mtd/spi/spi_flash_ids.c | 5 + drivers/spi/Kconfig | 7 + drivers/spi/Makefile| 1 + drivers/spi/atmel_qspi.c| 404 drivers/spi/atmel_qspi.h| 169 + drivers/spi/spi-uclass.c| 40 drivers/spi/spi.c | 13 ++ include/spi.h | 168 + include/spi_flash.h | 7 + 14 files changed, 1226 insertions(+), 190 deletions(-) create mode 100644 drivers/spi/atmel_qspi.c create mode 100644 drivers/spi/atmel_qspi.h Best Regards, Wenyou Yang ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot
Re: [U-Boot] [PATCH v3 0/8] sf: improve support of (Q)SPI flash memories
Hi, Do you have comments? Best Regards, Wenyou Yang On 2017/7/25 15:00, Wenyou Yang wrote: This series of patches are based and have been tested on the 'master' branch of the u-boot.git tree. Tests were passed with a sama5d2 xplained board which embeds both SPI and QSPI controllers. The following tests have been passed: - QSPI0 + Macronix MX25L25673G: + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-4 at offset 0x1: OK The Macronix datasheet tells that only Page Program 1-4-4 is supported, not Page Program 1-1-4, however it worked, I don't know why... - QSPI0 + Microchip SST26 + probe: OK + Fast Read 1-1-4 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK SST26 memories support Page Program 1-4-4 but with the op code of Page Program 1-1-4, which is not standard so I don't use it. - QSPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x1 (u-boot env): OK + Page Program 1-1-1 at offset 0x1: OK - SPI0 + Adesto AT25DF321A + probe: OK + Fast Read 1-1-1 at offset 0x6000 (u-boot env): OK + Page Program 1-1-1 at offest 0x6000: OK - SPI1 + Atmel AT45 + probe: OK + Read at offset 0 and other than 0: OK + Write at offset 0 and other than 0: OK During my tests, I used: - setenv/saveenv, reboot, printenv or - sf probe, sf read, sf write, sf erase and sf update. Changes in v3: - Add the include to fix build error for corvus_defconfig. Changes in v2: - Rebase on the latest u-boot/master(2710d54f5). Cyrille Pitchen (8): spi: add support of SPI flash commands sf: describe all SPI flash commands with 'struct spi_flash_command' sf: select the relevant SPI flash protocol for read and write commands sf: differentiate Page Program 1-1-4 and 1-4-4 sf: add 'addr_len' member to 'struct spi_flash' sf: add new option to support SPI flash above 16MiB sf: add support to Microchip SST26 QSPI memories sf: add driver for Atmel QSPI controller drivers/mtd/spi/Kconfig | 16 +- drivers/mtd/spi/sf.c| 78 ++-- drivers/mtd/spi/sf_dataflash.c | 119 ++-- drivers/mtd/spi/sf_internal.h | 48 +++-- drivers/mtd/spi/spi_flash.c | 341 +++-- drivers/mtd/spi/spi_flash_ids.c | 5 + drivers/spi/Kconfig | 7 + drivers/spi/Makefile| 1 + drivers/spi/atmel_qspi.c| 404 drivers/spi/atmel_qspi.h| 169 + drivers/spi/spi-uclass.c| 40 drivers/spi/spi.c | 13 ++ include/spi.h | 168 + include/spi_flash.h | 7 + 14 files changed, 1226 insertions(+), 190 deletions(-) create mode 100644 drivers/spi/atmel_qspi.c create mode 100644 drivers/spi/atmel_qspi.h ___ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot