Hello Janusz!
Since you have not sent patch for the OMAP McBSP part, I assume that it is working correctly on OMAP1. Thanks for taking time for testing it!
On Wednesday 11 August 2010 02:29:32 ext Janusz Krzysztofik wrote:
After a static codec pointer removal from the sound/soc/codecs/cx20442.c code, both codec and card specific tty line discipline functions lost their access to the codec structure data. Arrange for passing the pointer back to the codec tty ldisc bits from the card initialization code.
Update incosistent codec device naming in the card code.
Since a new element, control_data, has been added to the cx20442_priv structure, it looks like the old snd_soc_codec->control_data may be scheduled for removal. To avoid problems in the near future, use the cx20442_priv->control_data instead of the snd_soc_codec->control_data throughout the cx20442 code.
I believe that the snd_soc_codec->control_data is not going away, the control_data in the private struct is used to pass this information from bus probe to soc probe within the private structure. If I'm not wrong, the reasoning is that sever chip can have I2C/SPI/etc control interfaces, and in this way the soc does not need to know anything about it, since the probe for the used bus will set the needed things for later use. I might misunderstood something, Mark or Liam will correct me for sure ;)
In the ams-delta card code, check for the snd_soc_codec->hw_write not NULL instead of the snd_soc_codec->control_data.
Created and tested on Amstrad Delta against git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6.git, commit a212dd5b2e1da045cbf423c70c87f48265531de4.