[U-Boot] Please pull u-boot-cfi-flash/master
Wolfgang Denk
wd at denx.de
Fri Apr 12 11:35:21 CEST 2013
Dear Tom, Stfan, Aaron,
In message <20130405162807.GH32357 at bill-the-cat> you wrote:
>
> > please pull the updated cfi-flash repository with the build warning fix:
...
> > aaron.williams at caviumnetworks.com (1):
> > mtd: cfi_flash: Fix CFI flash driver for 8-bit bus support
Hereby I ask to revert the "mtd: cfi_flash: Fix CFI flash driver for
8-bit bus support" patch,. i. e. Commit 239cb9d.
It breaks the CFI driver on a board here. The board has two banks of
AMD NOR flash, mapped at F800.0000 and FC00.0000, resp. With current
code, the flash is not detected. Here is the debug log:
flash detect cfi
fwc addr f8000000 cmd f0 f0 8bit x 8 bit
fwc addr f8000000 cmd ff ff 8bit x 8 bit
fwc addr f80000aa cmd 98 98 8bit x 8 bit
is= cmd 51(Q) addr f8000020 is= 31 51
fwc addr f8000000 cmd f0 f0 8bit x 8 bit
fwc addr f8000000 cmd ff ff 8bit x 8 bit
fwc addr f8000555 cmd 98 98 8bit x 8 bit
is= cmd 51(Q) addr f8000020 is= 31 51
fwc addr f8000000 cmd f0 f0f0 16bit x 8 bit
fwc addr f8000000 cmd ff ffff 16bit x 8 bit
fwc addr f8000154 cmd 98 9898 16bit x 8 bit
is= cmd 51(Q) addr f8000040 is= 0051 5151
fwc addr f8000000 cmd f0 f0f0 16bit x 8 bit
fwc addr f8000000 cmd ff ffff 16bit x 8 bit
fwc addr f8000aaa cmd 98 9898 16bit x 8 bit
is= cmd 51(Q) addr f8000040 is= 0000 5151
fwc addr f8000000 cmd f0 00f0 16bit x 16 bit
fwc addr f8000000 cmd ff 00ff 16bit x 16 bit
fwc addr f80000aa cmd 98 0098 16bit x 16 bit
is= cmd 51(Q) addr f8000020 is= 3137 0051
fwc addr f8000000 cmd f0 00f0 16bit x 16 bit
fwc addr f8000000 cmd ff 00ff 16bit x 16 bit
fwc addr f8000554 cmd 98 0098 16bit x 16 bit
is= cmd 51(Q) addr f8000020 is= 0000 0051
fwc addr f8000000 cmd f0 f0f0f0f0 32bit x 8 bit
fwc addr f8000000 cmd ff ffffffff 32bit x 8 bit
fwc addr f80002a8 cmd 98 98989898 32bit x 8 bit
is= cmd 51(Q) addr f8000080 is= 00000004 51515151
fwc addr f8000000 cmd f0 f0f0f0f0 32bit x 8 bit
fwc addr f8000000 cmd ff ffffffff 32bit x 8 bit
fwc addr f8001550 cmd 98 98989898 32bit x 8 bit
is= cmd 51(Q) addr f8000080 is= 00000004 51515151
fwc addr f8000000 cmd f0 00f000f0 32bit x 16 bit
fwc addr f8000000 cmd ff 00ff00ff 32bit x 16 bit
fwc addr f8000150 cmd 98 00980098 32bit x 16 bit
is= cmd 51(Q) addr f8000040 is= 00000000 00510051
fwc addr f8000000 cmd f0 00f000f0 32bit x 16 bit
fwc addr f8000000 cmd ff 00ff00ff 32bit x 16 bit
fwc addr f8000aa8 cmd 98 00980098 32bit x 16 bit
is= cmd 51(Q) addr f8000040 is= 00000000 00510051
fwc addr f8000000 cmd f0 000000f0 32bit x 32 bit
fwc addr f8000000 cmd ff 000000ff 32bit x 32 bit
fwc addr f80000a8 cmd 98 00000098 32bit x 32 bit
is= cmd 51(Q) addr f8000020 is= 31373a33 00000051
fwc addr f8000000 cmd f0 000000f0 32bit x 32 bit
fwc addr f8000000 cmd ff 000000ff 32bit x 32 bit
fwc addr f8000550 cmd 98 00000098 32bit x 32 bit
is= cmd 51(Q) addr f8000020 is= 31373a33 00000051
fwrite addr f8000000 cmd f0 f0f0f0f0f0f0f0f0 64 bit x 8 bit
fwrite addr f8000000 cmd ff ffffffffffffffff 64 bit x 8 bit
fwrite addr f8000500 cmd 98 9898989898989898 64 bit x 8 bit
is= cmd 51(Q) addr f8000100 is= ffffffffffffffff 5151515151515151
fwrite addr f8000000 cmd f0 f0f0f0f0f0f0f0f0 64 bit x 8 bit
fwrite addr f8000000 cmd ff ffffffffffffffff 64 bit x 8 bit
fwrite addr f8002a80 cmd 98 9898989898989898 64 bit x 8 bit
is= cmd 51(Q) addr f8000100 is= ffffffffffffffff 5151515151515151
fwrite addr f8000000 cmd f0 00f000f000f000f0 64 bit x 16 bit
fwrite addr f8000000 cmd ff 00ff00ff00ff00ff 64 bit x 16 bit
fwrite addr f8000280 cmd 98 0098009800980098 64 bit x 16 bit
is= cmd 51(Q) addr f8000080 is= 00000004ffffffff 0051005100510051
fwrite addr f8000000 cmd f0 00f000f000f000f0 64 bit x 16 bit
fwrite addr f8000000 cmd ff 00ff00ff00ff00ff 64 bit x 16 bit
fwrite addr f8001500 cmd 98 0098009800980098 64 bit x 16 bit
is= cmd 51(Q) addr f8000080 is= 00000004ffffffff 0051005100510051
fwrite addr f8000000 cmd f0 000000f0000000f0 64 bit x 32 bit
fwrite addr f8000000 cmd ff 000000ff000000ff 64 bit x 32 bit
fwrite addr f8000100 cmd 98 0000009800000098 64 bit x 32 bit
is= cmd 51(Q) addr f8000000 is= 27051956552d426f 0000005100000051
fwrite addr f8000000 cmd f0 000000f0000000f0 64 bit x 32 bit
fwrite addr f8000000 cmd ff 000000ff000000ff 64 bit x 32 bit
fwrite addr f8000a80 cmd 98 0000009800000098 64 bit x 32 bit
is= cmd 51(Q) addr f8000000 is= 27051956552d426f 0000005100000051
fwrite addr f8000000 cmd f0 00000000000000f0 64 bit x 64 bit
fwrite addr f8000000 cmd ff 00000000000000ff 64 bit x 64 bit
fwrite addr f8000080 cmd 98 0000000000000098 64 bit x 64 bit
is= cmd 51(Q) addr f8000000 is= 27051956552d426f 0000000000000051
fwrite addr f8000000 cmd f0 00000000000000f0 64 bit x 64 bit
fwrite addr f8000000 cmd ff 00000000000000ff 64 bit x 64 bit
fwrite addr f8000500 cmd 98 0000000000000098 64 bit x 64 bit
is= cmd 51(Q) addr f8000000 is= 27051956552d426f 0000000000000051
not found
flash detect cfi
fwc addr fc000000 cmd f0 f0 8bit x 8 bit
fwc addr fc000000 cmd ff ff 8bit x 8 bit
fwc addr fc0000aa cmd 98 98 8bit x 8 bit
is= cmd 51(Q) addr fc000020 is= 31 51
fwc addr fc000000 cmd f0 f0 8bit x 8 bit
fwc addr fc000000 cmd ff ff 8bit x 8 bit
fwc addr fc000555 cmd 98 98 8bit x 8 bit
is= cmd 51(Q) addr fc000020 is= 31 51
fwc addr fc000000 cmd f0 f0f0 16bit x 8 bit
fwc addr fc000000 cmd ff ffff 16bit x 8 bit
fwc addr fc000154 cmd 98 9898 16bit x 8 bit
is= cmd 51(Q) addr fc000040 is= 0051 5151
fwc addr fc000000 cmd f0 f0f0 16bit x 8 bit
fwc addr fc000000 cmd ff ffff 16bit x 8 bit
fwc addr fc000aaa cmd 98 9898 16bit x 8 bit
is= cmd 51(Q) addr fc000040 is= 0000 5151
fwc addr fc000000 cmd f0 00f0 16bit x 16 bit
fwc addr fc000000 cmd ff 00ff 16bit x 16 bit
fwc addr fc0000aa cmd 98 0098 16bit x 16 bit
is= cmd 51(Q) addr fc000020 is= 3137 0051
fwc addr fc000000 cmd f0 00f0 16bit x 16 bit
fwc addr fc000000 cmd ff 00ff 16bit x 16 bit
fwc addr fc000554 cmd 98 0098 16bit x 16 bit
is= cmd 51(Q) addr fc000020 is= 0000 0051
fwc addr fc000000 cmd f0 f0f0f0f0 32bit x 8 bit
fwc addr fc000000 cmd ff ffffffff 32bit x 8 bit
fwc addr fc0002a8 cmd 98 98989898 32bit x 8 bit
is= cmd 51(Q) addr fc000080 is= 00000000 51515151
fwc addr fc000000 cmd f0 f0f0f0f0 32bit x 8 bit
fwc addr fc000000 cmd ff ffffffff 32bit x 8 bit
fwc addr fc001550 cmd 98 98989898 32bit x 8 bit
is= cmd 51(Q) addr fc000080 is= 00000000 51515151
fwc addr fc000000 cmd f0 00f000f0 32bit x 16 bit
fwc addr fc000000 cmd ff 00ff00ff 32bit x 16 bit
fwc addr fc000150 cmd 98 00980098 32bit x 16 bit
is= cmd 51(Q) addr fc000040 is= 00000000 00510051
fwc addr fc000000 cmd f0 00f000f0 32bit x 16 bit
fwc addr fc000000 cmd ff 00ff00ff 32bit x 16 bit
fwc addr fc000aa8 cmd 98 00980098 32bit x 16 bit
is= cmd 51(Q) addr fc000040 is= 00000000 00510051
fwc addr fc000000 cmd f0 000000f0 32bit x 32 bit
fwc addr fc000000 cmd ff 000000ff 32bit x 32 bit
fwc addr fc0000a8 cmd 98 00000098 32bit x 32 bit
is= cmd 51(Q) addr fc000020 is= 31373a33 00000051
fwc addr fc000000 cmd f0 000000f0 32bit x 32 bit
fwc addr fc000000 cmd ff 000000ff 32bit x 32 bit
fwc addr fc000550 cmd 98 00000098 32bit x 32 bit
is= cmd 51(Q) addr fc000020 is= 31373a33 00000051
fwrite addr fc000000 cmd f0 f0f0f0f0f0f0f0f0 64 bit x 8 bit
fwrite addr fc000000 cmd ff ffffffffffffffff 64 bit x 8 bit
fwrite addr fc000500 cmd 98 9898989898989898 64 bit x 8 bit
is= cmd 51(Q) addr fc000100 is= 380000003c20ffff 5151515151515151
fwrite addr fc000000 cmd f0 f0f0f0f0f0f0f0f0 64 bit x 8 bit
fwrite addr fc000000 cmd ff ffffffffffffffff 64 bit x 8 bit
fwrite addr fc002a80 cmd 98 9898989898989898 64 bit x 8 bit
is= cmd 51(Q) addr fc000100 is= 380000003c20ffff 5151515151515151
fwrite addr fc000000 cmd f0 00f000f000f000f0 64 bit x 16 bit
fwrite addr fc000000 cmd ff 00ff00ff00ff00ff 64 bit x 16 bit
fwrite addr fc000280 cmd 98 0098009800980098 64 bit x 16 bit
is= cmd 51(Q) addr fc000080 is= 0000000000000000 0051005100510051
fwrite addr fc000000 cmd f0 00f000f000f000f0 64 bit x 16 bit
fwrite addr fc000000 cmd ff 00ff00ff00ff00ff 64 bit x 16 bit
fwrite addr fc001500 cmd 98 0098009800980098 64 bit x 16 bit
is= cmd 51(Q) addr fc000080 is= 0000000000000000 0051005100510051
fwrite addr fc000000 cmd f0 000000f0000000f0 64 bit x 32 bit
fwrite addr fc000000 cmd ff 000000ff000000ff 64 bit x 32 bit
fwrite addr fc000100 cmd 98 0000009800000098 64 bit x 32 bit
is= cmd 51(Q) addr fc000000 is= 27051956552d426f 0000005100000051
fwrite addr fc000000 cmd f0 000000f0000000f0 64 bit x 32 bit
fwrite addr fc000000 cmd ff 000000ff000000ff 64 bit x 32 bit
fwrite addr fc000a80 cmd 98 0000009800000098 64 bit x 32 bit
is= cmd 51(Q) addr fc000000 is= 27051956552d426f 0000005100000051
fwrite addr fc000000 cmd f0 00000000000000f0 64 bit x 64 bit
fwrite addr fc000000 cmd ff 00000000000000ff 64 bit x 64 bit
fwrite addr fc000080 cmd 98 0000000000000098 64 bit x 64 bit
is= cmd 51(Q) addr fc000000 is= 27051956552d426f 0000000000000051
fwrite addr fc000000 cmd f0 00000000000000f0 64 bit x 64 bit
fwrite addr fc000000 cmd ff 00000000000000ff 64 bit x 64 bit
fwrite addr fc000500 cmd 98 0000000000000098 64 bit x 64 bit
is= cmd 51(Q) addr fc000000 is= 27051956552d426f 0000000000000051
not found
## cfi_flash.c[2460]
## cfi_flash.c[2462]
*** failed ***
### ERROR ### Please RESET the board ###
After reverting the commit (and no other changes), I get:
...
I2C: ready
DRAM: 128 MiB
Flash: 128 MiB
L2: 256 KB enabled
...
and "flinfo" reports:
=> fli
Bank # 1: CFI conformant flash (32 x 16) Size: 64 MB in 512 Sectors
AMD Standard command set, Manufacturer ID: 0x01, Device ID: 0x227E1201
Erase timeout: 16384 ms, write timeout: 1 ms
Buffer write timeout: 5 ms, buffer size: 32 bytes
Sector Start Addresses:
F8000000 F8020000 E F8040000 E F8060000 E F8080000 E
F80A0000 E F80C0000 E F80E0000 E F8100000 E F8120000 E
...
Bank # 2: CFI conformant flash (32 x 16) Size: 64 MB in 512 Sectors
AMD Standard command set, Manufacturer ID: 0x01, Device ID: 0x227E1201
Erase timeout: 16384 ms, write timeout: 1 ms
Buffer write timeout: 5 ms, buffer size: 32 bytes
Sector Start Addresses:
FC000000 FC020000 FC040000 E FC060000 E FC080000 E
FC0A0000 E FC0C0000 E FC0E0000 E FC100000 E FC120000 E
FC140000 E FC160000 E FC180000 E FC1A0000 E FC1C0000 E
FC1E0000 E FC200000 E FC220000 E FC240000 E FC260000 E
...
I think for the release it is best to revert the patch, to have
working, stable code again, and then analyze the cause of the prolem
and develop a fix.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Lispers are among the best grads of the Sweep-It-Under-Someone-
Else's-Carpet School of Simulated Simplicity. [Was that sufficiently
incendiary? :-)] - Larry Wall in <1992Jan10.201804.11926 at netlabs.com
More information about the U-Boot
mailing list