ASoC: tas2764: Fix set_tdm_slot in case of single slot
authorMartin Povišer <povik+lin@cutebit.org>
Thu, 27 Oct 2022 09:57:59 +0000 (11:57 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 26 Nov 2022 08:24:34 +0000 (09:24 +0100)
commit188546c78006bcaec5e27318b672410066db0b3b
tree38930730a322cee8c71393143a9aa628f64f9b83
parent5782896daf651f5c62b1f51d74c1788ccd9daa04
ASoC: tas2764: Fix set_tdm_slot in case of single slot

[ Upstream commit faac764ea1ea6898d93e46c403271fb105c0906e ]

There's a special branch in the set_tdm_slot op for the case of nslots
being 1, but:

 (1) That branch can never work (there's a check for tx_mask being
     non-zero, later there's another check for it *being* zero; one or
     the other always throws -EINVAL).

 (2) The intention of the branch seems to be what the general other
     branch reduces to in case of nslots being 1.

For those reasons remove the 'nslots being 1' special case.

Fixes: 827ed8a0fa50 ("ASoC: tas2764: Add the driver for the TAS2764")
Suggested-by: Jos Dehaes <jos.dehaes@gmail.com>
Signed-off-by: Martin Povišer <povik+lin@cutebit.org>
Link: https://lore.kernel.org/r/20221027095800.16094-2-povik+lin@cutebit.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/codecs/tas2764.c