On Wed, Aug 18, 2021 at 01:09:44PM -0500, Pierre-Louis Bossart wrote: > I initially looked at the component framework to try to express > dependencies. It's really not clear to me if this is the 'right' > direction, for ASoC-based solutions we already have components that > register with a core. Historically (long before both deferred probe and the component framework) ASoC used to implement a mechanism that essentially did deferred probe for the dependencies - it'd maintain it's own lists of dependencies and then tell the machine driver and all the components when the card was ready. Once deferred probe was there we dropped all the open coded deferral stuff since it was just reimplementing what deferred probe does in a slightly more complicated fashion (it tracked the dependencies in a finer grained manner, though the result wasn't any different). See b19e6e7b76 (ASoC: core: Use driver core probe deferral) for the conversion. What ASoC is doing with the cards is fundamentally the same thing as what the component helpers are doing, we could in theory convert to using that but unlike with probe deferral it doesn't really save us any work and we'd still need all the card level tracking we've got to connect the various bits of the card together and order things. If we were starting from scratch we would probably use components but there's far more pressing things to be getting on with otherwise.
Attachment:
signature.asc
Description: PGP signature