From: ext Mark Brown [broonie@opensource.wolfsonmicro.com] Sent: Wednesday, January 05, 2011 18:39 To: Jarkko Nikula Cc: alsa-devel@alsa-project.org; Liam Girdwood; Ujfalusi Peter (Nokia-MS/Tampere) Subject: Re: [PATCH] ASoC: omap: rx51: Add stereo output support to audio jack
As far as I remember from the previous discussion that had been that making it a CODEC driver would be the simplest thing. Peter said in reply to my mail saying this:
| At least with my device I need to add some delay before enabling the amp, so | anyway I need to ahve the DAPM_HP in the machine driver.
but it'd seem that the amp driver could do this just as well, possibly based off platform data?
Yes that could be done with platform data (the additional delay after amp enable). The only thing is that the tpa6130a2 driver must have DAPM_HP widget. If we do that, than it would be also useful to have the SOC_DAPM_PIN_SWITCH() defined in the tpa6130a2 driver, which might cause some problems with the rx51 machine driver, as Jarkko handling the pins within that. In rx51, we have several functions on the jack, so SOC_DAPM_PIN_SWITCH() will not going to work there, but in my board, I'm using that. While we are here, I'd also like to customize the DAPM_HP name as well, since I do not want to have TPA6XXXX HP or something visible for user space. Also: Calling dapm_sync from machine driver might cause some locking issues: http://mailman.alsa-project.org/pipermail/alsa-devel/2010-November/033362.ht...
I have another issue with my setup, which needs the exported enable/disable function, which is the playback start, while the codec BIAS is on, since I need to do some tricks to remove some unwanted clicks.
We can add optional DAPM widget to the driver, as I already commented, I have no problems with that, but it has to be really optional.
Peter