Quick update: I just noticed the network interface wasn't working, and I noticed that the wrong dtb_file was being loaded by the stock config. I did the following and now it's working: T5325> setenv dtb_file /boot/dts/kirkwood-t5325.dtb T5325> saveenv Saving Environment to SPI Flash... SF: Detected m25p80 with page size 256 Bytes, erase size 64 KiB, total 1 MiB Erasiby fermino - uBoot
Small errata: I couldn't get that to work reliably. Adding a bit of delay in stock uboot helped, but even then I couldn't get kwboot to work reliably. I did find, though, that the lock bits are preserved so long as the power is not removed, so I updated my previous comment accordingly, in case anyone has the same issue. I do not think a rebase would be worth the hassle, it'by fermino - uBoot
It worked! I reflashed stock uboot and as I noticed the flash locking state was persistent across resets, in order to just use the same rootfs I unlocked it and then used kwboot to UART boot the latest uboot and use the rootfs and kernel I had already working. HP>> flinfo Bank # 1: Flash Base Address : 0xf8000000 Flash Model : Numonyx-25P80 Manufacturer ID : 0x20by fermino - uBoot
Hi again! Sorry for the long delay! Here is the log; I have tested it in two devices and both show the same behavior. https://pastebin.com/6N8SzjbEby fermino - uBoot
Hi again! I tried setting mtdparts in the cmdline as you suggested but so far no luck :( Here's the log (I tried unlocking and flashing mtd0 too without luck too, just in case): https://pastebin.com/ap1tqgsm Edit: the default env after a cold boot is the following: U-Boot 2017.07-tld-1 (Nov 01 2017 - 00:58:19 -0700) HP Thin Client T5325 SoC: Kirkwood 88F6281_A1 SPI: rby fermino - uBoot
Well, I gave it a shot using the latest kernel and rootfs and I managed to flash /dev/mtd0 (the mtd definition looks correct, according to the first post): root@debian:/boot# cat /proc/mtd dev: size erasesize name mtd0: 00080000 00010000 "uboot" mtd1: 00040000 00010000 "sdd_firmware" mtd2: 00010000 00010000 "uboot_env" mtd3: 00010000 00010000 "by fermino - uBoot
So, if I'm getting it correctly the mtd is just raw flash space (in the nand? or somewhere else?) that is then divided in blocks by the mtd definition? Is that definition coming only from fw_env.config or from other place? (I'm trying to understand how it works, it's the first time I touch uboot :) ) printenv: https://pastebin.com/6dRxaWuc fw_env.config: root@debian:~# caby fermino - uBoot
Quick update: it seems the flash is not being written at all: root@debian:~# flash_unlock /dev/mtd0 root@debian:~# flashcp -v devmtd0 /dev/mtd0 Erasing blocks: 8/8 (100%) Writing data: 512k/512k (100%) Verifying data: 512k/512k (100%) root@debian:~# flashcp -v uboot.2017.07-tld-1.t5325.mtd0.kwb /dev/mtd0 Erasing blocks: 8/8 (100%) Writing data: 512k/512k (100%) Verifying data: 10by fermino - uBoot
@bodhi sorry for all the missing info. I am using stock uBoot. The mtd is slightly different although it looks right. root@debian:~# cat /proc/mtd dev: size erasesize name mtd0: 00080000 00010000 "u-boot" mtd1: 00040000 00010000 "SSD firmware" mtd2: 00010000 00010000 "u-boot env" mtd3: 00010000 00010000 "permanent u-boot env" mtd4: 000by fermino - uBoot