From d4ed11c95f0353b1f99225f11fadca2d67fd59e2 Mon Sep 17 00:00:00 2001 From: Adrian Bonislawski Date: Wed, 10 Jun 2026 12:20:17 +0200 Subject: [PATCH] audio: copier: reject ALH multi-gateway config with zero count copier_alh_assign_dai_index() rejected only count > MAX and count < 0, letting count == 0 pass. A zero count creates a SOF_COMP_DAI copier with endpoint_num == 0 (the dai-creation loop never runs), which later makes copier_position() return -EINVAL before writing posn. Reject count <= 0. Signed-off-by: Adrian Bonislawski --- src/audio/copier/copier_dai.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/audio/copier/copier_dai.c b/src/audio/copier/copier_dai.c index dfd2590c7108..bbd387b88ab8 100644 --- a/src/audio/copier/copier_dai.c +++ b/src/audio/copier/copier_dai.c @@ -108,7 +108,7 @@ static int copier_alh_assign_dai_index(struct comp_dev *dev, } dai_num = alh_blob->alh_cfg.count; - if (dai_num > IPC4_ALH_MAX_NUMBER_OF_GTW || dai_num < 0) { + if (dai_num > IPC4_ALH_MAX_NUMBER_OF_GTW || dai_num <= 0) { comp_err(mod->dev, "Invalid dai_count: %d", dai_num); return -EINVAL; } @@ -138,7 +138,7 @@ static int copier_alh_assign_dai_index(struct comp_dev *dev, } dai_num = alh_blob->alh_cfg.count; - if (dai_num > IPC4_ALH_MAX_NUMBER_OF_GTW || dai_num < 0) { + if (dai_num > IPC4_ALH_MAX_NUMBER_OF_GTW || dai_num <= 0) { comp_err(mod->dev, "Invalid dai_count: %d", dai_num); return -EINVAL; }