@@ -531,7 +531,7 @@ static int snd_sc6000_match(struct device *devptr, unsigned int dev)
static void snd_sc6000_free(struct snd_card *card)
{
- char __iomem *vport = card->private_data;
+ char __iomem *vport = (char __force __iomem *)card->private_data;
if (vport)
sc6000_setup_board(vport, 0);
@@ -582,7 +582,7 @@ static int snd_sc6000_probe(struct device *devptr, unsigned int dev)
"I/O port cannot be iomapped.\n");
return -EBUSY;
}
- card->private_data = vport;
+ card->private_data = (void __force *)vport;
/* to make it marked as used */
if (!devm_request_region(devptr, mss_port[dev], 4, DRV_NAME)) {
The recent optimization to store an iomem pointer in card's private_data field caused sparse warnings. Although they are practically harmless, add the explicit cast for avoiding the spurious warnings. Fixes: 9b7843d1e125 ("ALSA: sc6000: Assign vport directly on card's private_data") Reported-by: kernel test robot <lkp@intel.com> Link: https://lore.kernel.org/r/202107210511.SnFqlZMa-lkp@intel.com Signed-off-by: Takashi Iwai <tiwai@suse.de> --- sound/isa/sc6000.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)