fel-lib: Fix parsing scratchpad field

Field has 32 bits, not 16, as it is currently handled. This fixes
scratchpad address print when using "sunxi-fel ver" command on A523.
Before it printed "0x1500" and afterwards "0x61500", which makes much
more sense and it was verified by BROM disassembly.

Signed-off-by: Jernej Skrabec <jernej.skrabec@gmail.com>
This commit is contained in:
Jernej Skrabec 2025-02-09 21:31:35 +01:00 committed by Andre Przywara
parent f88e5fe32f
commit e3f41d48f2

View File

@ -201,7 +201,7 @@ static void aw_fel_get_version(feldev_handle *dev, struct aw_fel_version *buf)
buf->soc_id = (le32toh(buf->soc_id) >> 8) & 0xFFFF; buf->soc_id = (le32toh(buf->soc_id) >> 8) & 0xFFFF;
buf->unknown_0a = le32toh(buf->unknown_0a); buf->unknown_0a = le32toh(buf->unknown_0a);
buf->protocol = le32toh(buf->protocol); buf->protocol = le32toh(buf->protocol);
buf->scratchpad = le16toh(buf->scratchpad); buf->scratchpad = le32toh(buf->scratchpad);
buf->pad[0] = le32toh(buf->pad[0]); buf->pad[0] = le32toh(buf->pad[0]);
buf->pad[1] = le32toh(buf->pad[1]); buf->pad[1] = le32toh(buf->pad[1]);
} }