ALSA: echoaduio: Drop superfluous volatile modifier
authorTakashi Iwai <tiwai@suse.de>
Mon, 3 Aug 2020 14:39:58 +0000 (16:39 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 11 Aug 2020 12:21:49 +0000 (14:21 +0200)
The dsp_registers field of struct echoaduio has the volatile modifier,
but it's basically superfluous; the field is accessed only for the
base pointer of readl() and writel(), hence marking with __iomem alone
should suffice.  OTOH, having the volatile prefix causes a compile
warning like:
  sound/pci/echoaudio/echoaudio.c:1878:14: warning: passing argument 1 of 'iounmap' discards 'volatile' qualifier from pointer target type [-Wdiscarded-qualifiers]

So it's better to drop this superfluous modifier.

Link: https://lore.kernel.org/r/20200803143958.24324-1-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/echoaudio/echoaudio.c
sound/pci/echoaudio/echoaudio.h

index 6aeb99a..1b7a67c 100644 (file)
@@ -1950,8 +1950,7 @@ static int snd_echo_create(struct snd_card *card,
                snd_echo_free(chip);
                return -EBUSY;
        }
-       chip->dsp_registers = (volatile u32 __iomem *)
-               ioremap(chip->dsp_registers_phys, sz);
+       chip->dsp_registers = ioremap(chip->dsp_registers_phys, sz);
        if (!chip->dsp_registers) {
                dev_err(chip->card->dev, "ioremap failed\n");
                snd_echo_free(chip);
index 30c6409..0afe13f 100644 (file)
@@ -419,7 +419,7 @@ struct echoaudio {
        short asic_code;                /* Current ASIC code */
        u32 comm_page_phys;                     /* Physical address of the
                                                 * memory seen by DSP */
-       volatile u32 __iomem *dsp_registers;    /* DSP's register base */
+       u32 __iomem *dsp_registers;             /* DSP's register base */
        u32 active_mask;                        /* Chs. active mask or
                                                 * punks out */
 #ifdef CONFIG_PM_SLEEP