/* initialize chip */
        azx_init_chip(chip, 1);
 
+       /*
+        * Playback (for 44.1K/48K, 2-channel, 16-bps) fails with
+        * 4 SDO lines due to legacy design limitation. Following
+        * is, from HD Audio Specification (Revision 1.0a), used to
+        * control striping of the stream across multiple SDO lines
+        * for sample rates <= 48K.
+        *
+        * { ((num_channels * bits_per_sample) / number of SDOs) >= 8 }
+        *
+        * Due to legacy design issue it is recommended that above
+        * ratio must be greater than 8. Since number of SDO lines is
+        * in powers of 2, next available ratio is 16 which can be
+        * used as a limiting factor here.
+        */
+       if (of_device_is_compatible(np, "nvidia,tegra194-hda"))
+               chip->bus.core.sdo_limit = 16;
+
        /* codec detection */
        if (!bus->codec_mask) {
                dev_err(card->dev, "no codecs found!\n");