while (timeout-- > 0) {
                udelay(1);
-               if (!((val = snd_via82xx_codec_xread(chip)) & VIA_REG_AC97_BUSY))
+               val = snd_via82xx_codec_xread(chip);
+               if (!(val & VIA_REG_AC97_BUSY))
                        return val & 0xffff;
        }
        dev_err(chip->card->dev, "codec_ready: codec %i is not ready [0x%x]\n",
        int rate_changed;
        u32 rbits;
 
-       if ((rate_changed = via_lock_rate(&chip->rates[0], ac97_rate)) < 0)
+       rate_changed = via_lock_rate(&chip->rates[0], ac97_rate);
+       if (rate_changed < 0)
                return rate_changed;
        if (rate_changed)
                snd_ac97_set_rate(chip->ac97, AC97_PCM_FRONT_DAC_RATE,
 
        /* we may remove following constaint when we modify table entries
           in interrupt */
-       if ((err = snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS)) < 0)
+       err = snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS);
+       if (err < 0)
                return err;
 
        if (use_src) {
        struct viadev *viadev = &chip->devs[chip->playback_devno + substream->number];
        int err;
 
-       if ((err = snd_via82xx_pcm_open(chip, viadev, substream)) < 0)
+       err = snd_via82xx_pcm_open(chip, viadev, substream);
+       if (err < 0)
                return err;
        return 0;
 }
        int err;
 
        viadev = &chip->devs[chip->playback_devno + substream->number];
-       if ((err = snd_via82xx_pcm_open(chip, viadev, substream)) < 0)
+       err = snd_via82xx_pcm_open(chip, viadev, substream);
+       if (err < 0)
                return err;
        stream = viadev->reg_offset / 0x10;
        if (chip->dxs_controls[stream]) {
                .mask = 0,
        };
 
-       if ((err = snd_via82xx_pcm_open(chip, viadev, substream)) < 0)
+       err = snd_via82xx_pcm_open(chip, viadev, substream);
+       if (err < 0)
                return err;
        substream->runtime->hw.channels_max = 6;
        if (chip->revision == VIA_REV_8233A)
                .wait = snd_via82xx_codec_wait,
        };
 
-       if ((err = snd_ac97_bus(chip->card, 0, &ops, chip, &chip->ac97_bus)) < 0)
+       err = snd_ac97_bus(chip->card, 0, &ops, chip, &chip->ac97_bus);
+       if (err < 0)
                return err;
        chip->ac97_bus->private_free = snd_via82xx_mixer_free_ac97_bus;
        chip->ac97_bus->clock = chip->ac97_clock;
        ac97.private_free = snd_via82xx_mixer_free_ac97;
        ac97.pci = chip->pci;
        ac97.scaps = AC97_SCAP_SKIP_MODEM | AC97_SCAP_POWER_SAVE;
-       if ((err = snd_ac97_mixer(chip->ac97_bus, &ac97, &chip->ac97)) < 0)
+       err = snd_ac97_mixer(chip->ac97_bus, &ac97, &chip->ac97);
+       if (err < 0)
                return err;
 
        snd_ac97_tune_hardware(chip->ac97, ac97_quirks, quirk_override);
                        break;
                }
        }
-       if (mpu_port >= 0x200 &&
-           (chip->mpu_res = request_region(mpu_port, 2, "VIA82xx MPU401"))
-           != NULL) {
+       if (mpu_port >= 0x200)
+               chip->mpu_res = request_region(mpu_port, 2, "VIA82xx MPU401");
+       if (chip->mpu_res) {
                if (rev_h)
                        legacy |= VIA_FUNC_MIDI_PNP;    /* enable PCI I/O 2 */
                legacy |= VIA_FUNC_ENABLE_MIDI;
                schedule_timeout_uninterruptible(1);
        } while (time_before(jiffies, end_time));
 
-       if ((val = snd_via82xx_codec_xread(chip)) & VIA_REG_AC97_BUSY)
+       val = snd_via82xx_codec_xread(chip);
+       if (val & VIA_REG_AC97_BUSY)
                dev_err(chip->card->dev,
                        "AC'97 codec is not ready [0x%x]\n", val);
 
                                 VIA_REG_AC97_SECONDARY_VALID |
                                 (VIA_REG_AC97_CODEC_ID_SECONDARY << VIA_REG_AC97_CODEC_ID_SHIFT));
        do {
-               if ((val = snd_via82xx_codec_xread(chip)) & VIA_REG_AC97_SECONDARY_VALID) {
+               val = snd_via82xx_codec_xread(chip);
+               if (val & VIA_REG_AC97_SECONDARY_VALID) {
                        chip->ac97_secondary = 1;
                        goto __ac97_ok2;
                }
                .dev_free =     snd_via82xx_dev_free,
         };
 
-       if ((err = pci_enable_device(pci)) < 0)
+       err = pci_enable_device(pci);
+       if (err < 0)
                return err;
 
-       if ((chip = kzalloc(sizeof(*chip), GFP_KERNEL)) == NULL) {
+       chip = kzalloc(sizeof(*chip), GFP_KERNEL);
+       if (!chip) {
                pci_disable_device(pci);
                return -ENOMEM;
        }
        pci_write_config_byte(chip->pci, VIA_FUNC_ENABLE,
                              chip->old_legacy & ~(VIA_FUNC_ENABLE_SB|VIA_FUNC_ENABLE_FM));
 
-       if ((err = pci_request_regions(pci, card->driver)) < 0) {
+       err = pci_request_regions(pci, card->driver);
+       if (err < 0) {
                kfree(chip);
                pci_disable_device(pci);
                return err;
        if (ac97_clock >= 8000 && ac97_clock <= 48000)
                chip->ac97_clock = ac97_clock;
 
-       if ((err = snd_via82xx_chip_init(chip)) < 0) {
+       err = snd_via82xx_chip_init(chip);
+       if (err < 0) {
                snd_via82xx_free(chip);
                return err;
        }
 
-       if ((err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops)) < 0) {
+       err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops);
+       if (err < 0) {
                snd_via82xx_free(chip);
                return err;
        }
                goto __error;
        }
                
-       if ((err = snd_via82xx_create(card, pci, chip_type, pci->revision,
-                                     ac97_clock, &chip)) < 0)
+       err = snd_via82xx_create(card, pci, chip_type, pci->revision,
+                                ac97_clock, &chip);
+       if (err < 0)
                goto __error;
        card->private_data = chip;
-       if ((err = snd_via82xx_mixer_new(chip, ac97_quirk)) < 0)
+       err = snd_via82xx_mixer_new(chip, ac97_quirk);
+       if (err < 0)
                goto __error;
 
        if (chip_type == TYPE_VIA686) {
-               if ((err = snd_via686_pcm_new(chip)) < 0 ||
-                   (err = snd_via686_init_misc(chip)) < 0)
+               err = snd_via686_pcm_new(chip);
+               if (err < 0)
+                       goto __error;
+               err = snd_via686_init_misc(chip);
+               if (err < 0)
                        goto __error;
        } else {
                if (chip_type == TYPE_VIA8233A) {
-                       if ((err = snd_via8233a_pcm_new(chip)) < 0)
+                       err = snd_via8233a_pcm_new(chip);
+                       if (err < 0)
                                goto __error;
                        // chip->dxs_fixed = 1; /* FIXME: use 48k for DXS #3? */
                } else {
-                       if ((err = snd_via8233_pcm_new(chip)) < 0)
+                       err = snd_via8233_pcm_new(chip);
+                       if (err < 0)
                                goto __error;
                        if (dxs_support == VIA_DXS_48K)
                                chip->dxs_fixed = 1;
                                chip->dxs_src = 1;
                        }
                }
-               if ((err = snd_via8233_init_misc(chip)) < 0)
+               err = snd_via8233_init_misc(chip);
+               if (err < 0)
                        goto __error;
        }
 
 
        snd_via82xx_proc_init(chip);
 
-       if ((err = snd_card_register(card)) < 0) {
+       err = snd_card_register(card);
+       if (err < 0) {
                snd_card_free(card);
                return err;
        }
 
        
        while (timeout-- > 0) {
                udelay(1);
-               if (!((val = snd_via82xx_codec_xread(chip)) & VIA_REG_AC97_BUSY))
+               val = snd_via82xx_codec_xread(chip);
+               if (!(val & VIA_REG_AC97_BUSY))
                        return val & 0xffff;
        }
        dev_err(chip->card->dev, "codec_ready: codec %i is not ready [0x%x]\n",
 
        runtime->hw = snd_via82xx_hw;
        
-        if ((err = snd_pcm_hw_constraint_list(runtime, 0, SNDRV_PCM_HW_PARAM_RATE,
-                                             &hw_constraints_rates)) < 0)
+       err = snd_pcm_hw_constraint_list(runtime, 0, SNDRV_PCM_HW_PARAM_RATE,
+                                        &hw_constraints_rates);
+       if (err < 0)
                 return err;
 
        /* we may remove following constaint when we modify table entries
           in interrupt */
-       if ((err = snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS)) < 0)
+       err = snd_pcm_hw_constraint_integer(runtime, SNDRV_PCM_HW_PARAM_PERIODS);
+       if (err < 0)
                return err;
 
        runtime->private_data = viadev;
                .wait = snd_via82xx_codec_wait,
        };
 
-       if ((err = snd_ac97_bus(chip->card, 0, &ops, chip, &chip->ac97_bus)) < 0)
+       err = snd_ac97_bus(chip->card, 0, &ops, chip, &chip->ac97_bus);
+       if (err < 0)
                return err;
        chip->ac97_bus->private_free = snd_via82xx_mixer_free_ac97_bus;
        chip->ac97_bus->clock = chip->ac97_clock;
        ac97.scaps = AC97_SCAP_SKIP_AUDIO | AC97_SCAP_POWER_SAVE;
        ac97.num = chip->ac97_secondary;
 
-       if ((err = snd_ac97_mixer(chip->ac97_bus, &ac97, &chip->ac97)) < 0)
+       err = snd_ac97_mixer(chip->ac97_bus, &ac97, &chip->ac97);
+       if (err < 0)
                return err;
 
        return 0;
                schedule_timeout_uninterruptible(1);
        } while (time_before(jiffies, end_time));
 
-       if ((val = snd_via82xx_codec_xread(chip)) & VIA_REG_AC97_BUSY)
+       val = snd_via82xx_codec_xread(chip);
+       if (val & VIA_REG_AC97_BUSY)
                dev_err(chip->card->dev,
                        "AC'97 codec is not ready [0x%x]\n", val);
 
                                 VIA_REG_AC97_SECONDARY_VALID |
                                 (VIA_REG_AC97_CODEC_ID_SECONDARY << VIA_REG_AC97_CODEC_ID_SHIFT));
        do {
-               if ((val = snd_via82xx_codec_xread(chip)) & VIA_REG_AC97_SECONDARY_VALID) {
+               val = snd_via82xx_codec_xread(chip);
+               if (val & VIA_REG_AC97_SECONDARY_VALID) {
                        chip->ac97_secondary = 1;
                        goto __ac97_ok2;
                }
                .dev_free =     snd_via82xx_dev_free,
         };
 
-       if ((err = pci_enable_device(pci)) < 0)
+       err = pci_enable_device(pci);
+       if (err < 0)
                return err;
 
-       if ((chip = kzalloc(sizeof(*chip), GFP_KERNEL)) == NULL) {
+       chip = kzalloc(sizeof(*chip), GFP_KERNEL);
+       if (!chip) {
                pci_disable_device(pci);
                return -ENOMEM;
        }
        chip->pci = pci;
        chip->irq = -1;
 
-       if ((err = pci_request_regions(pci, card->driver)) < 0) {
+       err = pci_request_regions(pci, card->driver);
+       if (err < 0) {
                kfree(chip);
                pci_disable_device(pci);
                return err;
        if (ac97_clock >= 8000 && ac97_clock <= 48000)
                chip->ac97_clock = ac97_clock;
 
-       if ((err = snd_via82xx_chip_init(chip)) < 0) {
+       err = snd_via82xx_chip_init(chip);
+       if (err < 0) {
                snd_via82xx_free(chip);
                return err;
        }
 
-       if ((err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops)) < 0) {
+       err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops);
+       if (err < 0) {
                snd_via82xx_free(chip);
                return err;
        }
                goto __error;
        }
                
-       if ((err = snd_via82xx_create(card, pci, chip_type, pci->revision,
-                                     ac97_clock, &chip)) < 0)
+       err = snd_via82xx_create(card, pci, chip_type, pci->revision,
+                                ac97_clock, &chip);
+       if (err < 0)
                goto __error;
        card->private_data = chip;
-       if ((err = snd_via82xx_mixer_new(chip)) < 0)
+       err = snd_via82xx_mixer_new(chip);
+       if (err < 0)
                goto __error;
 
-       if ((err = snd_via686_pcm_new(chip)) < 0 )
+       err = snd_via686_pcm_new(chip);
+       if (err < 0)
                goto __error;
 
        /* disable interrupts */
 
        snd_via82xx_proc_init(chip);
 
-       if ((err = snd_card_register(card)) < 0) {
+       err = snd_card_register(card);
+       if (err < 0) {
                snd_card_free(card);
                return err;
        }