]> rtime.felk.cvut.cz Git - hercules2020/nv-tegra/linux-4.4.git/commit
sound: soc: tegra: Fix Tegra210 I2S Fsync Polarity
authorJon Hunter <jonathanh@nvidia.com>
Fri, 22 Sep 2017 15:07:19 +0000 (16:07 +0100)
committermobile promotions <svcmobile_promotions@nvidia.com>
Wed, 11 Oct 2017 18:30:49 +0000 (11:30 -0700)
commitff5b4e38117d841e7857e0ecb52710fcff86825b
tree3c0b472a323dccde46f03121f89a19e760904920
parented2cda8d5fc224fe2732b74623f4ffc18d316bab
sound: soc: tegra: Fix Tegra210 I2S Fsync Polarity

The 'normal' polarity of the fsync is dependent on the audio format.
For example, for I2S the 'normal' polarity for the fsync is
falling-edge/low, where as for r/l-justified or dsp modes A/B it is
rising-edge/high. This is detailed in the Tegra210 TRM in the table
titled "Programming I2S to Operate in Various Modes" and also in
the Linux kernel header file for include/sound/soc-dai.h.

The Tegra210 i2s driver always assumes that the fsync is low for
'normal' polarity and high for 'inverted' polarity and does not
account for the audio format. Correct the Tegra210 I2S driver to
set the polarity according the the audio format.

Bug 1788838
Bug 1993738

Change-Id: I5c7395f225ff8c25e2bb277c35e3ecb7a86f36cb
Signed-off-by: Jon Hunter <jonathanh@nvidia.com>
(cherry picked from commit c368229ee949c53dd4fc09eaee40e4441edb5e70)
Reviewed-on: https://git-master.nvidia.com/r/1576272
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bibek Basu <bbasu@nvidia.com>
sound/soc/tegra-alt/tegra210_i2s_alt.c