params = kmalloc(sizeof(*params), GFP_KERNEL);
        sparams = kmalloc(sizeof(*sparams), GFP_KERNEL);
        if (!sw_params || !params || !sparams) {
-               snd_printd("No memory\n");
+               pcm_dbg(substream->pcm, "No memory\n");
                err = -ENOMEM;
                goto failure;
        }
        }
        err = snd_pcm_hw_param_mask(substream, sparams, SNDRV_PCM_HW_PARAM_ACCESS, &mask);
        if (err < 0) {
-               snd_printd("No usable accesses\n");
+               pcm_dbg(substream->pcm, "No usable accesses\n");
                err = -EINVAL;
                goto failure;
        }
                                break;
                }
                if ((__force int)sformat > (__force int)SNDRV_PCM_FORMAT_LAST) {
-                       snd_printd("Cannot find a format!!!\n");
+                       pcm_dbg(substream->pcm, "Cannot find a format!!!\n");
                        err = -EINVAL;
                        goto failure;
                }
                if ((err = snd_pcm_plug_format_plugins(substream,
                                                       params, 
                                                       sparams)) < 0) {
-                       snd_printd("snd_pcm_plug_format_plugins failed: %i\n", err);
+                       pcm_dbg(substream->pcm,
+                               "snd_pcm_plug_format_plugins failed: %i\n", err);
                        snd_pcm_oss_plugin_clear(substream);
                        goto failure;
                }
                if (runtime->oss.plugin_first) {
                        struct snd_pcm_plugin *plugin;
                        if ((err = snd_pcm_plugin_build_io(substream, sparams, &plugin)) < 0) {
-                               snd_printd("snd_pcm_plugin_build_io failed: %i\n", err);
+                               pcm_dbg(substream->pcm,
+                                       "snd_pcm_plugin_build_io failed: %i\n", err);
                                snd_pcm_oss_plugin_clear(substream);
                                goto failure;
                        }
        snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_DROP, NULL);
 
        if ((err = snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_HW_PARAMS, sparams)) < 0) {
-               snd_printd("HW_PARAMS failed: %i\n", err);
+               pcm_dbg(substream->pcm, "HW_PARAMS failed: %i\n", err);
                goto failure;
        }
 
        }
 
        if ((err = snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_SW_PARAMS, sw_params)) < 0) {
-               snd_printd("SW_PARAMS failed: %i\n", err);
+               pcm_dbg(substream->pcm, "SW_PARAMS failed: %i\n", err);
                goto failure;
        }
 
 
        err = snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_PREPARE, NULL);
        if (err < 0) {
-               snd_printd("snd_pcm_oss_prepare: SNDRV_PCM_IOCTL_PREPARE failed\n");
+               pcm_dbg(substream->pcm,
+                       "snd_pcm_oss_prepare: SNDRV_PCM_IOCTL_PREPARE failed\n");
                return err;
        }
        runtime->oss.prepare = 0;
                if (runtime->status->state == SNDRV_PCM_STATE_XRUN ||
                    runtime->status->state == SNDRV_PCM_STATE_SUSPENDED) {
 #ifdef OSS_DEBUG
-                       if (runtime->status->state == SNDRV_PCM_STATE_XRUN)
-                               printk(KERN_DEBUG "pcm_oss: write: "
-                                      "recovering from XRUN\n");
-                       else
-                               printk(KERN_DEBUG "pcm_oss: write: "
-                                      "recovering from SUSPEND\n");
+                       pcm_dbg(substream->pcm,
+                               "pcm_oss: write: recovering from %s\n",
+                               runtime->status->state == SNDRV_PCM_STATE_XRUN ?
+                               "XRUN" : "SUSPEND");
 #endif
                        ret = snd_pcm_oss_prepare(substream);
                        if (ret < 0)
                if (runtime->status->state == SNDRV_PCM_STATE_XRUN ||
                    runtime->status->state == SNDRV_PCM_STATE_SUSPENDED) {
 #ifdef OSS_DEBUG
-                       if (runtime->status->state == SNDRV_PCM_STATE_XRUN)
-                               printk(KERN_DEBUG "pcm_oss: read: "
-                                      "recovering from XRUN\n");
-                       else
-                               printk(KERN_DEBUG "pcm_oss: read: "
-                                      "recovering from SUSPEND\n");
+                       pcm_dbg(substream->pcm,
+                               "pcm_oss: read: recovering from %s\n",
+                               runtime->status->state == SNDRV_PCM_STATE_XRUN ?
+                               "XRUN" : "SUSPEND");
 #endif
                        ret = snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_DRAIN, NULL);
                        if (ret < 0)
                if (runtime->status->state == SNDRV_PCM_STATE_XRUN ||
                    runtime->status->state == SNDRV_PCM_STATE_SUSPENDED) {
 #ifdef OSS_DEBUG
-                       if (runtime->status->state == SNDRV_PCM_STATE_XRUN)
-                               printk(KERN_DEBUG "pcm_oss: writev: "
-                                      "recovering from XRUN\n");
-                       else
-                               printk(KERN_DEBUG "pcm_oss: writev: "
-                                      "recovering from SUSPEND\n");
+                       pcm_dbg(substream->pcm,
+                               "pcm_oss: writev: recovering from %s\n",
+                               runtime->status->state == SNDRV_PCM_STATE_XRUN ?
+                               "XRUN" : "SUSPEND");
 #endif
                        ret = snd_pcm_oss_prepare(substream);
                        if (ret < 0)
                if (runtime->status->state == SNDRV_PCM_STATE_XRUN ||
                    runtime->status->state == SNDRV_PCM_STATE_SUSPENDED) {
 #ifdef OSS_DEBUG
-                       if (runtime->status->state == SNDRV_PCM_STATE_XRUN)
-                               printk(KERN_DEBUG "pcm_oss: readv: "
-                                      "recovering from XRUN\n");
-                       else
-                               printk(KERN_DEBUG "pcm_oss: readv: "
-                                      "recovering from SUSPEND\n");
+                       pcm_dbg(substream->pcm,
+                               "pcm_oss: readv: recovering from %s\n",
+                               runtime->status->state == SNDRV_PCM_STATE_XRUN ?
+                               "XRUN" : "SUSPEND");
 #endif
                        ret = snd_pcm_kernel_ioctl(substream, SNDRV_PCM_IOCTL_DRAIN, NULL);
                        if (ret < 0)
        init_waitqueue_entry(&wait, current);
        add_wait_queue(&runtime->sleep, &wait);
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "sync1: size = %li\n", size);
+       pcm_dbg(substream->pcm, "sync1: size = %li\n", size);
 #endif
        while (1) {
                result = snd_pcm_oss_write2(substream, runtime->oss.buffer, size, 1);
                        break;
                }
                if (res == 0) {
-                       snd_printk(KERN_ERR "OSS sync error - DMA timeout\n");
+                       pcm_err(substream->pcm,
+                               "OSS sync error - DMA timeout\n");
                        result = -EIO;
                        break;
                }
                mutex_lock(&runtime->oss.params_lock);
                if (runtime->oss.buffer_used > 0) {
 #ifdef OSS_DEBUG
-                       printk(KERN_DEBUG "sync: buffer_used\n");
+                       pcm_dbg(substream->pcm, "sync: buffer_used\n");
 #endif
                        size = (8 * (runtime->oss.period_bytes - runtime->oss.buffer_used) + 7) / width;
                        snd_pcm_format_set_silence(format,
                        }
                } else if (runtime->oss.period_ptr > 0) {
 #ifdef OSS_DEBUG
-                       printk(KERN_DEBUG "sync: period_ptr\n");
+                       pcm_dbg(substream->pcm, "sync: period_ptr\n");
 #endif
                        size = runtime->oss.period_bytes - runtime->oss.period_ptr;
                        snd_pcm_format_set_silence(format,
        int err, cmd;
 
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "pcm_oss: trigger = 0x%x\n", trigger);
+       pcm_dbg(substream->pcm, "pcm_oss: trigger = 0x%x\n", trigger);
 #endif
        
        psubstream = pcm_oss_file->streams[SNDRV_PCM_STREAM_PLAYBACK];
        }
 
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "pcm_oss: space: bytes = %i, fragments = %i, "
-              "fragstotal = %i, fragsize = %i\n",
-              info.bytes, info.fragments, info.fragstotal, info.fragsize);
+       pcm_dbg(substream->pcm,
+               "pcm_oss: space: bytes = %i, fragments = %i, fragstotal = %i, fragsize = %i\n",
+               info.bytes, info.fragments, info.fragstotal, info.fragsize);
 #endif
        if (copy_to_user(_info, &info, sizeof(info)))
                return -EFAULT;
 static int snd_pcm_oss_get_mapbuf(struct snd_pcm_oss_file *pcm_oss_file, int stream, struct buffmem_desc __user * _info)
 {
        // it won't be probably implemented
-       // snd_printd("TODO: snd_pcm_oss_get_mapbuf\n");
+       // pr_debug("TODO: snd_pcm_oss_get_mapbuf\n");
        return -EINVAL;
 }
 
        if (((cmd >> 8) & 0xff) != 'P')
                return -EINVAL;
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "pcm_oss: ioctl = 0x%x\n", cmd);
+       pr_debug("pcm_oss: ioctl = 0x%x\n", cmd);
 #endif
        switch (cmd) {
        case SNDCTL_DSP_RESET:
        case SNDCTL_DSP_PROFILE:
                return 0;       /* silently ignore */
        default:
-               snd_printd("pcm_oss: unknown command = 0x%x\n", cmd);
+               pr_debug("pcm_oss: unknown command = 0x%x\n", cmd);
        }
        return -EINVAL;
 }
 #else
        {
                ssize_t res = snd_pcm_oss_read1(substream, buf, count);
-               printk(KERN_DEBUG "pcm_oss: read %li bytes "
-                      "(returned %li bytes)\n", (long)count, (long)res);
+               pcm_dbg(substream->pcm,
+                       "pcm_oss: read %li bytes (returned %li bytes)\n",
+                       (long)count, (long)res);
                return res;
        }
 #endif
        substream->f_flags = file->f_flags & O_NONBLOCK;
        result = snd_pcm_oss_write1(substream, buf, count);
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "pcm_oss: write %li bytes (wrote %li bytes)\n",
+       pcm_dbg(substream->pcm, "pcm_oss: write %li bytes (wrote %li bytes)\n",
               (long)count, (long)result);
 #endif
        return result;
        int err;
 
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "pcm_oss: mmap begin\n");
+       pr_debug("pcm_oss: mmap begin\n");
 #endif
        pcm_oss_file = file->private_data;
        switch ((area->vm_flags & (VM_READ | VM_WRITE))) {
        runtime->silence_threshold = 0;
        runtime->silence_size = 0;
 #ifdef OSS_DEBUG
-       printk(KERN_DEBUG "pcm_oss: mmap ok, bytes = 0x%x\n",
+       pr_debug("pcm_oss: mmap ok, bytes = 0x%x\n",
               runtime->oss.mmap_bytes);
 #endif
        /* In mmap mode we never stop */
        if (snd_register_oss_device(SNDRV_OSS_DEVICE_TYPE_PCM,
                                    pcm->card, index, &snd_pcm_oss_f_reg,
                                    pcm) < 0) {
-               snd_printk(KERN_ERR "unable to register OSS PCM device %i:%i\n",
+               pcm_err(pcm, "unable to register OSS PCM device %i:%i\n",
                           pcm->card->number, pcm->device);
        }
 }
        /* check device map table */
        for (i = 0; i < SNDRV_CARDS; i++) {
                if (dsp_map[i] < 0 || dsp_map[i] >= SNDRV_PCM_DEVICES) {
-                       snd_printk(KERN_ERR "invalid dsp_map[%d] = %d\n",
+                       pr_err("ALSA: pcm_oss: invalid dsp_map[%d] = %d\n",
                                   i, dsp_map[i]);
                        dsp_map[i] = 0;
                }
                if (adsp_map[i] < 0 || adsp_map[i] >= SNDRV_PCM_DEVICES) {
-                       snd_printk(KERN_ERR "invalid adsp_map[%d] = %d\n",
+                       pr_err("ALSA: pcm_oss: invalid adsp_map[%d] = %d\n",
                                   i, adsp_map[i]);
                        adsp_map[i] = 1;
                }