On 09/07/18 12:14, Mark Brown wrote:
+static const struct component_master_ops sdm845_ops = {
+ .bind = sdm845_bind,
+ .unbind = sdm845_unbind,
+};
Why is this using the component stuff rather than the normal support for
finding the components of audio cards?
Could you elaborate this please?
Do you mean something like snd_soc_lookup_component()? Or in general
audio card binding during startup.
AFAIU, The issue with that mechanism or EPROBEDEFER is that it works
only for first time.. for the second time(restart usecase) there are no
hooks like bind/unbind.
The reason why we chose to use component framework is because of bind
and unbind functionality. Am more than happy to rework on this if there
is already a alternative mechanism in ASoC which can provide this.
The design we are aiming at is:
1> audio card to deregister when any of the DSP audio services go DOWN.
2> re-register audio card only when all the DSP audio services are UP.
Usecase is something like DSP start-stop or restart due to fatal errors.
thanks,
srini
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html