efahl / owut

OpenWrt Upgrade Tool
15 stars 0 forks source link

Bug: wrong 'sutype' for devices with sdcard #8

Closed efahl closed 3 months ago

efahl commented 4 months ago

From @dangowrt

Just tried this on Puzzle M902 device, and it failed with

ERROR: Could not locate an image for 'squashfs' and 'sysupgrade'...

The image name on this platform (and some others as well) is sdcard.img. So you need heuristics like in https://github.com/openwrt/packages/blob/master/utils/auc/src/auc.c#L1678

Edit: Reading the code I found https://github.com/efahl/owut/blob/main/files/owut#L1148 There is no target-wide rule about the image type. On mvebu, for example, some boards (with SPI memory) use uImage and hence the files are simply called squashfs-sysupgrade.bin, other boards use whole-disk sdcard images. It depends on what the vendor firmware implemented also. So I don't think it makes much sense to try to be smart about this in the updater client and track this for each target (which won't work) or even board.

efahl commented 4 months ago

Should be fixed in https://github.com/efahl/owut/commit/677d240281a5ccb515a90af96676a7b3f352139d

I made the assumption that a given device won't have both a "sysupgrade" and "sdcard" image. We all know about assumptions...

efahl commented 4 months ago

Implemented a more robust solution in https://github.com/efahl/owut/commit/5bb67b58e8ffcb10194af567dbac46dbb295c4a7

efahl commented 3 months ago

Tested by faking in several variants (compulab_trimslice tegra/generic, above mentioned Puzzle M902). Seems to work fine.