[alsa-devel] [PATCHv2] ASoC: Intel: Fix sparse warnings for firmware loader.
Liam Girdwood
liam.r.girdwood at linux.intel.com
Wed Feb 19 15:06:23 CET 2014
Changes since V1 :-
o Fixed sparse warning for block_module_remove
o Fixed additional sparse warnings when building entire driver.
Sparse gives us the following warnings on sst-firmware.c
CHECK sound/soc/intel/sst-firmware.c
sound/soc/intel/sst-firmware.c:39:34: warning: incorrect type in argument 1 (different address spaces)
sound/soc/intel/sst-firmware.c:39:34: expected void volatile [noderef] <asn:2>*dst
sound/soc/intel/sst-firmware.c:39:34: got void *
sound/soc/intel/sst-firmware.c:417:36: warning: incorrect type in argument 1 (different address spaces)
sound/soc/intel/sst-firmware.c:417:36: expected void *dest
sound/soc/intel/sst-firmware.c:417:36: got void [noderef] <asn:2>*
sound/soc/intel/sst-firmware.c:430:5: warning: symbol 'sst_block_module_remove' was not declared. Should it be static?
and
CC [M] sound/soc/intel/sst-dsp.o
sound/soc/intel/sst-dsp-priv.h:271:53: warning: incorrect type in argument 3 (different address spaces)
sound/soc/intel/sst-dsp-priv.h:271:53: expected void *src
sound/soc/intel/sst-dsp-priv.h:271:53: got void [noderef] <asn:2>*
sound/soc/intel/sst-dsp-priv.h:271:53: warning: incorrect type in argument 3 (different address spaces)
sound/soc/intel/sst-dsp-priv.h:271:53: expected void *src
sound/soc/intel/sst-dsp-priv.h:271:53: got void [noderef] <asn:2>*
sound/soc/intel/sst-dsp-priv.h:271:53: warning: incorrect type in argument 3 (different address spaces)
sound/soc/intel/sst-dsp-priv.h:271:53: expected void *src
sound/soc/intel/sst-dsp-priv.h:271:53: got void [noderef] <asn:2>*
This patch removes these warnings
Signed-off-by: Liam Girdwood <liam.r.girdwood at linux.intel.com>
---
sound/soc/intel/sst-dsp-priv.h | 7 +++++--
sound/soc/intel/sst-firmware.c | 2 +-
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/sound/soc/intel/sst-dsp-priv.h b/sound/soc/intel/sst-dsp-priv.h
index 6135564..fe8e81a 100644
--- a/sound/soc/intel/sst-dsp-priv.h
+++ b/sound/soc/intel/sst-dsp-priv.h
@@ -41,8 +41,10 @@ struct sst_ops {
u64 (*read64)(void __iomem *addr, u32 offset);
/* DSP I/DRAM IO */
- void (*ram_read)(struct sst_dsp *sst, void *dest, void *src, size_t bytes);
- void (*ram_write)(struct sst_dsp *sst, void *dest, void *src, size_t bytes);
+ void (*ram_read)(struct sst_dsp *sst, void *dest, void __iomem *src,
+ size_t bytes);
+ void (*ram_write)(struct sst_dsp *sst, void __iomem *dest, void *src,
+ size_t bytes);
void (*dump)(struct sst_dsp *);
@@ -296,6 +298,7 @@ struct sst_module *sst_module_get_from_id(struct sst_dsp *dsp, u32 id);
struct sst_module *sst_mem_block_alloc_scratch(struct sst_dsp *dsp);
void sst_mem_block_free_scratch(struct sst_dsp *dsp,
struct sst_module *scratch);
+int sst_block_module_remove(struct sst_module *module);
/* Register the DSPs memory blocks - would be nice to read from ACPI */
struct sst_mem_block *sst_mem_block_register(struct sst_dsp *dsp, u32 offset,
diff --git a/sound/soc/intel/sst-firmware.c b/sound/soc/intel/sst-firmware.c
index 31cd154..dee7eb5 100644
--- a/sound/soc/intel/sst-firmware.c
+++ b/sound/soc/intel/sst-firmware.c
@@ -30,7 +30,7 @@
#include "sst-dsp.h"
#include "sst-dsp-priv.h"
-static void sst_memcpy32(void *dest, void *src, u32 bytes)
+static void sst_memcpy32(volatile void __iomem *dest, void *src, u32 bytes)
{
u32 i;
--
1.8.3.2
More information about the Alsa-devel
mailing list