ALSA: hda/tegra: iomem fixups for sparse warnings
diff mbox

Message ID 1466533112-3262-1-git-send-email-ben.dooks@codethink.co.uk
State Accepted
Headers show

Commit Message

Ben Dooks June 21, 2016, 6:18 p.m. UTC
The readl/writel are not being passed __iomem annotated
variables, so fix the following sparse warnings by adding
__iomem in:

sound/pci/hda/hda_tegra.c:120:9: warning: incorrect type in argument 2 (different address spaces)
sound/pci/hda/hda_tegra.c:120:9:    expected void volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:120:9:    got unsigned int [usertype] *addr
sound/pci/hda/hda_tegra.c:125:16: warning: incorrect type in argument 1 (different address spaces)
sound/pci/hda/hda_tegra.c:125:16:    expected void const volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:125:16:    got unsigned int [usertype] *addr
sound/pci/hda/hda_tegra.c:134:13: warning: incorrect type in argument 1 (different address spaces)
sound/pci/hda/hda_tegra.c:134:13:    expected void const volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:134:13:    got void *dword_addr
sound/pci/hda/hda_tegra.c:137:9: warning: incorrect type in argument 2 (different address spaces)
sound/pci/hda/hda_tegra.c:137:9:    expected void volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:137:9:    got void *dword_addr
sound/pci/hda/hda_tegra.c:146:13: warning: incorrect type in argument 1 (different address spaces)
sound/pci/hda/hda_tegra.c:146:13:    expected void const volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:146:13:    got void *dword_addr
sound/pci/hda/hda_tegra.c:156:13: warning: incorrect type in argument 1 (different address spaces)
sound/pci/hda/hda_tegra.c:156:13:    expected void const volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:156:13:    got void *dword_addr
sound/pci/hda/hda_tegra.c:159:9: warning: incorrect type in argument 2 (different address spaces)
sound/pci/hda/hda_tegra.c:159:9:    expected void volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:159:9:    got void *dword_addr
sound/pci/hda/hda_tegra.c:168:13: warning: incorrect type in argument 1 (different address spaces)
sound/pci/hda/hda_tegra.c:168:13:    expected void const volatile [noderef] <asn:2>*addr
sound/pci/hda/hda_tegra.c:168:13:    got void *dword_addr
sound/pci/hda/hda_tegra.c:173:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
sound/pci/hda/hda_tegra.c:173:23:    expected void ( *reg_writel )( ... )
sound/pci/hda/hda_tegra.c:173:23:    got void ( static [toplevel] *<noident> )( ... )
sound/pci/hda/hda_tegra.c:174:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
sound/pci/hda/hda_tegra.c:174:22:    expected unsigned int ( *reg_readl )( ... )
sound/pci/hda/hda_tegra.c:174:22:    got unsigned int ( static [toplevel] *<noident> )( ... )
sound/pci/hda/hda_tegra.c:175:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
sound/pci/hda/hda_tegra.c:175:23:    expected void ( *reg_writew )( ... )
sound/pci/hda/hda_tegra.c:175:23:    got void ( static [toplevel] *<noident> )( ... )
sound/pci/hda/hda_tegra.c:176:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
sound/pci/hda/hda_tegra.c:176:22:    expected unsigned short ( *reg_readw )( ... )
sound/pci/hda/hda_tegra.c:176:22:    got unsigned short ( static [toplevel] *<noident> )( ... )
sound/pci/hda/hda_tegra.c:177:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
sound/pci/hda/hda_tegra.c:177:23:    expected void ( *reg_writeb )( ... )
sound/pci/hda/hda_tegra.c:177:23:    got void ( static [toplevel] *<noident> )( ... )
sound/pci/hda/hda_tegra.c:178:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
sound/pci/hda/hda_tegra.c:178:22:    expected unsigned char ( *reg_readb )( ... )
sound/pci/hda/hda_tegra.c:178:22:    got unsigned char ( static [toplevel] *<noident> )( ... )

Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
---
Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.com>
Cc: Stephen Warren <swarren@wwwdotorg.org>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Alexandre Courbot <gnurou@gmail.com>
Cc: alsa-devel@alsa-project.org
Cc: linux-tegra@vger.kernel.org
---
 sound/pci/hda/hda_tegra.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

Comments

Takashi Iwai June 22, 2016, 6:02 a.m. UTC | #1
On Tue, 21 Jun 2016 20:18:32 +0200,
Ben Dooks wrote:
> 
> The readl/writel are not being passed __iomem annotated
> variables, so fix the following sparse warnings by adding
> __iomem in:
> 
> sound/pci/hda/hda_tegra.c:120:9: warning: incorrect type in argument 2 (different address spaces)
> sound/pci/hda/hda_tegra.c:120:9:    expected void volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:120:9:    got unsigned int [usertype] *addr
> sound/pci/hda/hda_tegra.c:125:16: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:125:16:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:125:16:    got unsigned int [usertype] *addr
> sound/pci/hda/hda_tegra.c:134:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:134:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:134:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:137:9: warning: incorrect type in argument 2 (different address spaces)
> sound/pci/hda/hda_tegra.c:137:9:    expected void volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:137:9:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:146:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:146:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:146:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:156:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:156:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:156:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:159:9: warning: incorrect type in argument 2 (different address spaces)
> sound/pci/hda/hda_tegra.c:159:9:    expected void volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:159:9:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:168:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:168:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:168:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:173:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> sound/pci/hda/hda_tegra.c:173:23:    expected void ( *reg_writel )( ... )
> sound/pci/hda/hda_tegra.c:173:23:    got void ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:174:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> sound/pci/hda/hda_tegra.c:174:22:    expected unsigned int ( *reg_readl )( ... )
> sound/pci/hda/hda_tegra.c:174:22:    got unsigned int ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:175:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> sound/pci/hda/hda_tegra.c:175:23:    expected void ( *reg_writew )( ... )
> sound/pci/hda/hda_tegra.c:175:23:    got void ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:176:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> sound/pci/hda/hda_tegra.c:176:22:    expected unsigned short ( *reg_readw )( ... )
> sound/pci/hda/hda_tegra.c:176:22:    got unsigned short ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:177:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> sound/pci/hda/hda_tegra.c:177:23:    expected void ( *reg_writeb )( ... )
> sound/pci/hda/hda_tegra.c:177:23:    got void ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:178:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> sound/pci/hda/hda_tegra.c:178:22:    expected unsigned char ( *reg_readb )( ... )
> sound/pci/hda/hda_tegra.c:178:22:    got unsigned char ( static [toplevel] *<noident> )( ... )
> 
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>

Applied, thanks.


Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Thierry Reding June 22, 2016, 12:35 p.m. UTC | #2
On Tue, Jun 21, 2016 at 07:18:32PM +0100, Ben Dooks wrote:
> The readl/writel are not being passed __iomem annotated
> variables, so fix the following sparse warnings by adding
> __iomem in:
> 
> sound/pci/hda/hda_tegra.c:120:9: warning: incorrect type in argument 2 (different address spaces)
> sound/pci/hda/hda_tegra.c:120:9:    expected void volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:120:9:    got unsigned int [usertype] *addr
> sound/pci/hda/hda_tegra.c:125:16: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:125:16:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:125:16:    got unsigned int [usertype] *addr
> sound/pci/hda/hda_tegra.c:134:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:134:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:134:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:137:9: warning: incorrect type in argument 2 (different address spaces)
> sound/pci/hda/hda_tegra.c:137:9:    expected void volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:137:9:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:146:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:146:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:146:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:156:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:156:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:156:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:159:9: warning: incorrect type in argument 2 (different address spaces)
> sound/pci/hda/hda_tegra.c:159:9:    expected void volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:159:9:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:168:13: warning: incorrect type in argument 1 (different address spaces)
> sound/pci/hda/hda_tegra.c:168:13:    expected void const volatile [noderef] <asn:2>*addr
> sound/pci/hda/hda_tegra.c:168:13:    got void *dword_addr
> sound/pci/hda/hda_tegra.c:173:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> sound/pci/hda/hda_tegra.c:173:23:    expected void ( *reg_writel )( ... )
> sound/pci/hda/hda_tegra.c:173:23:    got void ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:174:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> sound/pci/hda/hda_tegra.c:174:22:    expected unsigned int ( *reg_readl )( ... )
> sound/pci/hda/hda_tegra.c:174:22:    got unsigned int ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:175:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> sound/pci/hda/hda_tegra.c:175:23:    expected void ( *reg_writew )( ... )
> sound/pci/hda/hda_tegra.c:175:23:    got void ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:176:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> sound/pci/hda/hda_tegra.c:176:22:    expected unsigned short ( *reg_readw )( ... )
> sound/pci/hda/hda_tegra.c:176:22:    got unsigned short ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:177:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> sound/pci/hda/hda_tegra.c:177:23:    expected void ( *reg_writeb )( ... )
> sound/pci/hda/hda_tegra.c:177:23:    got void ( static [toplevel] *<noident> )( ... )
> sound/pci/hda/hda_tegra.c:178:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> sound/pci/hda/hda_tegra.c:178:22:    expected unsigned char ( *reg_readb )( ... )
> sound/pci/hda/hda_tegra.c:178:22:    got unsigned char ( static [toplevel] *<noident> )( ... )
> 
> Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> ---
> Cc: Jaroslav Kysela <perex@perex.cz>
> Cc: Takashi Iwai <tiwai@suse.com>
> Cc: Stephen Warren <swarren@wwwdotorg.org>
> Cc: Thierry Reding <thierry.reding@gmail.com>
> Cc: Alexandre Courbot <gnurou@gmail.com>
> Cc: alsa-devel@alsa-project.org
> Cc: linux-tegra@vger.kernel.org
> ---
>  sound/pci/hda/hda_tegra.c | 20 ++++++++++----------
>  1 file changed, 10 insertions(+), 10 deletions(-)

Takashi's already applid it, but fwiw:

Acked-by: Thierry Reding <treding@nvidia.com>
Takashi Iwai June 22, 2016, 1:20 p.m. UTC | #3
On Wed, 22 Jun 2016 14:35:51 +0200,
Thierry Reding wrote:
> 
> On Tue, Jun 21, 2016 at 07:18:32PM +0100, Ben Dooks wrote:
> > The readl/writel are not being passed __iomem annotated
> > variables, so fix the following sparse warnings by adding
> > __iomem in:
> > 
> > sound/pci/hda/hda_tegra.c:120:9: warning: incorrect type in argument 2 (different address spaces)
> > sound/pci/hda/hda_tegra.c:120:9:    expected void volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:120:9:    got unsigned int [usertype] *addr
> > sound/pci/hda/hda_tegra.c:125:16: warning: incorrect type in argument 1 (different address spaces)
> > sound/pci/hda/hda_tegra.c:125:16:    expected void const volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:125:16:    got unsigned int [usertype] *addr
> > sound/pci/hda/hda_tegra.c:134:13: warning: incorrect type in argument 1 (different address spaces)
> > sound/pci/hda/hda_tegra.c:134:13:    expected void const volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:134:13:    got void *dword_addr
> > sound/pci/hda/hda_tegra.c:137:9: warning: incorrect type in argument 2 (different address spaces)
> > sound/pci/hda/hda_tegra.c:137:9:    expected void volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:137:9:    got void *dword_addr
> > sound/pci/hda/hda_tegra.c:146:13: warning: incorrect type in argument 1 (different address spaces)
> > sound/pci/hda/hda_tegra.c:146:13:    expected void const volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:146:13:    got void *dword_addr
> > sound/pci/hda/hda_tegra.c:156:13: warning: incorrect type in argument 1 (different address spaces)
> > sound/pci/hda/hda_tegra.c:156:13:    expected void const volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:156:13:    got void *dword_addr
> > sound/pci/hda/hda_tegra.c:159:9: warning: incorrect type in argument 2 (different address spaces)
> > sound/pci/hda/hda_tegra.c:159:9:    expected void volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:159:9:    got void *dword_addr
> > sound/pci/hda/hda_tegra.c:168:13: warning: incorrect type in argument 1 (different address spaces)
> > sound/pci/hda/hda_tegra.c:168:13:    expected void const volatile [noderef] <asn:2>*addr
> > sound/pci/hda/hda_tegra.c:168:13:    got void *dword_addr
> > sound/pci/hda/hda_tegra.c:173:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> > sound/pci/hda/hda_tegra.c:173:23:    expected void ( *reg_writel )( ... )
> > sound/pci/hda/hda_tegra.c:173:23:    got void ( static [toplevel] *<noident> )( ... )
> > sound/pci/hda/hda_tegra.c:174:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> > sound/pci/hda/hda_tegra.c:174:22:    expected unsigned int ( *reg_readl )( ... )
> > sound/pci/hda/hda_tegra.c:174:22:    got unsigned int ( static [toplevel] *<noident> )( ... )
> > sound/pci/hda/hda_tegra.c:175:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> > sound/pci/hda/hda_tegra.c:175:23:    expected void ( *reg_writew )( ... )
> > sound/pci/hda/hda_tegra.c:175:23:    got void ( static [toplevel] *<noident> )( ... )
> > sound/pci/hda/hda_tegra.c:176:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> > sound/pci/hda/hda_tegra.c:176:22:    expected unsigned short ( *reg_readw )( ... )
> > sound/pci/hda/hda_tegra.c:176:22:    got unsigned short ( static [toplevel] *<noident> )( ... )
> > sound/pci/hda/hda_tegra.c:177:23: warning: incorrect type in initializer (incompatible argument 2 (different address spaces))
> > sound/pci/hda/hda_tegra.c:177:23:    expected void ( *reg_writeb )( ... )
> > sound/pci/hda/hda_tegra.c:177:23:    got void ( static [toplevel] *<noident> )( ... )
> > sound/pci/hda/hda_tegra.c:178:22: warning: incorrect type in initializer (incompatible argument 1 (different address spaces))
> > sound/pci/hda/hda_tegra.c:178:22:    expected unsigned char ( *reg_readb )( ... )
> > sound/pci/hda/hda_tegra.c:178:22:    got unsigned char ( static [toplevel] *<noident> )( ... )
> > 
> > Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk>
> > ---
> > Cc: Jaroslav Kysela <perex@perex.cz>
> > Cc: Takashi Iwai <tiwai@suse.com>
> > Cc: Stephen Warren <swarren@wwwdotorg.org>
> > Cc: Thierry Reding <thierry.reding@gmail.com>
> > Cc: Alexandre Courbot <gnurou@gmail.com>
> > Cc: alsa-devel@alsa-project.org
> > Cc: linux-tegra@vger.kernel.org
> > ---
> >  sound/pci/hda/hda_tegra.c | 20 ++++++++++----------
> >  1 file changed, 10 insertions(+), 10 deletions(-)
> 
> Takashi's already applid it, but fwiw:
> 
> Acked-by: Thierry Reding <treding@nvidia.com>

I forgot to push (while being in a conference), so now I could merge
your ack, too ;)


thanks,

Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/sound/pci/hda/hda_tegra.c b/sound/pci/hda/hda_tegra.c
index 17fd817..0621920 100644
--- a/sound/pci/hda/hda_tegra.c
+++ b/sound/pci/hda/hda_tegra.c
@@ -115,20 +115,20 @@  static int substream_free_pages(struct azx *chip,
 /*
  * Register access ops. Tegra HDA register access is DWORD only.
  */
-static void hda_tegra_writel(u32 value, u32 *addr)
+static void hda_tegra_writel(u32 value, u32 __iomem *addr)
 {
 	writel(value, addr);
 }
 
-static u32 hda_tegra_readl(u32 *addr)
+static u32 hda_tegra_readl(u32 __iomem *addr)
 {
 	return readl(addr);
 }
 
-static void hda_tegra_writew(u16 value, u16 *addr)
+static void hda_tegra_writew(u16 value, u16 __iomem  *addr)
 {
 	unsigned int shift = ((unsigned long)(addr) & 0x3) << 3;
-	void *dword_addr = (void *)((unsigned long)(addr) & ~0x3);
+	void __iomem *dword_addr = (void __iomem *)((unsigned long)(addr) & ~0x3);
 	u32 v;
 
 	v = readl(dword_addr);
@@ -137,20 +137,20 @@  static void hda_tegra_writew(u16 value, u16 *addr)
 	writel(v, dword_addr);
 }
 
-static u16 hda_tegra_readw(u16 *addr)
+static u16 hda_tegra_readw(u16 __iomem *addr)
 {
 	unsigned int shift = ((unsigned long)(addr) & 0x3) << 3;
-	void *dword_addr = (void *)((unsigned long)(addr) & ~0x3);
+	void __iomem *dword_addr = (void __iomem *)((unsigned long)(addr) & ~0x3);
 	u32 v;
 
 	v = readl(dword_addr);
 	return (v >> shift) & 0xffff;
 }
 
-static void hda_tegra_writeb(u8 value, u8 *addr)
+static void hda_tegra_writeb(u8 value, u8 __iomem *addr)
 {
 	unsigned int shift = ((unsigned long)(addr) & 0x3) << 3;
-	void *dword_addr = (void *)((unsigned long)(addr) & ~0x3);
+	void __iomem *dword_addr = (void __iomem *)((unsigned long)(addr) & ~0x3);
 	u32 v;
 
 	v = readl(dword_addr);
@@ -159,10 +159,10 @@  static void hda_tegra_writeb(u8 value, u8 *addr)
 	writel(v, dword_addr);
 }
 
-static u8 hda_tegra_readb(u8 *addr)
+static u8 hda_tegra_readb(u8 __iomem *addr)
 {
 	unsigned int shift = ((unsigned long)(addr) & 0x3) << 3;
-	void *dword_addr = (void *)((unsigned long)(addr) & ~0x3);
+	void __iomem *dword_addr = (void __iomem *)((unsigned long)(addr) & ~0x3);
 	u32 v;
 
 	v = readl(dword_addr);