ASoC: wm_adsp: Use __leXX for little endian data
authorCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Mon, 20 Apr 2015 12:52:44 +0000 (13:52 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 27 Apr 2015 14:38:26 +0000 (15:38 +0100)
Using uXX for little endian data, was triggering some warnings through
sparse:

sound/soc/codecs/wm_adsp.c:716:26: sparse: cast to restricted __le16
sound/soc/codecs/wm_adsp.c:736:23: sparse: cast to restricted __le16
sound/soc/codecs/wm_adsp.c:739:23: sparse: cast to restricted __le32

Correct this by changing the casts to use __leXX instead of uXX.

Reported-by: Fengguang Wu <fengguang.wu@intel.com>
Signed-off-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wm_adsp.c

index 00289bf..53fc7f8 100644 (file)
@@ -713,7 +713,7 @@ static int wm_coeff_parse_string(int bytes, const u8 **pos, const u8 **str)
                length = **pos;
                break;
        case 2:
-               length = le16_to_cpu(*((u16 *)*pos));
+               length = le16_to_cpu(*((__le16 *)*pos));
                break;
        default:
                return 0;
@@ -733,10 +733,10 @@ static int wm_coeff_parse_int(int bytes, const u8 **pos)
 
        switch (bytes) {
        case 2:
-               val = le16_to_cpu(*((u16 *)*pos));
+               val = le16_to_cpu(*((__le16 *)*pos));
                break;
        case 4:
-               val = le32_to_cpu(*((u32 *)*pos));
+               val = le32_to_cpu(*((__le32 *)*pos));
                break;
        default:
                break;