On 01/23/2015 08:09 PM, Manuel Lauss wrote:
On Fri, Jan 23, 2015 at 4:21 PM, Lars-Peter Clausen lars@metafoo.de wrote:
The wm97xx touchscreen driver will bind itself to the snd_ac97 device registered by CODEC drivers and expects that the device has already been reset by the CODEC driver. Previous to commit 6794f709b712 ("ASoC: ac97: Drop delayed device registration") the snd_ac97 device was only registered after the CODEC driver probe function had finished running, but starting with the commit it is registered within snd_soc_new_ac97_codec(). This breaks the touchscreen driver as the reset is no longer performed before the touchscreen driver probe function runs. This patch series introduces a new function snd_soc_alloc_ac97_codec() which allocates the snd_ac97 device, but does not yet register it yet. This allows the CODEC drivers to perform the reset before the device is registered.
The series is meant to perform a minimum amount of changes while fixing the issue to prevent introducing other regressions. I have a few more patches that consolidate the reset handling in the drivers and puts it into the core in snd_soc_new_ac97_codec() which makes the split in the drivers unnecessary, but that's something for next and not for stable.
Manuel can you give this another round of testing?
Works very well.
Tested-by: Manuel Lauss manuel.lauss@gmail.com
Thanks.
Just noticed I forgot to add the Wolfson guys to Cc, done now.
- Lars