On Wed, Jun 16, 2021 at 12:00 AM Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com wrote:
On 6/15/21 10:47 AM, Cheng-yi Chiang wrote:
Hi Tzung-Bi,
On a platform, the four max98357a amps will be controlled by only one codec device, as GPIO for SD_MODE is shared by all amps and is the only thing to be controlled. In this sense, I think we can treat max98357a DAI as if it supports four channels. I understand that this solution is not scalable, because one can control as many amps as they want. Theoretically, the number of supported channels by this codec device is unlimited. I found that rt1015.c has similar usage. Do you have a better suggestion to support this kind of use case ? Thanks!
please don't top-post...
Hi Pierre-Louis,
I am sorry about that!
I don't think it's correct to declare 4-channel support at the individual codec DAI level when in practice each device will be provided with a TDM mask that selects two slots.
On this platform there is no TDM support, so there were two I2S data lines.
This is confusing device capabilities and TDM link configuration.
I see that in most of the use cases of multiple amps, we should use codecs and num_codecs of the link. But in this case we only want one codec to control the only GPIO shared by 4 max98357a amps I think we should be able to use 1 max98357 codec and 3 dummy codec to fulfill this use case. Not sure if the number of dummy codec would really matter. With num_codec > 1 we should be able to bypass the channel checking and just use the channel from CPU DAI. Thanks for the suggestion.
On Tue, Jun 1, 2021 at 2:20 PM Tzung-Bi Shih tzungbi@google.com wrote:
On Wed, May 26, 2021 at 11:47 PM Judy Hsiao judyhsiao@chromium.org wrote:
Sets channels_max to 4 to support QUAD channel.
Could you point out probably the up-to-date MAX98357A datasheet for 4-channel support?
On a related note, from the public datasheet I could find[1], "Table 5" only shows 2 channel's configuration.