Dne 11.3.2011 16:05, Jarkko Nikula napsal(a):
On Fri, 11 Mar 2011 09:58:16 +0100 Prchal Jiří jiri.prchal@aksignal.cz wrote:
So I change file snd-soc-afeb9260.c, diff is attached, and Kconfig and Makefile too. In version 2.6.35.11 it works good, but MMC/SD card doesn't work. (Something is broken it that driver just in this version). I need to work sound and SD card. I thing the problem is somewhere between "tlv320aic3x-codec 0-001a: probe" and "i2c-core: driver [tlv320aic3x-codec] registered". In version 2.6.35.11 there is I2C communication, in 2.6.37 and higher nothing on I2C. I also try to put newer alsa 1.0.24 to kernel 2.6.37.3 without any improvement.
Just to make sure, have you added I2C_BOARD_INFO("tlv320aic3x", 0x1a) to afeb9260_i2c_devices[] in arch/arm/mach-at91/board-afeb-9260v1.c?
Yes, I have it.
Trying to put older alsa (but same version?) from kernel 2.6.35.11 to 2.6.37.3 produce soundcard, but when try to play kernel oops, "cannot dereference null pointer" and freezes.
I try many versions of /* Digital audio interface glue - connects codec <--> CPU */ static struct snd_soc_dai_link afeb9260_dai = { .name = "TLV320AIC3X", //AIC3X .stream_name = "AIC3X", .cpu_dai_name = "atmel-ssc-dai.0", //atmel-ssc-dai .codec_dai_name = "tlv320aic3x-hifi", //aic3x, aic3x-hifi, tlv320aic3x .platform_name = "atmel-pcm-audio", //atmel_pcm-audio .codec_name = "tlv320aic3x-codec.0-001a", //tlv320aic3x-codec.0-0x1a .init = afeb9260_aic3x_init, .ops = &afeb9260_ops, };
codec_name and codec_dai_name look ok here.