[PATCH] cmd: sf: Support unaligned flash updates with 'sf update'
Simon Glass
sjg at chromium.org
Fri Oct 1 07:03:47 CEST 2021
Hi Frieder,
On Thu, 30 Sept 2021 at 10:20, Frieder Schrempf <frieder at fris.de> wrote:
>
> From: Frieder Schrempf <frieder.schrempf at kontron.de>
>
> Currently 'sf update' supports only offsets that are aligned to the
> erase block size of the serial flash. Unaligned offsets result in
> something like:
>
> => sf update ${kernel_addr_r} 0x400 ${filesize}
> device 0 offset 0x400, size 0x11f758
> SPI flash failed in erase step
<insert motivation for patch here>
>
> In order to support unaligned updates, we simply read the first full
> block and check only the requested part of the block for changes. If
> necessary, the block is erased, the first (unchanged) part of the block
> is written back together with the second part of the block (updated data).
>
> Signed-off-by: Frieder Schrempf <frieder.schrempf at kontron.de>
> ---
> cmd/sf.c | 17 +++++++++++------
> 1 file changed, 11 insertions(+), 6 deletions(-)
>
Regards,
Simon
More information about the U-Boot
mailing list