| From fff71a4c050ba46e305d910c837b99ba1728135e Mon Sep 17 00:00:00 2001 |
| From: Takashi Iwai <tiwai@suse.de> |
| Date: Wed, 25 Jul 2018 17:10:11 +0200 |
| Subject: ALSA: vx222: Fix invalid endian conversions |
| |
| From: Takashi Iwai <tiwai@suse.de> |
| |
| commit fff71a4c050ba46e305d910c837b99ba1728135e upstream. |
| |
| The endian conversions used in vx2_dma_read() and vx2_dma_write() are |
| superfluous and even wrong on big-endian machines, as inl() and outl() |
| already do conversions. Kill them. |
| |
| Spotted by sparse, a warning like: |
| sound/pci/vx222/vx222_ops.c:278:30: warning: incorrect type in argument 1 (different base types) |
| |
| Cc: <stable@vger.kernel.org> |
| Signed-off-by: Takashi Iwai <tiwai@suse.de> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| sound/pci/vx222/vx222_ops.c | 8 ++++---- |
| 1 file changed, 4 insertions(+), 4 deletions(-) |
| |
| --- a/sound/pci/vx222/vx222_ops.c |
| +++ b/sound/pci/vx222/vx222_ops.c |
| @@ -275,7 +275,7 @@ static void vx2_dma_write(struct vx_core |
| length >>= 2; /* in 32bit words */ |
| /* Transfer using pseudo-dma. */ |
| for (; length > 0; length--) { |
| - outl(cpu_to_le32(*addr), port); |
| + outl(*addr, port); |
| addr++; |
| } |
| addr = (u32 *)runtime->dma_area; |
| @@ -285,7 +285,7 @@ static void vx2_dma_write(struct vx_core |
| count >>= 2; /* in 32bit words */ |
| /* Transfer using pseudo-dma. */ |
| for (; count > 0; count--) { |
| - outl(cpu_to_le32(*addr), port); |
| + outl(*addr, port); |
| addr++; |
| } |
| |
| @@ -313,7 +313,7 @@ static void vx2_dma_read(struct vx_core |
| length >>= 2; /* in 32bit words */ |
| /* Transfer using pseudo-dma. */ |
| for (; length > 0; length--) |
| - *addr++ = le32_to_cpu(inl(port)); |
| + *addr++ = inl(port); |
| addr = (u32 *)runtime->dma_area; |
| pipe->hw_ptr = 0; |
| } |
| @@ -321,7 +321,7 @@ static void vx2_dma_read(struct vx_core |
| count >>= 2; /* in 32bit words */ |
| /* Transfer using pseudo-dma. */ |
| for (; count > 0; count--) |
| - *addr++ = le32_to_cpu(inl(port)); |
| + *addr++ = inl(port); |
| |
| vx2_release_pseudo_dma(chip); |
| } |