ASoC: sigmadsp: Fix endianness conversion issue
authorLars-Peter Clausen <lars@metafoo.de>
Fri, 7 Dec 2012 17:30:51 +0000 (18:30 +0100)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 10 Dec 2012 03:20:39 +0000 (12:20 +0900)
The 'addr' field of the sigma_action struct is stored as big endian in the
firmware file.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@vger.kernel.org
sound/soc/codecs/sigmadsp.c

index 5be42bf..4068f24 100644 (file)
@@ -225,7 +225,7 @@ EXPORT_SYMBOL(process_sigma_firmware);
 static int sigma_action_write_regmap(void *control_data,
        const struct sigma_action *sa, size_t len)
 {
-       return regmap_raw_write(control_data, le16_to_cpu(sa->addr),
+       return regmap_raw_write(control_data, be16_to_cpu(sa->addr),
                sa->payload, len - 2);
 }