On Fri, May 20, 2016 at 12:30:43PM +0000, kernel@martin.sperl.org wrote:
From: Martin Sperl kernel@martin.sperl.org
Simple_card does require under some circumstances the ability to configure certain hw_parameters based on clocks, bits, channels.
This patchset adds a generic way to configure these kind of things via the device tree easily. This patchset implements this for simple_card, but other drivers can just as easily make use of this.
I'm not familiar with the class of hardware here.
What exactly needs to be configured, under which situations?
How varied is this in practice?
Why does this make more sense than having individual drivers?
For now we have the following matchers and actions:
- matchers:
- match_sample_bits
- match_rate
- match_channels
- actions:
- set_fixed_bclk_size
As a note: the available matching rules and action rules right now are hard-coded, but this could in principle get extended to be more dynamic via kallsyms_lookup_name that would lookup the requested symbol and assume it is a struct asoc_generic_hw_params_method, on which it could apply several sanity-checks before using the pointers for real.
I'm hoping that's a joke. ;)
Thanks, Mark.