diff options
author | aaron.williams@caviumnetworks.com <aaron.williams@caviumnetworks.com> | 2013-03-03 16:45:05 +0530 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2013-04-02 14:27:45 +0200 |
commit | 239cb9d904cfa8ab50d840a47b3306189d695c75 (patch) | |
tree | 829d628038a63e13271717a3b7c6ad0144f01b8f /drivers/pci/pci_auto.c | |
parent | 5644369450635fa5c2967bee55b1ac41f6e988d0 (diff) | |
download | u-boot-imx-239cb9d904cfa8ab50d840a47b3306189d695c75.zip u-boot-imx-239cb9d904cfa8ab50d840a47b3306189d695c75.tar.gz u-boot-imx-239cb9d904cfa8ab50d840a47b3306189d695c75.tar.bz2 |
mtd: cfi_flash: Fix CFI flash driver for 8-bit bus support
This commit is based on that patch from aaron.williams@caviumnetworks.com
with same commit title. pulled the same code changes into current u-boot tree.
http://patchwork.ozlabs.org/patch/140863/
http://lists.denx.de/pipermail/u-boot/2011-April/089606.html
This patch corrects the addresses used when working with Spansion/AMD FLASH chips.
Addressing for 8 and 16 bits is almost identical except in the 16-bit case the
LSB of the address is always 0. The confusion arose because the addresses
in the datasheet for 16-bit mode are word addresses but this code assumed it was
byte addresses.
I have only been able to test this on our Octeon boards which use either an 8-bit
or 16-bit bus. I have not tested the case where there's an 8-bit part on a 16-bit
bus.
This patch also adds some delays as suggested by Spansion.
If a part can be both 8 and 16-bits, it forces it to work in 8-bit mode if an
8-bit bus is detected.
Apart from the pulled changes, fixed few minor code cleanups and tested
on 256M29EW, 512M29EW flashes.
Before this fix:
---------------
Bank # 1: CFI conformant flash (8 x 8) Size: 64 MB in 512 Sectors
AMD Standard command set, Manufacturer ID: 0xFF, Device ID: 0xFF
Erase timeout: 4096 ms, write timeout: 2 ms
Buffer write timeout: 5 ms, buffer size: 1024 bytes
After this fix:
--------------
Bank # 1: CFI conformant flash (8 x 8) Size: 64 MB in 512 Sectors
AMD Standard command set, Manufacturer ID: 0x89, Device ID: 0x7E2301
Erase timeout: 4096 ms, write timeout: 2 ms
Buffer write timeout: 5 ms, buffer size: 1024 bytes
Signed-off-by: Aaron Williams <aaron.williams@caviumnetworks.com>
Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Tested-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Diffstat (limited to 'drivers/pci/pci_auto.c')
0 files changed, 0 insertions, 0 deletions