On Mon, Sep 14, 2009 at 12:00:42PM -0500, Lopez Cruz, Misael wrote:
CODEC driver starts a wait_for_completion just after calling external power-up callback. It's signaled as complete when servicing READYINT interrupt.
When you convert to registering as a normal driver you should do this waiting before registering the CODEC and DAI with the core - that will stop the ASoC card coming up before the CODEC is ready and means that you don't need to have a thread sitting blocked on the startup completing.
MACHINE drivers should request IRQ line used in corresponding hardware platform and initialize workqueue and completion structs of twl6030_setup_data as well.
I worry what will happen when someone builds a machine which doesn't bother hooking up the interrupt line - is it possible to poll for completion of startup if no interrupt is provided? If they aren't using the jack and accessory detect functionality I can see someone not bothering to hook it up. OTOH that could always be added later on if required.