ASoC: rockchip: i2s: Fix NULL pointer dereference when pinctrl is not found
authorAlexandru Elisei <alexandru.elisei@arm.com>
Mon, 11 Jul 2022 13:05:22 +0000 (14:05 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 11 Jul 2022 13:25:18 +0000 (14:25 +0100)
commit26b9f2fa7b1c6aba6fa9b83274a3e54868f69562
tree66e46e9c690be683e013338054ed5498076ef85c
parentfc976f5629afb4160ee77798b14a693eac903ffd
ASoC: rockchip: i2s: Fix NULL pointer dereference when pinctrl is not found

Commit a5450aba737d ("ASoC: rockchip: i2s: switch BCLK to GPIO") switched
BCLK to GPIO functions when probing the i2s bus interface, but missed
adding a check for when devm_pinctrl_get() returns an error.  This can lead
to the following NULL pointer dereference on a rockpro64-v2 if there are no
"pinctrl" properties in the i2s device tree node.

Check that i2s->pinctrl is valid before attempting to search for the
bclk_on and bclk_off pinctrl states.

Fixes: a5450aba737d ("ASoC: rockchip: i2s: switch BCLK to GPIO")
Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
Link: https://lore.kernel.org/r/20220711130522.401551-1-alexandru.elisei@arm.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/rockchip/rockchip_i2s.c