Loading sound/soc/codecs/wm0010.c +27 −27 Original line number Diff line number Diff line Loading @@ -799,14 +799,35 @@ static irqreturn_t wm0010_irq(int irq, void *data) static int wm0010_probe(struct snd_soc_codec *codec) { struct wm0010_priv *wm0010 = snd_soc_codec_get_drvdata(codec); struct spi_device *spi = to_spi_device(wm0010->dev); wm0010->codec = codec; return 0; } static int __devinit wm0010_spi_probe(struct spi_device *spi) { unsigned long flags; unsigned long gpio_flags; int ret; int trigger; int irq; struct wm0010_priv *wm0010; wm0010->codec = codec; wm0010 = devm_kzalloc(&spi->dev, sizeof(*wm0010), GFP_KERNEL); if (!wm0010) return -ENOMEM; mutex_init(&wm0010->lock); spin_lock_init(&wm0010->irq_lock); spi_set_drvdata(spi, wm0010); wm0010->dev = &spi->dev; if (dev_get_platdata(&spi->dev)) memcpy(&wm0010->pdata, dev_get_platdata(&spi->dev), sizeof(wm0010->pdata)); init_completion(&wm0010->boot_completion); Loading Loading @@ -850,7 +871,7 @@ static int wm0010_probe(struct snd_soc_codec *codec) } } else { dev_err(wm0010->dev, "No reset GPIO configured\n"); return ret; return -EINVAL; } irq = spi->irq; Loading @@ -862,9 +883,11 @@ static int wm0010_probe(struct snd_soc_codec *codec) ret = request_threaded_irq(irq, NULL, wm0010_irq, trigger, "wm0010", wm0010); if (ret) if (ret) { dev_err(wm0010->dev, "Failed to request IRQ %d: %d\n", irq, ret); return ret; } wm0010->irq = irq; if (spi->max_speed_hz) Loading @@ -876,29 +899,6 @@ static int wm0010_probe(struct snd_soc_codec *codec) wm0010->state = WM0010_POWER_OFF; spin_unlock_irqrestore(&wm0010->irq_lock, flags); return 0; } static int __devinit wm0010_spi_probe(struct spi_device *spi) { struct wm0010_priv *wm0010; int ret; wm0010 = devm_kzalloc(&spi->dev, sizeof(*wm0010), GFP_KERNEL); if (!wm0010) return -ENOMEM; mutex_init(&wm0010->lock); spin_lock_init(&wm0010->irq_lock); spi_set_drvdata(spi, wm0010); wm0010->dev = &spi->dev; if (dev_get_platdata(&spi->dev)) memcpy(&wm0010->pdata, dev_get_platdata(&spi->dev), sizeof(wm0010->pdata)); ret = snd_soc_register_codec(&spi->dev, &soc_codec_dev_wm0010, wm0010_dai, ARRAY_SIZE(wm0010_dai)); Loading Loading
sound/soc/codecs/wm0010.c +27 −27 Original line number Diff line number Diff line Loading @@ -799,14 +799,35 @@ static irqreturn_t wm0010_irq(int irq, void *data) static int wm0010_probe(struct snd_soc_codec *codec) { struct wm0010_priv *wm0010 = snd_soc_codec_get_drvdata(codec); struct spi_device *spi = to_spi_device(wm0010->dev); wm0010->codec = codec; return 0; } static int __devinit wm0010_spi_probe(struct spi_device *spi) { unsigned long flags; unsigned long gpio_flags; int ret; int trigger; int irq; struct wm0010_priv *wm0010; wm0010->codec = codec; wm0010 = devm_kzalloc(&spi->dev, sizeof(*wm0010), GFP_KERNEL); if (!wm0010) return -ENOMEM; mutex_init(&wm0010->lock); spin_lock_init(&wm0010->irq_lock); spi_set_drvdata(spi, wm0010); wm0010->dev = &spi->dev; if (dev_get_platdata(&spi->dev)) memcpy(&wm0010->pdata, dev_get_platdata(&spi->dev), sizeof(wm0010->pdata)); init_completion(&wm0010->boot_completion); Loading Loading @@ -850,7 +871,7 @@ static int wm0010_probe(struct snd_soc_codec *codec) } } else { dev_err(wm0010->dev, "No reset GPIO configured\n"); return ret; return -EINVAL; } irq = spi->irq; Loading @@ -862,9 +883,11 @@ static int wm0010_probe(struct snd_soc_codec *codec) ret = request_threaded_irq(irq, NULL, wm0010_irq, trigger, "wm0010", wm0010); if (ret) if (ret) { dev_err(wm0010->dev, "Failed to request IRQ %d: %d\n", irq, ret); return ret; } wm0010->irq = irq; if (spi->max_speed_hz) Loading @@ -876,29 +899,6 @@ static int wm0010_probe(struct snd_soc_codec *codec) wm0010->state = WM0010_POWER_OFF; spin_unlock_irqrestore(&wm0010->irq_lock, flags); return 0; } static int __devinit wm0010_spi_probe(struct spi_device *spi) { struct wm0010_priv *wm0010; int ret; wm0010 = devm_kzalloc(&spi->dev, sizeof(*wm0010), GFP_KERNEL); if (!wm0010) return -ENOMEM; mutex_init(&wm0010->lock); spin_lock_init(&wm0010->irq_lock); spi_set_drvdata(spi, wm0010); wm0010->dev = &spi->dev; if (dev_get_platdata(&spi->dev)) memcpy(&wm0010->pdata, dev_get_platdata(&spi->dev), sizeof(wm0010->pdata)); ret = snd_soc_register_codec(&spi->dev, &soc_codec_dev_wm0010, wm0010_dai, ARRAY_SIZE(wm0010_dai)); Loading