ALSA: rme32: Fix assignment in if condition
authorTakashi Iwai <tiwai@suse.de>
Tue, 8 Jun 2021 14:05:04 +0000 (16:05 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 9 Jun 2021 15:29:59 +0000 (17:29 +0200)
PCI RME32 driver code contains a few assignments in if condition,
which is a bad coding style that may confuse readers and occasionally
lead to bugs.

This patch is merely for coding-style fixes (except for a slight
refactoring about AutoSync rate check, only systematic conversions),
no functional changes.

Link: https://lore.kernel.org/r/20210608140540.17885-31-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/rme32.c

index 54f3e39..b5b3578 100644 (file)
@@ -668,18 +668,24 @@ snd_rme32_playback_hw_params(struct snd_pcm_substream *substream,
        }
 
        spin_lock_irq(&rme32->lock);
-       if ((rme32->rcreg & RME32_RCR_KMODE) &&
-           (rate = snd_rme32_capture_getrate(rme32, &dummy)) > 0) {
+       rate = 0;
+       if (rme32->rcreg & RME32_RCR_KMODE)
+               rate = snd_rme32_capture_getrate(rme32, &dummy);
+       if (rate > 0) {
                /* AutoSync */
                if ((int)params_rate(params) != rate) {
                        spin_unlock_irq(&rme32->lock);
                        return -EIO;
                }
-       } else if ((err = snd_rme32_playback_setrate(rme32, params_rate(params))) < 0) {
-               spin_unlock_irq(&rme32->lock);
-               return err;
+       } else {
+               err = snd_rme32_playback_setrate(rme32, params_rate(params));
+               if (err < 0) {
+                       spin_unlock_irq(&rme32->lock);
+                       return err;
+               }
        }
-       if ((err = snd_rme32_setformat(rme32, params_format(params))) < 0) {
+       err = snd_rme32_setformat(rme32, params_format(params));
+       if (err < 0) {
                spin_unlock_irq(&rme32->lock);
                return err;
        }
@@ -723,15 +729,18 @@ snd_rme32_capture_hw_params(struct snd_pcm_substream *substream,
        rme32->wcreg |= RME32_WCR_AUTOSYNC;
        writel(rme32->wcreg, rme32->iobase + RME32_IO_CONTROL_REGISTER);
 
-       if ((err = snd_rme32_setformat(rme32, params_format(params))) < 0) {
+       err = snd_rme32_setformat(rme32, params_format(params));
+       if (err < 0) {
                spin_unlock_irq(&rme32->lock);
                return err;
        }
-       if ((err = snd_rme32_playback_setrate(rme32, params_rate(params))) < 0) {
+       err = snd_rme32_playback_setrate(rme32, params_rate(params));
+       if (err < 0) {
                spin_unlock_irq(&rme32->lock);
                return err;
        }
-       if ((rate = snd_rme32_capture_getrate(rme32, &isadat)) > 0) {
+       rate = snd_rme32_capture_getrate(rme32, &isadat);
+       if (rate > 0) {
                 if ((int)params_rate(params) != rate) {
                        spin_unlock_irq(&rme32->lock);
                         return -EIO;                    
@@ -854,8 +863,10 @@ static int snd_rme32_playback_spdif_open(struct snd_pcm_substream *substream)
                runtime->hw.rates |= SNDRV_PCM_RATE_64000 | SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000;
                runtime->hw.rate_max = 96000;
        }
-       if ((rme32->rcreg & RME32_RCR_KMODE) &&
-           (rate = snd_rme32_capture_getrate(rme32, &dummy)) > 0) {
+       rate = 0;
+       if (rme32->rcreg & RME32_RCR_KMODE)
+               rate = snd_rme32_capture_getrate(rme32, &dummy);
+       if (rate > 0) {
                /* AutoSync */
                runtime->hw.rates = snd_pcm_rate_to_rate_bit(rate);
                runtime->hw.rate_min = rate;
@@ -895,7 +906,8 @@ static int snd_rme32_capture_spdif_open(struct snd_pcm_substream *substream)
                runtime->hw.rates |= SNDRV_PCM_RATE_88200 | SNDRV_PCM_RATE_96000;
                runtime->hw.rate_max = 96000;
        }
-       if ((rate = snd_rme32_capture_getrate(rme32, &isadat)) > 0) {
+       rate = snd_rme32_capture_getrate(rme32, &isadat);
+       if (rate > 0) {
                if (isadat) {
                        return -EIO;
                }
@@ -932,8 +944,10 @@ snd_rme32_playback_adat_open(struct snd_pcm_substream *substream)
                runtime->hw = snd_rme32_adat_fd_info;
        else
                runtime->hw = snd_rme32_adat_info;
-       if ((rme32->rcreg & RME32_RCR_KMODE) &&
-           (rate = snd_rme32_capture_getrate(rme32, &dummy)) > 0) {
+       rate = 0;
+       if (rme32->rcreg & RME32_RCR_KMODE)
+               rate = snd_rme32_capture_getrate(rme32, &dummy);
+       if (rate > 0) {
                 /* AutoSync */
                 runtime->hw.rates = snd_pcm_rate_to_rate_bit(rate);
                 runtime->hw.rate_min = rate;
@@ -955,7 +969,8 @@ snd_rme32_capture_adat_open(struct snd_pcm_substream *substream)
                runtime->hw = snd_rme32_adat_fd_info;
        else
                runtime->hw = snd_rme32_adat_info;
-       if ((rate = snd_rme32_capture_getrate(rme32, &isadat)) > 0) {
+       rate = snd_rme32_capture_getrate(rme32, &isadat);
+       if (rate > 0) {
                if (!isadat) {
                        return -EIO;
                }
@@ -1307,10 +1322,12 @@ static int snd_rme32_create(struct rme32 *rme32)
        rme32->irq = -1;
        spin_lock_init(&rme32->lock);
 
-       if ((err = pci_enable_device(pci)) < 0)
+       err = pci_enable_device(pci);
+       if (err < 0)
                return err;
 
-       if ((err = pci_request_regions(pci, "RME32")) < 0)
+       err = pci_request_regions(pci, "RME32");
+       if (err < 0)
                return err;
        rme32->port = pci_resource_start(rme32->pci, 0);
 
@@ -1334,9 +1351,9 @@ static int snd_rme32_create(struct rme32 *rme32)
        pci_read_config_byte(pci, 8, &rme32->rev);
 
        /* set up ALSA pcm device for S/PDIF */
-       if ((err = snd_pcm_new(rme32->card, "Digi32 IEC958", 0, 1, 1, &rme32->spdif_pcm)) < 0) {
+       err = snd_pcm_new(rme32->card, "Digi32 IEC958", 0, 1, 1, &rme32->spdif_pcm);
+       if (err < 0)
                return err;
-       }
        rme32->spdif_pcm->private_data = rme32;
        rme32->spdif_pcm->private_free = snd_rme32_free_spdif_pcm;
        strcpy(rme32->spdif_pcm->name, "Digi32 IEC958");
@@ -1363,11 +1380,10 @@ static int snd_rme32_create(struct rme32 *rme32)
                rme32->adat_pcm = NULL;
        }
        else {
-               if ((err = snd_pcm_new(rme32->card, "Digi32 ADAT", 1,
-                                      1, 1, &rme32->adat_pcm)) < 0)
-               {
+               err = snd_pcm_new(rme32->card, "Digi32 ADAT", 1,
+                                 1, 1, &rme32->adat_pcm);
+               if (err < 0)
                        return err;
-               }               
                rme32->adat_pcm->private_data = rme32;
                rme32->adat_pcm->private_free = snd_rme32_free_adat_pcm;
                strcpy(rme32->adat_pcm->name, "Digi32 ADAT");
@@ -1410,9 +1426,9 @@ static int snd_rme32_create(struct rme32 *rme32)
 
 
        /* init switch interface */
-       if ((err = snd_rme32_create_switches(rme32->card, rme32)) < 0) {
+       err = snd_rme32_create_switches(rme32->card, rme32);
+       if (err < 0)
                return err;
-       }
 
        /* init proc interface */
        snd_rme32_proc_init(rme32);
@@ -1855,7 +1871,9 @@ static int snd_rme32_create_switches(struct snd_card *card, struct rme32 * rme32
        struct snd_kcontrol *kctl;
 
        for (idx = 0; idx < (int)ARRAY_SIZE(snd_rme32_controls); idx++) {
-               if ((err = snd_ctl_add(card, kctl = snd_ctl_new1(&snd_rme32_controls[idx], rme32))) < 0)
+               kctl = snd_ctl_new1(&snd_rme32_controls[idx], rme32);
+               err = snd_ctl_add(card, kctl);
+               if (err < 0)
                        return err;
                if (idx == 1)   /* IEC958 (S/PDIF) Stream */
                        rme32->spdif_ctl = kctl;
@@ -1899,7 +1917,8 @@ snd_rme32_probe(struct pci_dev *pci, const struct pci_device_id *pci_id)
        rme32->pci = pci;
         if (fullduplex[dev])
                rme32->fullduplex_mode = 1;
-       if ((err = snd_rme32_create(rme32)) < 0) {
+       err = snd_rme32_create(rme32);
+       if (err < 0) {
                snd_card_free(card);
                return err;
        }
@@ -1919,7 +1938,8 @@ snd_rme32_probe(struct pci_dev *pci, const struct pci_device_id *pci_id)
        sprintf(card->longname, "%s (Rev. %d) at 0x%lx, irq %d",
                card->shortname, rme32->rev, rme32->port, rme32->irq);
 
-       if ((err = snd_card_register(card)) < 0) {
+       err = snd_card_register(card);
+       if (err < 0) {
                snd_card_free(card);
                return err;
        }