ASoC: tas2552: Fix kernel crash when the codec is loaded but not part of a card
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Thu, 4 Jun 2015 13:04:14 +0000 (16:04 +0300)
committerMark Brown <broonie@kernel.org>
Thu, 4 Jun 2015 16:49:46 +0000 (17:49 +0100)
If the card is not part of any card the tas_data->codec is NULL since it is
set only during snd_soc_codec_driver.probe, which is not yet called.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
sound/soc/codecs/tas2552.c

index ff82f46ba504de75599562bc38e1c492f26b4182..df89947f1032cca7379f8f61afb8ddffb593227e 100644 (file)
@@ -120,6 +120,9 @@ static void tas2552_sw_shutdown(struct tas2552_data *tas_data, int sw_shutdown)
 {
        u8 cfg1_reg;
 
+       if (!tas_data->codec)
+               return;
+
        if (sw_shutdown)
                cfg1_reg = 0;
        else