From 69ba52d77bec5ac1409268110fa466837d8e72ea Mon Sep 17 00:00:00 2001 From: Sugar Zhang Date: Fri, 9 Apr 2021 11:30:02 +0800 Subject: [PATCH] ASoC: rockchip: mdais: Fix panic when dai control enabled Unable to handle kernel NULL pointer dereference at virtual address 00000080 pgd = 5be93016 [00000080] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT SMP ARM Modules linked in: CPU: 3 PID: 58 Comm: kworker/3:1 Not tainted 4.19.111 #9 Hardware name: Generic DT based system PC is at snd_soc_add_dai_controls+0x24/0x40 LR is at (null) pc : [] lr : [<00000000>] psr: 20000053 sp : ee117d58 ip : 00000000 fp : ddb2d540 r10: ddbd1c40 r9 : 00000000 r8 : ddb35b80 r7 : ddb35940 r6 : ddb65080 r5 : 00000002 r4 : eeb39410 r3 : 00000001 r2 : b0d464e4 r1 : eeb39410 r0 : ddb65080 Flags: nzCv IRQs on FIQs off Mode SVC_32 ISA ARM Segment user Change-Id: I0571e1a0554f11af62fab3572fcb11f299626be6 Signed-off-by: Sugar Zhang (cherry picked from commit d6885ff37ffcee0233d2b417a5c3d2f2dbae34d5) --- sound/soc/rockchip/rockchip_multi_dais.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sound/soc/rockchip/rockchip_multi_dais.c b/sound/soc/rockchip/rockchip_multi_dais.c index 7a789c8c7e3a..6e763fd42a53 100644 --- a/sound/soc/rockchip/rockchip_multi_dais.c +++ b/sound/soc/rockchip/rockchip_multi_dais.c @@ -163,6 +163,7 @@ static int rockchip_mdais_dai_probe(struct snd_soc_dai *dai) for (i = 0; i < mdais->num_dais; i++) { child = mdais->dais[i].dai; if (!child->probed && child->driver->probe) { + child->component->card = dai->component->card; ret = child->driver->probe(child); if (ret < 0) { dev_err(child->dev,