On Wed, Sep 27, 2023 at 12:28:29PM +0200, Mark Brown wrote:
On Wed, Sep 27, 2023 at 06:19:48PM +0800, ChiYuan Huang wrote:
On Wed, Sep 27, 2023 at 11:59:31AM +0200, Mark Brown wrote:
Sure, but is that actually a practical design - or if someone is doing this shouldn't it be joined up with the TDM configuration since with just the control it'd only be possible to switch the pins but not change the TDM layout? I'm not sure that this control works as a standalone thing.
I think if two data source input for different scenarios, then the data source switch will become practical. For the standalone usage, keep a device property to decide this may be enough. But consider the future application, to keep this in general mixer control is still usable to meet the complex design.
My concern is that the control might not actually be usable without also changing the TDM mode so we might need the machine driver to add a control which flips the input and also changes the TDM mode - it feels likley that if there are two inputs they won't have identical formats.
Yap, your concern may be correct. This change is really becuase our default register is badly defined. it choose TDM CH12 from 'DATA1' and CH34 from 'DATA2'. If it can choose both default to either one, this doesn't make it confused. Also, there's the another option is 'to tell user if TDM will be used, plase connect 'DATA1' and 'DATA2' together'. But our datasheet did not directly define this.
I'll prepare another patch to define a device property, parsing at probe function and configure this input source source directly in 'set_tdm_slot' API when TDM is chosen to use.
Thanks for all the comment.