Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On 11/15/2016 07:16 PM, Jagan Teki wrote: > York, > > Please test again? > OK. It is in the queue. York ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
York, Please test again? On Tue, Nov 8, 2016 at 10:59 PM, york sunwrote: > On 11/07/2016 08:52 PM, york@nxp.com wrote: >> On 10/30/2016 10:47 AM, Jagan Teki wrote: >>> INFO macro make flash table entries more adjustable like >>> adding new flash_info attributes, update ID length bytes >>> and so on and more over it will sync to Linux way of defining >>> flash_info attributes. >>> >>> - Add JEDEC_ID >>> - Add JEDEC_EXT macro >>> - Add JEDEC_MFR >>> - spi_flash_params => spi_flash_info >>> - params => info >>> >>> Cc: Simon Glass >>> Cc: Bin Meng >>> Cc: York Sun >>> Cc: Vignesh R >>> Cc: Mugunthan V N >>> Cc: Michal Simek >>> Cc: Siva Durga Prasad Paladugu >>> Signed-off-by: Jagan Teki >>> --- >>> drivers/mtd/spi/sandbox.c | 10 +- >>> drivers/mtd/spi/sf_internal.h | 26 +++-- >>> drivers/mtd/spi/sf_params.c | 217 >>> ++ >>> drivers/mtd/spi/spi_flash.c | 119 --- >>> include/linux/err.h | 5 + >>> 5 files changed, 205 insertions(+), 172 deletions(-) >>> >> >> I got compiling warning on the first patch (tested on top of master branch) >> >> 02: sf: Adopt flash table INFO macro from Linux >>powerpc: + T1024RDB_SPIFLASH T2080QDS_SPIFLASH T1040RDB_NAND >> B4860QDS_SRIO_PCIE_BOOT T1042RDB_PI_SPIFLASH B4860QDS >> T1040RDB_SECURE_BOOT T1024QDS_SPIFLASH B4420QDS >> controlcenterd_36BIT_SDCARD T2081QDS T2080QDS T4240QDS T1040D4RDB >> T4240RDB_SDCARD T2080RDB_SDCARD T1024QDS_NAND T4240QDS_SRIO_PCIE_BOOT >> T1024RDB_NAND T2081QDS_SPIFLASH T1040QDS_SECURE_BOOT UCP1020 T4240RDB >> T4160QDS_NAND T1042D4RDB_SECURE_BOOT T1042RDB_SECURE_BOOT T2080RDB >> T4240QDS_SECURE_BOOT T1024QDS T1040RDB T1042RDB_PI_NAND T2080RDB_NAND >> T1042RDB_PI_SDCARD T1042D4RDB_NAND T2081QDS_NAND T4160QDS_SDCARD >> T2080QDS_SDCARD T1042RDB T4160QDS_SECURE_BOOT T1040RDB_SDCARD >> T2081QDS_SRIO_PCIE_BOOT T2080RDB_SECURE_BOOT B4860QDS_SECURE_BOOT >> T1040QDS T1042D4RDB B4860QDS_NAND T1040QDS_DDR4 T2080QDS_SECURE_BOOT >> T2080RDB_SPIFLASH T4240QDS_SDCARD T1024QDS_DDR4 T1040D4RDB_SDCARD >> T1040D4RDB_SPIFLASH T1024QDS_DDR4_SECURE_BOOT T2080QDS_NAND >> controlcenterd_36BIT_SDCARD_DEVELOP T2080QDS_SRIO_PCIE_BOOT >> UCP1020_SPIFLASH T1040D4RDB_NAND T4160QDS T4160RDB T1024QDS_SECURE_BOOT >> B4860QDS_SPIFLASH T1040RDB_SPIFLASH T1024RDB T4240QDS_NAND B4420QDS_NAND >> T1040D4RDB_SECURE_BOOT T2080RDB_SRIO_PCIE_BOOT T1024RDB_SECURE_BOOT >> T1024QDS_SDCARD T1042D4RDB_SPIFLASH T1042RDB_PI_NAND_SECURE_BOOT >> T1042D4RDB_SDCARD T2081QDS_SDCARD T1024RDB_SDCARD T1042RDB_PI >> B4420QDS_SPIFLASH >> w+(T4240RDB,T1024RDB_SPIFLASH,T2080RDB_SECURE_BOOT,T2080QDS_SPIFLASH,B4860QDS_SECURE_BOOT,B4860QDS_SRIO_PCIE_BOOT,T1042RDB_PI_SPIFLASH,B4860QDS,T1024QDS_SPIFLASH,B4420QDS,controlcenterd_36BIT_SDCARD,T2081QDS,T2080QDS,T4240QDS,T1040D4RDB,T4240RDB_SDCARD,T2080RDB_SDCARD,T1024QDS_NAND,T4240QDS_SRIO_PCIE_BOOT,T1024RDB_NAND,T2081QDS_SPIFLASH,T1040QDS_SECURE_BOOT,UCP1020,T4160QDS_NAND,T1042D4RDB_SECURE_BOOT,T1042RDB_SECURE_BOOT,T2080RDB,T4240QDS_SECURE_BOOT,T2081QDS_SRIO_PCIE_BOOT,T1024QDS,T1040RDB,T1042RDB_PI_NAND,T2080RDB_NAND,T1042RDB_PI_SDCARD,T2081QDS_NAND,T4160QDS_SDCARD,T2080QDS_SDCARD,T1042RDB,T4160QDS_SECURE_BOOT,T1040RDB_SDCARD,T1040D4RDB_SPIFLASH,T1040QDS,T1042D4RDB,B4860QDS_NAND,T1040QDS_DDR4,T2080QDS_SECURE_BOOT,T2080RDB_SPIFLASH,T4240QDS_SDCARD,T1024QDS_DDR4,T1040D4RDB_SDCARD,T1024QDS_DDR4_SECURE_BOOT,T2080QDS_NAND,controlcenterd_36BIT_SDCARD_DEVELOP,T2080QDS_SRIO_PCIE_BOOT,UCP1020_SPIFLASH,T1040D4RDB_NAND,T4160QDS,T4160RDB,T1024QDS_SECURE_BOOT,B4860QDS_SPIFLASH,T1040RDB_SPIFLASH,T1024RDB,T4240QDS_NAND,B4420QDS_NAND,T1040D4RDB_SECURE_BOOT,T2080RDB_SRIO_PCIE_BOOT,T1024RDB_SECURE_BOOT,T1024QDS_SDCARD,T1042D4RDB_SPIFLASH,T1042RDB_PI_NAND_SECURE_BOOT,T1040RDB_SECURE_BOOT,T1042D4RDB_NAND,T1042D4RDB_SDCARD,T2081QDS_SDCARD,T1040RDB_NAND,T1024RDB_SDCARD,B4420QDS_SPIFLASH,T1042RDB_PI) >> ../drivers/mtd/spi/spi_flash.c: In function 'spi_flash_scan': >>
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On 11/07/2016 08:52 PM, york@nxp.com wrote: > On 10/30/2016 10:47 AM, Jagan Teki wrote: >> INFO macro make flash table entries more adjustable like >> adding new flash_info attributes, update ID length bytes >> and so on and more over it will sync to Linux way of defining >> flash_info attributes. >> >> - Add JEDEC_ID >> - Add JEDEC_EXT macro >> - Add JEDEC_MFR >> - spi_flash_params => spi_flash_info >> - params => info >> >> Cc: Simon Glass>> Cc: Bin Meng >> Cc: York Sun >> Cc: Vignesh R >> Cc: Mugunthan V N >> Cc: Michal Simek >> Cc: Siva Durga Prasad Paladugu >> Signed-off-by: Jagan Teki >> --- >> drivers/mtd/spi/sandbox.c | 10 +- >> drivers/mtd/spi/sf_internal.h | 26 +++-- >> drivers/mtd/spi/sf_params.c | 217 >> ++ >> drivers/mtd/spi/spi_flash.c | 119 --- >> include/linux/err.h | 5 + >> 5 files changed, 205 insertions(+), 172 deletions(-) >> > > I got compiling warning on the first patch (tested on top of master branch) > > 02: sf: Adopt flash table INFO macro from Linux >powerpc: + T1024RDB_SPIFLASH T2080QDS_SPIFLASH T1040RDB_NAND > B4860QDS_SRIO_PCIE_BOOT T1042RDB_PI_SPIFLASH B4860QDS > T1040RDB_SECURE_BOOT T1024QDS_SPIFLASH B4420QDS > controlcenterd_36BIT_SDCARD T2081QDS T2080QDS T4240QDS T1040D4RDB > T4240RDB_SDCARD T2080RDB_SDCARD T1024QDS_NAND T4240QDS_SRIO_PCIE_BOOT > T1024RDB_NAND T2081QDS_SPIFLASH T1040QDS_SECURE_BOOT UCP1020 T4240RDB > T4160QDS_NAND T1042D4RDB_SECURE_BOOT T1042RDB_SECURE_BOOT T2080RDB > T4240QDS_SECURE_BOOT T1024QDS T1040RDB T1042RDB_PI_NAND T2080RDB_NAND > T1042RDB_PI_SDCARD T1042D4RDB_NAND T2081QDS_NAND T4160QDS_SDCARD > T2080QDS_SDCARD T1042RDB T4160QDS_SECURE_BOOT T1040RDB_SDCARD > T2081QDS_SRIO_PCIE_BOOT T2080RDB_SECURE_BOOT B4860QDS_SECURE_BOOT > T1040QDS T1042D4RDB B4860QDS_NAND T1040QDS_DDR4 T2080QDS_SECURE_BOOT > T2080RDB_SPIFLASH T4240QDS_SDCARD T1024QDS_DDR4 T1040D4RDB_SDCARD > T1040D4RDB_SPIFLASH T1024QDS_DDR4_SECURE_BOOT T2080QDS_NAND > controlcenterd_36BIT_SDCARD_DEVELOP T2080QDS_SRIO_PCIE_BOOT > UCP1020_SPIFLASH T1040D4RDB_NAND T4160QDS T4160RDB T1024QDS_SECURE_BOOT > B4860QDS_SPIFLASH T1040RDB_SPIFLASH T1024RDB T4240QDS_NAND B4420QDS_NAND > T1040D4RDB_SECURE_BOOT T2080RDB_SRIO_PCIE_BOOT T1024RDB_SECURE_BOOT > T1024QDS_SDCARD T1042D4RDB_SPIFLASH T1042RDB_PI_NAND_SECURE_BOOT > T1042D4RDB_SDCARD T2081QDS_SDCARD T1024RDB_SDCARD T1042RDB_PI > B4420QDS_SPIFLASH > w+(T4240RDB,T1024RDB_SPIFLASH,T2080RDB_SECURE_BOOT,T2080QDS_SPIFLASH,B4860QDS_SECURE_BOOT,B4860QDS_SRIO_PCIE_BOOT,T1042RDB_PI_SPIFLASH,B4860QDS,T1024QDS_SPIFLASH,B4420QDS,controlcenterd_36BIT_SDCARD,T2081QDS,T2080QDS,T4240QDS,T1040D4RDB,T4240RDB_SDCARD,T2080RDB_SDCARD,T1024QDS_NAND,T4240QDS_SRIO_PCIE_BOOT,T1024RDB_NAND,T2081QDS_SPIFLASH,T1040QDS_SECURE_BOOT,UCP1020,T4160QDS_NAND,T1042D4RDB_SECURE_BOOT,T1042RDB_SECURE_BOOT,T2080RDB,T4240QDS_SECURE_BOOT,T2081QDS_SRIO_PCIE_BOOT,T1024QDS,T1040RDB,T1042RDB_PI_NAND,T2080RDB_NAND,T1042RDB_PI_SDCARD,T2081QDS_NAND,T4160QDS_SDCARD,T2080QDS_SDCARD,T1042RDB,T4160QDS_SECURE_BOOT,T1040RDB_SDCARD,T1040D4RDB_SPIFLASH,T1040QDS,T1042D4RDB,B4860QDS_NAND,T1040QDS_DDR4,T2080QDS_SECURE_BOOT,T2080RDB_SPIFLASH,T4240QDS_SDCARD,T1024QDS_DDR4,T1040D4RDB_SDCARD,T1024QDS_DDR4_SECURE_BOOT,T2080QDS_NAND,controlcenterd_36BIT_SDCARD_DEVELOP,T2080QDS_SRIO_PCIE_BOOT,UCP1020_SPIFLASH,T1040D4RDB_NAND,T4160QDS,T4160RDB,T1024QDS_SECURE_BOOT,B4860QDS_SPIFLASH,T1040RDB_SPIFLASH,T1024RDB,T4240QDS_NAND,B4420QDS_NAND,T1040D4RDB_SECURE_BOOT,T2080RDB_SRIO_PCIE_BOOT,T1024RDB_SECURE_BOOT,T1024QDS_SDCARD,T1042D4RDB_SPIFLASH,T1042RDB_PI_NAND_SECURE_BOOT,T1040RDB_SECURE_BOOT,T1042D4RDB_NAND,T1042D4RDB_SDCARD,T2081QDS_SDCARD,T1040RDB_NAND,T1024RDB_SDCARD,B4420QDS_SPIFLASH,T1042RDB_PI) > ../drivers/mtd/spi/spi_flash.c: In function 'spi_flash_scan': >
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On 10/30/2016 10:47 AM, Jagan Teki wrote: > INFO macro make flash table entries more adjustable like > adding new flash_info attributes, update ID length bytes > and so on and more over it will sync to Linux way of defining > flash_info attributes. > > - Add JEDEC_ID > - Add JEDEC_EXT macro > - Add JEDEC_MFR > - spi_flash_params => spi_flash_info > - params => info > > Cc: Simon Glass> Cc: Bin Meng > Cc: York Sun > Cc: Vignesh R > Cc: Mugunthan V N > Cc: Michal Simek > Cc: Siva Durga Prasad Paladugu > Signed-off-by: Jagan Teki > --- > drivers/mtd/spi/sandbox.c | 10 +- > drivers/mtd/spi/sf_internal.h | 26 +++-- > drivers/mtd/spi/sf_params.c | 217 > ++ > drivers/mtd/spi/spi_flash.c | 119 --- > include/linux/err.h | 5 + > 5 files changed, 205 insertions(+), 172 deletions(-) > I got compiling warning on the first patch (tested on top of master branch) 02: sf: Adopt flash table INFO macro from Linux powerpc: + T1024RDB_SPIFLASH T2080QDS_SPIFLASH T1040RDB_NAND B4860QDS_SRIO_PCIE_BOOT T1042RDB_PI_SPIFLASH B4860QDS T1040RDB_SECURE_BOOT T1024QDS_SPIFLASH B4420QDS controlcenterd_36BIT_SDCARD T2081QDS T2080QDS T4240QDS T1040D4RDB T4240RDB_SDCARD T2080RDB_SDCARD T1024QDS_NAND T4240QDS_SRIO_PCIE_BOOT T1024RDB_NAND T2081QDS_SPIFLASH T1040QDS_SECURE_BOOT UCP1020 T4240RDB T4160QDS_NAND T1042D4RDB_SECURE_BOOT T1042RDB_SECURE_BOOT T2080RDB T4240QDS_SECURE_BOOT T1024QDS T1040RDB T1042RDB_PI_NAND T2080RDB_NAND T1042RDB_PI_SDCARD T1042D4RDB_NAND T2081QDS_NAND T4160QDS_SDCARD T2080QDS_SDCARD T1042RDB T4160QDS_SECURE_BOOT T1040RDB_SDCARD T2081QDS_SRIO_PCIE_BOOT T2080RDB_SECURE_BOOT B4860QDS_SECURE_BOOT T1040QDS T1042D4RDB B4860QDS_NAND T1040QDS_DDR4 T2080QDS_SECURE_BOOT T2080RDB_SPIFLASH T4240QDS_SDCARD T1024QDS_DDR4 T1040D4RDB_SDCARD T1040D4RDB_SPIFLASH T1024QDS_DDR4_SECURE_BOOT T2080QDS_NAND controlcenterd_36BIT_SDCARD_DEVELOP T2080QDS_SRIO_PCIE_BOOT UCP1020_SPIFLASH T1040D4RDB_NAND T4160QDS T4160RDB T1024QDS_SECURE_BOOT B4860QDS_SPIFLASH T1040RDB_SPIFLASH T1024RDB T4240QDS_NAND B4420QDS_NAND T1040D4RDB_SECURE_BOOT T2080RDB_SRIO_PCIE_BOOT T1024RDB_SECURE_BOOT T1024QDS_SDCARD T1042D4RDB_SPIFLASH T1042RDB_PI_NAND_SECURE_BOOT T1042D4RDB_SDCARD T2081QDS_SDCARD T1024RDB_SDCARD T1042RDB_PI B4420QDS_SPIFLASH w+(T4240RDB,T1024RDB_SPIFLASH,T2080RDB_SECURE_BOOT,T2080QDS_SPIFLASH,B4860QDS_SECURE_BOOT,B4860QDS_SRIO_PCIE_BOOT,T1042RDB_PI_SPIFLASH,B4860QDS,T1024QDS_SPIFLASH,B4420QDS,controlcenterd_36BIT_SDCARD,T2081QDS,T2080QDS,T4240QDS,T1040D4RDB,T4240RDB_SDCARD,T2080RDB_SDCARD,T1024QDS_NAND,T4240QDS_SRIO_PCIE_BOOT,T1024RDB_NAND,T2081QDS_SPIFLASH,T1040QDS_SECURE_BOOT,UCP1020,T4160QDS_NAND,T1042D4RDB_SECURE_BOOT,T1042RDB_SECURE_BOOT,T2080RDB,T4240QDS_SECURE_BOOT,T2081QDS_SRIO_PCIE_BOOT,T1024QDS,T1040RDB,T1042RDB_PI_NAND,T2080RDB_NAND,T1042RDB_PI_SDCARD,T2081QDS_NAND,T4160QDS_SDCARD,T2080QDS_SDCARD,T1042RDB,T4160QDS_SECURE_BOOT,T1040RDB_SDCARD,T1040D4RDB_SPIFLASH,T1040QDS,T1042D4RDB,B4860QDS_NAND,T1040QDS_DDR4,T2080QDS_SECURE_BOOT,T2080RDB_SPIFLASH,T4240QDS_SDCARD,T1024QDS_DDR4,T1040D4RDB_SDCARD,T1024QDS_DDR4_SECURE_BOOT,T2080QDS_NAND,controlcenterd_36BIT_SDCARD_DEVELOP,T2080QDS_SRIO_PCIE_BOOT,UCP1020_SPIFLASH,T1040D4RDB_NAND,T4160QDS,T4160RDB,T1024QDS_SECURE_BOOT,B4860QDS_SPIFLASH,T1040RDB_SPIF LASH,T1024RDB,T4240QDS_NAND,B4420QDS_NAND,T1040D4RDB_SECURE_BOOT,T2080RDB_SRIO_PCIE_BOOT,T1024RDB_SECURE_BOOT,T1024QDS_SDCARD,T1042D4RDB_SPIFLASH,T1042RDB_PI_NAND_SECURE_BOOT,T1040RDB_SECURE_BOOT,T1042D4RDB_NAND,T1042D4RDB_SDCARD,T2081QDS_SDCARD,T1040RDB_NAND,T1024RDB_SDCARD,B4420QDS_SPIFLASH,T1042RDB_PI) ../drivers/mtd/spi/spi_flash.c: In function 'spi_flash_scan': w+(T4240RDB,T1024RDB_SPIFLASH,T2080RDB_SECURE_BOOT,T2080QDS_SPIFLASH,B4860QDS_SECURE_BOOT,B4860QDS_SRIO_PCIE_BOOT,T1042RDB_PI_SPIFLASH,B4860QDS,T1024QDS_SPIFLASH,B4420QDS,controlcenterd_36BIT_SDCARD,T2081QDS,T2080QDS,T4240QDS,T1040D4RDB,T4240RDB_SDCARD,T2080RDB_SDCARD,T1024QDS_NAND,T4240QDS_SRIO_PCIE_BOOT,T1024RDB_NAND,T2081QDS_SPIFLASH,T1040QDS_SECURE_BOOT,UCP1020,T4160QDS_NAND,T1042D4RDB_SECURE_BOOT,T1042RDB_SECURE_BOOT,T2080RDB,T4240QDS_SECURE_BOOT,T2081QDS_SRIO_PCIE_BOOT,T1024QDS,T1040RDB,T1042RDB_PI_NAND,T2080RDB_NAND,T1042RDB_PI_SDCARD,T2081QDS_NAND,T4160QDS_SDCARD,T2080QDS_SDCARD,T1042RDB,T4160QDS_SECURE_BOOT,T1040RDB_SDCARD,T1040D4RDB_SPIFLASH,T1040QDS,T1042D4RDB,B4860QDS_NAND,T1040QDS_DDR4,T2080QDS_SECURE_BOOT,T2080RDB_SPIFLASH,T4240QDS_SDCARD,T1024QDS_DDR4,T1040D4RDB_SDCARD,T1024QDS_DDR4_SECURE_BOOT,T2080QDS_NAND,controlcenterd_36BIT_SDCARD_DEVELOP,T2080QDS_SRIO_PCIE_BOOT,UCP1020_SPIFLASH,T1040D4RDB_NAND,T4160QDS,T4160RDB,T1024QDS_SECURE_BOOT,B4860QDS_SPIFLASH,T1040RDB_SPIF
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Mon, Oct 31, 2016 at 3:13 PM, Vignesh Rwrote: > > > On Monday 31 October 2016 03:05 PM, Jagan Teki wrote: >> On Mon, Oct 31, 2016 at 3:02 PM, Vignesh R wrote: >>> >>> >>> On Monday 31 October 2016 02:50 PM, Jagan Teki wrote: On Mon, Oct 31, 2016 at 2:24 PM, Jagan Teki wrote: > On Mon, Oct 31, 2016 at 8:48 AM, Vignesh R wrote: >> >> >> On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: >> [...] >>> + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, >>> RD_FULL | WR_QPP) }, >>> + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, >>> RD_FULL | WR_QPP) }, >>> + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, >>> RD_FULL | WR_QPP) }, >> >> Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? >> Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails >> due as erasesizes are different. > > I think this seems to be an existing issue, even before these changes. > after this [1] I will prepare a patch to use INFO6 for S25FS512S. > > [1] > http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=13c17cad45ad9040fd0f6ebadf76554eb6353381 Try u-boot-spi/next? >>> >>> Yes, that works. sf probe correctly detects S25FL512S_256K. Thanks! >> >> Now it's s25fl512s_256k changed to lower-case hope you detect the same? >> > > Yes here is the log : > > U-Boot 2016.11-rc2-00220-g53b750eed351 (Oct 31 2016 - 14:57:11 +0530) > > CPU: 66AK2Gx SR1.0 > Model: Texas Instruments Keystone 2 Galileo EVM > I2C: ready > DRAM: > Clear entire DDR3 memory to enable ECC > 2 GiB > MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1 > reading uboot.env > > ** Unable to read "uboot.env" from mmc0:1 ** > Using default environment > > Net: > Warning: netcp@400 using MAC address from ROM > eth0: netcp@400 > Hit any key to stop autoboot: 0 > => sf probe 4:0 > SF: Detected s25fl512s_256k with page size 512 Bytes, erase size 256 > KiB, total 64 MiB > => Perfect, 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 http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Monday 31 October 2016 03:05 PM, Jagan Teki wrote: > On Mon, Oct 31, 2016 at 3:02 PM, Vignesh Rwrote: >> >> >> On Monday 31 October 2016 02:50 PM, Jagan Teki wrote: >>> On Mon, Oct 31, 2016 at 2:24 PM, Jagan Teki wrote: On Mon, Oct 31, 2016 at 8:48 AM, Vignesh R wrote: > > > On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: > [...] >> + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, >> RD_FULL | WR_QPP) }, >> + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, >> RD_FULL | WR_QPP) }, >> + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, >> RD_FULL | WR_QPP) }, >> + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, >> RD_FULL | WR_QPP) }, >> + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, >> RD_FULL | WR_QPP) }, >> + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, >> RD_FULL | WR_QPP) }, >> + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, >> RD_FULL | WR_QPP) }, >> + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, >> RD_FULL | WR_QPP) }, >> + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, >> RD_FULL | WR_QPP) }, > > Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? > Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails > due as erasesizes are different. I think this seems to be an existing issue, even before these changes. after this [1] I will prepare a patch to use INFO6 for S25FS512S. [1] http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=13c17cad45ad9040fd0f6ebadf76554eb6353381 >>> >>> Try u-boot-spi/next? >>> >> >> Yes, that works. sf probe correctly detects S25FL512S_256K. Thanks! > > Now it's s25fl512s_256k changed to lower-case hope you detect the same? > Yes here is the log : U-Boot 2016.11-rc2-00220-g53b750eed351 (Oct 31 2016 - 14:57:11 +0530) CPU: 66AK2Gx SR1.0 Model: Texas Instruments Keystone 2 Galileo EVM I2C: ready DRAM: Clear entire DDR3 memory to enable ECC 2 GiB MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1 reading uboot.env ** Unable to read "uboot.env" from mmc0:1 ** Using default environment Net: Warning: netcp@400 using MAC address from ROM eth0: netcp@400 Hit any key to stop autoboot: 0 => sf probe 4:0 SF: Detected s25fl512s_256k with page size 512 Bytes, erase size 256 KiB, total 64 MiB => -- Regards Vignesh ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Mon, Oct 31, 2016 at 3:02 PM, Vignesh Rwrote: > > > On Monday 31 October 2016 02:50 PM, Jagan Teki wrote: >> On Mon, Oct 31, 2016 at 2:24 PM, Jagan Teki wrote: >>> On Mon, Oct 31, 2016 at 8:48 AM, Vignesh R wrote: On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: [...] > + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, > RD_FULL | WR_QPP) }, > + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, > RD_FULL | WR_QPP) }, > + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, > RD_FULL | WR_QPP) }, > + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, > RD_FULL | WR_QPP) }, > + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, > RD_FULL | WR_QPP) }, > + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, > RD_FULL | WR_QPP) }, > + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, > RD_FULL | WR_QPP) }, > + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, > RD_FULL | WR_QPP) }, > + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, > RD_FULL | WR_QPP) }, Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails due as erasesizes are different. >>> >>> I think this seems to be an existing issue, even before these changes. >>> after this [1] I will prepare a patch to use INFO6 for S25FS512S. >>> >>> [1] >>> http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=13c17cad45ad9040fd0f6ebadf76554eb6353381 >> >> Try u-boot-spi/next? >> > > Yes, that works. sf probe correctly detects S25FL512S_256K. Thanks! Now it's s25fl512s_256k changed to lower-case hope you detect the same? 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 http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Monday 31 October 2016 02:50 PM, Jagan Teki wrote: > On Mon, Oct 31, 2016 at 2:24 PM, Jagan Tekiwrote: >> On Mon, Oct 31, 2016 at 8:48 AM, Vignesh R wrote: >>> >>> >>> On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: >>> [...] + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, RD_FULL | WR_QPP) }, + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, RD_FULL | WR_QPP) }, + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, RD_FULL | WR_QPP) }, + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, RD_FULL | WR_QPP) }, + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, RD_FULL | WR_QPP) }, + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, RD_FULL | WR_QPP) }, + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, RD_FULL | WR_QPP) }, + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, RD_FULL | WR_QPP) }, + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, RD_FULL | WR_QPP) }, >>> >>> Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? >>> Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails >>> due as erasesizes are different. >> >> I think this seems to be an existing issue, even before these changes. >> after this [1] I will prepare a patch to use INFO6 for S25FS512S. >> >> [1] >> http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=13c17cad45ad9040fd0f6ebadf76554eb6353381 > > Try u-boot-spi/next? > Yes, that works. sf probe correctly detects S25FL512S_256K. Thanks! -- Regards Vignesh ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Mon, Oct 31, 2016 at 2:24 PM, Jagan Tekiwrote: > On Mon, Oct 31, 2016 at 8:48 AM, Vignesh R wrote: >> >> >> On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: >> [...] >>> + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, RD_FULL >>> | WR_QPP) }, >>> + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, RD_FULL >>> | WR_QPP) }, >>> + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, RD_FULL >>> | WR_QPP) }, >> >> Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? >> Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails >> due as erasesizes are different. > > I think this seems to be an existing issue, even before these changes. > after this [1] I will prepare a patch to use INFO6 for S25FS512S. > > [1] > http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=13c17cad45ad9040fd0f6ebadf76554eb6353381 Try u-boot-spi/next? 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 http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Mon, Oct 31, 2016 at 8:48 AM, Vignesh Rwrote: > > > On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: > [...] >> + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, RD_FULL | >> WR_QPP) }, >> + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, RD_FULL | >> WR_QPP) }, >> + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, RD_FULL | >> WR_QPP) }, >> + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, RD_FULL | >> WR_QPP) }, >> + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, RD_FULL | >> WR_QPP) }, >> + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, RD_FULL | >> WR_QPP) }, >> + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, RD_FULL | >> WR_QPP) }, >> + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, RD_FULL | >> WR_QPP) }, >> + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, RD_FULL | >> WR_QPP) }, > > Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? > Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails > due as erasesizes are different. I think this seems to be an existing issue, even before these changes. after this [1] I will prepare a patch to use INFO6 for S25FS512S. [1] http://git.denx.de/?p=u-boot-spi.git;a=commitdiff;h=13c17cad45ad9040fd0f6ebadf76554eb6353381 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 http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
On Sunday 30 October 2016 11:16 PM, Jagan Teki wrote: [...] > + {"S25FL128P_64K", INFO(0x012018, 0x0301, 64 * 1024, 256, RD_FULL | > WR_QPP) }, > + {"S25FL032P", INFO(0x010215, 0x4d00, 64 * 1024,64, RD_FULL | > WR_QPP) }, > + {"S25FL064P", INFO(0x010216, 0x4d00, 64 * 1024, 128, RD_FULL | > WR_QPP) }, > + {"S25FL128S_256K", INFO(0x012018, 0x4d00, 256 * 1024,64, RD_FULL | > WR_QPP) }, > + {"S25FL128S_64K", INFO(0x012018, 0x4d01, 64 * 1024, 256, RD_FULL | > WR_QPP) }, > + {"S25FL256S_256K", INFO(0x010219, 0x4d00, 256 * 1024, 128, RD_FULL | > WR_QPP) }, > + {"S25FL256S_64K", INFO(0x010219, 0x4d01, 64 * 1024, 512, RD_FULL | > WR_QPP) }, > + {"S25FS512S", INFO(0x010220, 0x4D00, 128 * 1024, 512, RD_FULL | > WR_QPP) }, > + {"S25FL512S_256K", INFO(0x010220, 0x4d00, 256 * 1024, 256, RD_FULL | > WR_QPP) }, Could you change above S25FS512S and S25FL512S_256K to use INFO6 macro? Right now, S25FL512S_256K gets detected as S25FS512S and sf update fails due as erasesizes are different. -- Regards Vignesh ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH v5 01/21] sf: Adopt flash table INFO macro from Linux
INFO macro make flash table entries more adjustable like adding new flash_info attributes, update ID length bytes and so on and more over it will sync to Linux way of defining flash_info attributes. - Add JEDEC_ID - Add JEDEC_EXT macro - Add JEDEC_MFR - spi_flash_params => spi_flash_info - params => info Cc: Simon GlassCc: Bin Meng Cc: York Sun Cc: Vignesh R Cc: Mugunthan V N Cc: Michal Simek Cc: Siva Durga Prasad Paladugu Signed-off-by: Jagan Teki --- drivers/mtd/spi/sandbox.c | 10 +- drivers/mtd/spi/sf_internal.h | 26 +++-- drivers/mtd/spi/sf_params.c | 217 ++ drivers/mtd/spi/spi_flash.c | 119 --- include/linux/err.h | 5 + 5 files changed, 205 insertions(+), 172 deletions(-) diff --git a/drivers/mtd/spi/sandbox.c b/drivers/mtd/spi/sandbox.c index f59134f..d68ee4a 100644 --- a/drivers/mtd/spi/sandbox.c +++ b/drivers/mtd/spi/sandbox.c @@ -88,7 +88,7 @@ struct sandbox_spi_flash { /* The current flash status (see STAT_XXX defines above) */ u16 status; /* Data describing the flash we're emulating */ - const struct spi_flash_params *data; + const struct spi_flash_info *data; /* The file on disk to serv up data from */ int fd; }; @@ -112,7 +112,7 @@ static int sandbox_sf_probe(struct udevice *dev) struct sandbox_spi_flash *sbsf = dev_get_priv(dev); const char *file; size_t len, idname_len; - const struct spi_flash_params *data; + const struct spi_flash_info *data; struct sandbox_spi_flash_plat_data *pdata = dev_get_platdata(dev); struct sandbox_state *state = state_get_current(); struct udevice *bus = dev->parent; @@ -168,7 +168,7 @@ static int sandbox_sf_probe(struct udevice *dev) } debug("%s: device='%s'\n", __func__, spec); - for (data = spi_flash_params_table; data->name; data++) { + for (data = spi_flash_ids; data->name; data++) { len = strlen(data->name); if (idname_len != len) continue; @@ -359,7 +359,9 @@ static int sandbox_sf_xfer(struct udevice *dev, unsigned int bitlen, debug(" id: off:%u tx:", sbsf->off); if (sbsf->off < IDCODE_LEN) { /* Extract correct byte from ID 0x00aabbcc */ - id = sbsf->data->jedec >> + id = sbsf->data)->id[0]) << 16) | + (((sbsf->data)->id[1]) << 8 | + ((sbsf->data)->id[2]))) >> (8 * (IDCODE_LEN - 1 - sbsf->off)); } else { id = 0; diff --git a/drivers/mtd/spi/sf_internal.h b/drivers/mtd/spi/sf_internal.h index cde4cfb..a9455ac 100644 --- a/drivers/mtd/spi/sf_internal.h +++ b/drivers/mtd/spi/sf_internal.h @@ -103,24 +103,36 @@ int sst_write_bp(struct spi_flash *flash, u32 offset, size_t len, #define CMD_SPANSION_RDAR 0x65 /* Read any device register */ #define CMD_SPANSION_WRAR 0x71 /* Write any device register */ #endif + +#define JEDEC_MFR(info)((info)->id[0]) +#define JEDEC_ID(info) (((info)->id[1]) << 8 | ((info)->id[2])) +#define JEDEC_EXT(info)(((info)->id[3]) << 8 | ((info)->id[4])) + /** - * struct spi_flash_params - SPI/QSPI flash device params structure + * struct spi_flash_info - SPI/QSPI flash device params structure * * @name: Device name ([MANUFLETTER][DEVTYPE][DENSITY][EXTRAINFO]) - * @jedec: Device jedec ID (0x[1byte_manuf_id][2byte_dev_id]) - * @ext_jedec: Device ext_jedec ID * @sector_size: Isn't necessarily a sector size from vendor, * the size listed here is what works with CMD_ERASE_64K * @nr_sectors:No.of sectors on this device * @flags: Important param, for flash specific behaviour */ -struct spi_flash_params { +struct spi_flash_info { const char *name; - u32 jedec; - u16 ext_jedec; + + /* +* This array stores the ID bytes. +* The first three bytes are the JEDIC ID. +* JEDEC ID zero means "no ID" (mostly older chips). +*/ + u8 id[5]; + u8 id_len; + u32 sector_size; u32 nr_sectors; + u16 page_size; + u16 flags; #define SECT_4KBIT(0) #define E_FSR BIT(1) @@ -133,7 +145,7 @@ struct spi_flash_params { #define RD_FULL(RD_QUAD | RD_DUAL | RD_QUADIO | RD_DUALIO) }; -extern const struct spi_flash_params spi_flash_params_table[]; +extern const struct