[U-Boot] dfu: dfu_sf: Use the erase sector size for erase operations

Tom Rini trini at konsulko.com
Tue Oct 20 02:06:42 CEST 2015


On Tue, Sep 22, 2015 at 12:55:00AM -0300, Fabio Estevam wrote:

> From: Fabio Estevam <fabio.estevam at freescale.com>
> 
> SPI NOR flashes need to erase the entire sector size and we cannot pass
> any arbitrary length for the erase operation.
> 
> To illustrate the problem:
> 
> Copying data from PC to DFU device
> Download    [=========================] 100%       478208 bytes
> Download done.
> state(7) = dfuMANIFEST, status(0) = No error condition is present
> state(10) = dfuERROR, status(14) = Something went wrong, but the
> device does not know what it was
> Done!
> 
> In this case, the binary has 478208 bytes and the M25P32 SPI NOR
> has an erase sector of 64kB.
> 
> 478208  = 7 entire sectors of 64kiB + 19456 bytes.
> 
> Erasing the first seven 64 kB sectors works fine, but when trying
> to erase the remainding 19456 causes problem and the board hangs.
> 
> Fix the issue by always erasing with the erase sector size.
> 
> Signed-off-by: Fabio Estevam <fabio.estevam at freescale.com>
> Acked-by: Lukasz Majewski <l.majewski at samsung.com>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20151019/e547c5e3/attachment.sig>


More information about the U-Boot mailing list