
Hi Marek,
On 25.10.21 15:12, Marek Behún wrote:
From: Marek Behún marek.behun@nic.cz
Hello Stefan,
these are another improvements for kwboot, please apply only after series arm: mvebu: nandpagesize support for kwbimage v1
I'm checking right now and have applied the 3 NAND patches on current master. But this patchset fails at this one:
tools: kwboot: Do not modify kwbimage header before increasing its size
[stefan@ryzen u-boot-marvell (kwboot-test1)]$ git am -3 ~/tmp/kwboot2/* Applying: tools: kwboot: Initialize rfds to zero Applying: tools: kwboot: Fix initialization of tty device Applying: tools: kwboot: Reserve enough space for patching kwbimage in memory Applying: tools: kwboot: Validate 4-byte image data checksum Applying: tools: kwboot: Inject baudrate change back code after data part Applying: tools: kwboot: Recalculate 4-byte data checksum after injecting baudrate code Applying: tools: kwboot: Correctly set configuration of UART for BootROM messages Applying: tools: kwboot: Show verbose message when waiting for baudrate change magic Applying: tools: kwboot: Simplify code for aligning image header Applying: tools: kwboot: Do not modify kwbimage header before increasing its size error: sha1 information is lacking or useless (tools/kwboot.c). error: could not build fake ancestor Patch failed at 0010 tools: kwboot: Do not modify kwbimage header before increasing its size hint: Use 'git am --show-current-patch=diff' to see the failed patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort".
Any idea what's missing here?
Thanks, Stefan
The main improvement is in patch 5, which changes where we inject the code for changing baudrate back to 115200 Baud after fast upload. Instead of injecting it before the main data image, we now inject it after.
This is because there are some kwb images that upload at address 0, and injecting the code before that doesn't work, since there is no RAM mapped at 0xfffff000.
Marek & Pali
Pali Rohár (13): tools: kwboot: Initialize rfds to zero tools: kwboot: Fix initialization of tty device tools: kwboot: Reserve enough space for patching kwbimage in memory tools: kwboot: Validate 4-byte image data checksum tools: kwboot: Inject baudrate change back code after data part tools: kwboot: Recalculate 4-byte data checksum after injecting baudrate code tools: kwboot: Correctly set configuration of UART for BootROM messages tools: kwboot: Show verbose message when waiting for baudrate change magic tools: kwboot: Simplify code for aligning image header tools: kwboot: Do not modify kwbimage header before increasing its size tools: kwboot: Calculate real used space in kwbimage header when calling kwboot_img_grow_hdr() tools: kwboot: Change retry loop from decreasing to increasing tools: kwboot: Resend first 3 xmodem retry packets immediately
tools/kwboot.c | 178 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 120 insertions(+), 58 deletions(-)
Viele Grüße, Stefan