#include <linux/platform_device.h>
 #include <linux/io.h>
 #include <linux/slab.h>
+#include <linux/string.h>
 #include <linux/module.h>
 
 #include <asm/ip32/ip32_ints.h>
                return err;
 
        pcm->private_data = chip;
-       strcpy(pcm->name, "SGI O2 DAC1");
+       strscpy(pcm->name, "SGI O2 DAC1");
 
        /* set operators */
        snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK,
                return err;
 
        pcm->private_data = chip;
-       strcpy(pcm->name, "SGI O2 DAC2");
+       strscpy(pcm->name, "SGI O2 DAC2");
 
        /* set operators */
        snd_pcm_set_ops(pcm, SNDRV_PCM_STREAM_PLAYBACK,
                return err;
        }
 
-       strcpy(card->driver, "SGI O2 Audio");
-       strcpy(card->shortname, "SGI O2 Audio");
+       strscpy(card->driver, "SGI O2 Audio");
+       strscpy(card->shortname, "SGI O2 Audio");
        sprintf(card->longname, "%s irq %i-%i",
                card->shortname,
                MACEISA_AUDIO1_DMAT_IRQ,