/* set buffer address */
        s->buffer_addr = substream->runtime->dma_addr;
        if (s->buffer_addr & 0x3) {
-               snd_printk(KERN_ERR "oh my, not aligned\n");
+               dev_err(substream->pcm->card->dev, "oh my, not aligned\n");
                s->buffer_addr = s->buffer_addr & ~0x3;
        }
        return 0;
                cpu_relax();
        } while (i-- > 0);
 
-       snd_printk(KERN_ERR "ac97 serial bus busy\n");
+       dev_err(chip->card->dev, "ac97 serial bus busy\n");
        return 1;
 }
 
                delay1 += 10;
                delay2 += 100;
 
-               snd_printd("maestro3: retrying codec reset with delays of %d and %d ms\n",
+               dev_dbg(chip->card->dev,
+                       "retrying codec reset with delays of %d and %d ms\n",
                           delay1, delay2);
        }
 
        address = 0x1100 + ((data_bytes/2) * index);
 
        if ((address + (data_bytes/2)) >= 0x1c00) {
-               snd_printk(KERN_ERR "no memory for %d bytes at ind %d (addr 0x%x)\n",
+               dev_err(chip->card->dev,
+                       "no memory for %d bytes at ind %d (addr 0x%x)\n",
                           data_bytes, index, address);
                return -ENOMEM;
        }
        pci_set_power_state(pci, PCI_D0);
        pci_restore_state(pci);
        if (pci_enable_device(pci) < 0) {
-               printk(KERN_ERR "maestor3: pci_enable_device failed, "
-                      "disabling device\n");
+               dev_err(dev, "pci_enable_device failed, disabling device\n");
                snd_card_disconnect(card);
                return -EIO;
        }
        /* check, if we can restrict PCI DMA transfers to 28 bits */
        if (pci_set_dma_mask(pci, DMA_BIT_MASK(28)) < 0 ||
            pci_set_consistent_dma_mask(pci, DMA_BIT_MASK(28)) < 0) {
-               snd_printk(KERN_ERR "architecture does not support 28bit PCI busmaster DMA\n");
+               dev_err(card->dev,
+                       "architecture does not support 28bit PCI busmaster DMA\n");
                pci_disable_device(pci);
                return -ENXIO;
        }
        else {
                quirk = snd_pci_quirk_lookup(pci, m3_amp_quirk_list);
                if (quirk) {
-                       snd_printdd(KERN_INFO
-                                   "maestro3: set amp-gpio for '%s'\n",
-                                   snd_pci_quirk_name(quirk));
+                       dev_info(card->dev, "set amp-gpio for '%s'\n",
+                                snd_pci_quirk_name(quirk));
                        chip->amp_gpio = quirk->value;
                } else if (chip->allegro_flag)
                        chip->amp_gpio = GPO_EXT_AMP_ALLEGRO;
 
        quirk = snd_pci_quirk_lookup(pci, m3_irda_quirk_list);
        if (quirk) {
-               snd_printdd(KERN_INFO
-                           "maestro3: enabled irda workaround for '%s'\n",
-                           snd_pci_quirk_name(quirk));
+               dev_info(card->dev, "enabled irda workaround for '%s'\n",
+                        snd_pci_quirk_name(quirk));
                chip->irda_workaround = 1;
        }
        quirk = snd_pci_quirk_lookup(pci, m3_hv_quirk_list);
 
        if (request_irq(pci->irq, snd_m3_interrupt, IRQF_SHARED,
                        KBUILD_MODNAME, chip)) {
-               snd_printk(KERN_ERR "unable to grab IRQ %d\n", pci->irq);
+               dev_err(card->dev, "unable to grab IRQ %d\n", pci->irq);
                snd_m3_free(chip);
                return -ENOMEM;
        }
 #ifdef CONFIG_PM_SLEEP
        chip->suspend_mem = vmalloc(sizeof(u16) * (REV_B_CODE_MEMORY_LENGTH + REV_B_DATA_MEMORY_LENGTH));
        if (chip->suspend_mem == NULL)
-               snd_printk(KERN_WARNING "can't allocate apm buffer\n");
+               dev_warn(card->dev, "can't allocate apm buffer\n");
 #endif
 
        if ((err = snd_device_new(card, SNDRV_DEV_LOWLEVEL, chip, &ops)) < 0) {
        if (chip->hv_config & HV_CTRL_ENABLE) {
                err = snd_m3_input_register(chip);
                if (err)
-                       snd_printk(KERN_WARNING "Input device registration "
-                               "failed with error %i", err);
+                       dev_warn(card->dev,
+                                "Input device registration failed with error %i",
+                                err);
        }
 #endif
 
                                  MPU401_INFO_INTEGRATED | MPU401_INFO_IRQ_HOOK,
                                  -1, &chip->rmidi);
        if (err < 0)
-               printk(KERN_WARNING "maestro3: no MIDI support.\n");
+               dev_warn(card->dev, "no MIDI support.\n");
 #endif
 
        pci_set_drvdata(pci, card);