From 5ded9f3ecb620efe7df2386df0c922083e99ff76 Mon Sep 17 00:00:00 2001 From: Andy Ross Date: Tue, 3 Dec 2024 13:11:11 -0800 Subject: [PATCH] drivers/mediatek/afe: Handle zero-length allocation The older SOF allocator would return a valid pointer into the heap for a zero length block, but Zephyr's sys_heap returns a NULL. That's not an error and it will free() as a noop. Signed-off-by: Andy Ross --- src/drivers/mediatek/afe/afe-drv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/drivers/mediatek/afe/afe-drv.c b/src/drivers/mediatek/afe/afe-drv.c index 5681638344a6..b9cf29eaa654 100644 --- a/src/drivers/mediatek/afe/afe-drv.c +++ b/src/drivers/mediatek/afe/afe-drv.c @@ -380,7 +380,7 @@ int afe_probe(struct mtk_base_afe *afe) afe->irqs_size = platform->irqs_size; afe->irqs = rzalloc(SOF_MEM_ZONE_RUNTIME_SHARED, 0, SOF_MEM_CAPS_RAM, sizeof(struct mtk_base_afe_irq) * afe->irqs_size); - if (!afe->irqs) + if (!afe->irqs && afe->irqs_size) goto err_alloc_dais; for (i = 0; i < afe->irqs_size; i++)