ASoC: meson: axg-tdmout: add g12a support
authorJerome Brunet <jbrunet@baylibre.com>
Thu, 4 Apr 2019 11:17:33 +0000 (13:17 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 5 Apr 2019 02:27:00 +0000 (09:27 +0700)
The axg tdmout driver just need a different skew offset to operate
correctly on the g12a SoC family.

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/meson/axg-tdmout.c

index 3984818..527bfc4 100644 (file)
@@ -243,10 +243,23 @@ static const struct axg_tdm_formatter_driver axg_tdmout_drv = {
        },
 };
 
+static const struct axg_tdm_formatter_driver g12a_tdmout_drv = {
+       .component_drv  = &axg_tdmout_component_drv,
+       .regmap_cfg     = &axg_tdmout_regmap_cfg,
+       .ops            = &axg_tdmout_ops,
+       .quirks         = &(const struct axg_tdm_formatter_hw) {
+               .invert_sclk = true,
+               .skew_offset = 2,
+       },
+};
+
 static const struct of_device_id axg_tdmout_of_match[] = {
        {
                .compatible = "amlogic,axg-tdmout",
                .data = &axg_tdmout_drv,
+       }, {
+               .compatible = "amlogic,g12a-tdmout",
+               .data = &g12a_tdmout_drv,
        }, {}
 };
 MODULE_DEVICE_TABLE(of, axg_tdmout_of_match);