This series addresses two issues with TDA998x that have been identified: 1) Peter found that the I2S format was not being explicitly set, and retains its value from whatever was previously running on the platform. Work around this by implementing support for setting the I2S format from the DAI format, rather than merely defaulting the register back to its power-on value. 2) Sven found that TDA998x does not work on his Freescale platform, which always uses a 64·fs bitclock. The TDA998x driver was deriving this information from the sample width, which, while it works for Beagle Bone Black, does not allow the driver to be used with other I2S sources that may have different behaviours. To work around that, we implement support for snd_soc_dai_set_bclk_ratio() in hdmi-codec, and propagate its value to TDA998x and other HDMI codecs via a new member. However, since snd_soc_dai_set_bclk_ratio() is never called, we need to avoid breaking any existing users, so we detect the lack of call by an impossible zero value, and subsitute a value corresponding with the TDA998x's old behaviour. It is hoped that snd_soc_dai_set_bclk_ratio() will see more adoption in ASoC, and the TDA998x specific defaulting can be removed. drivers/gpu/drm/i2c/tda998x_drv.c | 75 ++++++++++++++++++++++++++------------- include/drm/i2c/tda998x.h | 12 +++++-- include/sound/hdmi-codec.h | 1 + sound/soc/codecs/hdmi-codec.c | 45 +++++++++++++++++++++-- 4 files changed, 104 insertions(+), 29 deletions(-) -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up According to speedtest.net: 11.9Mbps down 500kbps up _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx https://mailman.alsa-project.org/mailman/listinfo/alsa-devel