From 90e6228a995816750f96c70d94298e12c08511f4 Mon Sep 17 00:00:00 2001 From: Ksenija Stanojevic Date: Thu, 29 Oct 2015 21:58:16 -0700 Subject: [PATCH] Staging: comedi: das16: Fix sparse endian warning Fix following sparse warning: warning: cast to restricted __le16 This change is safe because array is pointer of type void and can be used to store any type of data, also offset of the array would be the same since unsigned short and __le16 are both 16 bits in size. Signed-off-by: Ksenija Stanojevic Signed-off-by: Greg Kroah-Hartman --- drivers/staging/comedi/drivers/das16.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/staging/comedi/drivers/das16.c b/drivers/staging/comedi/drivers/das16.c index 056bca9c67d5..fd8e0b76f764 100644 --- a/drivers/staging/comedi/drivers/das16.c +++ b/drivers/staging/comedi/drivers/das16.c @@ -801,9 +801,10 @@ static void das16_ai_munge(struct comedi_device *dev, unsigned short *data = array; unsigned int num_samples = comedi_bytes_to_samples(s, num_bytes); unsigned int i; + __le16 *buf = array; for (i = 0; i < num_samples; i++) { - data[i] = le16_to_cpu(data[i]); + data[i] = le16_to_cpu(buf[i]); if (s->maxdata == 0x0fff) data[i] >>= 4; data[i] &= s->maxdata; -- 2.20.1