On Thu, Oct 28, 2010 at 4:12 AM, Alexander <subaparts@xxxxxxxxx> wrote: > I'm trying to implement new SoC codec in linux-next-20101025 kernel. > > Part of the code: > --- > #if defined(CONFIG_SPI_MASTER) > static int __devinit cs4271_spi_probe(struct spi_device *spi) > { > struct cs4271_private *cs4271; > int ret; > > cs4271 = kzalloc(sizeof *cs4271, GFP_KERNEL); > if (!cs4271) > return -ENOMEM; > > spi_set_drvdata(spi, cs4271); > cs4271->control_data = spi; > cs4271->bus_type = SND_SOC_SPI; > > ret = snd_soc_register_codec(&spi->dev, &soc_codec_dev_cs4271, > &cs4271_dai, 1); Sorry for this maybe I am wrong but shouldn't this bee with {} > if (ret < 0) { > kfree(cs4271); > return ret; } Thanks Victor Rodriguez > } > > static int __devexit cs4271_spi_remove(struct spi_device *spi) > { > snd_soc_unregister_codec(&spi->dev); > kfree(spi_get_drvdata(spi)); > return 0; > } > > static struct spi_driver cs4271_spi_driver = { > .driver = { > .name = "cs4271-codec", > .owner = THIS_MODULE, > }, > .probe = cs4271_spi_probe, > .remove = __devexit_p(cs4271_spi_remove), > }; > #endif /* defined(CONFIG_SPI_MASTER) */ > --- > > So, codec name I expect is "cs4271-codec", but codec registered with > name "spi0.0" > > Here is boot log: > --- > Jan 1 00:00:04 miniCio user.debug kernel: cs4271-codec spi0.0: codec > register spi0.0 > Jan 1 00:00:04 miniCio user.debug kernel: cs4271-codec spi0.0: dai > register spi0.0 #1 > Jan 1 00:00:04 miniCio user.debug kernel: Registered DAI 'cs4271-hifi' > Jan 1 00:00:04 miniCio user.debug kernel: Registered codec 'spi0.0' > Jan 1 00:00:04 miniCio user.info kernel: Codec driver for CS4271 > registered > Jan 1 00:00:04 miniCio user.debug kernel: ep93xx-pcm-audio > ep93xx-pcm-audio: platform register ep93xx-pcm-audio > Jan 1 00:00:04 miniCio user.debug kernel: Registered platform > 'ep93xx-pcm-audio' > Jan 1 00:00:04 miniCio user.debug kernel: ep93xx-i2s ep93xx-i2s: dai > register ep93xx-i2s > Jan 1 00:00:04 miniCio user.debug kernel: Registered DAI 'ep93xx-i2s' > Jan 1 00:00:04 miniCio user.debug kernel: soc-audio soc-audio: binding > CS4271 at idx 0 > Jan 1 00:00:04 miniCio user.debug kernel: soc-audio soc-audio: CODEC > cs4271-codec not registered > Jan 1 00:00:04 miniCio user.debug kernel: soc-audio soc-audio: > Registered card 'EDB93XX' > Jan 1 00:00:04 miniCio user.info kernel: EDB93xx Machine ALSA Driver > Jan 1 00:00:04 miniCio user.info kernel: ALSA device list: > Jan 1 00:00:04 miniCio user.info kernel: No soundcards found. > --- > > What am I doing wrong? > > Alexander. > > > > _______________________________________________ > Alsa-devel mailing list > Alsa-devel@xxxxxxxxxxxxxxxx > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel