Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c56935bd authored by Lars-Peter Clausen's avatar Lars-Peter Clausen Committed by Mark Brown
Browse files

firmware: Sigma: Skip header during CRC generation



The firmware header is not part of the CRC, so skip it. Otherwise the firmware
will be rejected due to non-matching CRCs.

Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
Acked-by: default avatarMike Frysinger <vapier@gentoo.org>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org
parent 4f718a29
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -130,7 +130,8 @@ int process_sigma_firmware(struct i2c_client *client, const char *name)
	if (memcmp(ssfw_head->magic, SIGMA_MAGIC, ARRAY_SIZE(ssfw_head->magic)))
		goto done;

	crc = crc32(0, fw->data, fw->size);
	crc = crc32(0, fw->data + sizeof(*ssfw_head),
			fw->size - sizeof(*ssfw_head));
	pr_debug("%s: crc=%x\n", __func__, crc);
	if (crc != ssfw_head->crc)
		goto done;