static int __devinit wm0010_spi_probe(struct spi_device *spi)
 {
-       unsigned long flags;
        unsigned long gpio_flags;
        int ret;
        int trigger;
                return -EINVAL;
        }
 
+       wm0010->state = WM0010_POWER_OFF;
+
        irq = spi->irq;
        if (wm0010->pdata.irq_flags)
                trigger = wm0010->pdata.irq_flags;
        else
                wm0010->board_max_spi_speed = 0;
 
-       spin_lock_irqsave(&wm0010->irq_lock, flags);
-       wm0010->state = WM0010_POWER_OFF;
-       spin_unlock_irqrestore(&wm0010->irq_lock, flags);
-
        ret = snd_soc_register_codec(&spi->dev,
                                     &soc_codec_dev_wm0010, wm0010_dai,
                                     ARRAY_SIZE(wm0010_dai));