Unverified Commit fd14f443 authored by Peter Ujfalusi's avatar Peter Ujfalusi Committed by Mark Brown
Browse files

ASoC: ti: davinci-mcasp: Fix slot mask settings when using multiple AXRs



If multiple serializers are connected in the system and the number of
channels will need to use more than one serializer the mask to enable the
serializers were left to 0 if tdm_mask is provided

Fixes: dd55ff83 ("ASoC: davinci-mcasp: Add set_tdm_slots() support")

Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5dd17a3c
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -946,7 +946,7 @@ static int mcasp_i2s_hw_param(struct davinci_mcasp *mcasp, int stream,
		active_slots = hweight32(mcasp->tdm_mask[stream]);
		active_serializers = (channels + active_slots - 1) /
			active_slots;
		if (active_serializers == 1) {
		if (active_serializers == 1)
			active_slots = channels;
		for (i = 0; i < total_slots; i++) {
			if ((1 << i) & mcasp->tdm_mask[stream]) {
@@ -955,7 +955,6 @@ static int mcasp_i2s_hw_param(struct davinci_mcasp *mcasp, int stream,
					break;
			}
		}
		}
	} else {
		active_serializers = (channels + total_slots - 1) / total_slots;
		if (active_serializers == 1)