From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f176.google.com (mail-pf1-f176.google.com [209.85.210.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DC2BF280CFB for ; Fri, 21 Aug 2026 12:29:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.176 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787315395; cv=none; b=OojtMestGecPtWqXTKqmJMrb/s83XUGTA9Dun2gz2NJMPpyRzuy+PHEkwGVGf3+m0VCzO3Ihrqrf6cb6P1uYdtxZ246Hk9Evs8b9CV83b6k1KV1LVfe/grNJ2REUm0Bdg5UONUvcNlM98114VUfnPg4bkqYnsa9jT2ZTtFcFx98= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787315395; c=relaxed/simple; bh=o1MWaXkXr2aP1vAPknR4xkrDwfhPNsw9JwAuoBORvkU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=K0lf2tQNyBd7/g2aDvRB5b1M28T4vHanbcweGgqTlclvBtlWuiKSw1W47ako19W2oWSKOw1U6wnudGTUx2HDIaemgMzV4BOOOufQSrojnAxFDc2pm0Lfabi2ENWOyylKVOgGZb4+C2kyj05/izBkhw5i2CUXT0uOEr38zwqXqro= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=kzId3syV; arc=none smtp.client-ip=209.85.210.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="kzId3syV" Received: by mail-pf1-f176.google.com with SMTP id d2e1a72fcca58-84e3007a2b7so755803b3a.0 for ; Fri, 21 Aug 2026 05:29:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1787315393; x=1787920193; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=g4hgMi6/uNAtRYrz9ZogYJurz7z1EY11bapUhL//V5s=; b=kzId3syVg6pWf2usunhJde+DoqY0Ik7itg6gKbH4FSUXXaVnrdfdXvAwzEgEKj3bPz +ShcRTvhM4KIJAzQBWpSVSvheWF8IVFS53zrLBEyqAl4BUa29ZcoiIBiJ8vywIeL12J6 d7eZI4ngZsBpC39RSM/uh1+L331mQKPcY5y2b2D5hRKo1MMkigPzNkqsvcc2Ax9zQ43w R/JtFwz576FY5tDJN5tZQw5bw1P/HHBJ3IvCmm1K792yVxgtQZMOxGglMVBo5TQ1iOPE 4qsrCLQxApyYVk9qjDXSJ6Z8uJDgzjA75E6eaNSa2G7fv7A4r0VbAJYFO7txiCkSe8Zi PrdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787315393; x=1787920193; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=g4hgMi6/uNAtRYrz9ZogYJurz7z1EY11bapUhL//V5s=; b=LQLBdHolkA2NUlB06SD9XQKRXincn452zhrPfv8pDoVIBgbcxVsiKygY3a82KHL4RJ ZQjBAN7jvt6Jp10XnL/UvwSrR3wIx+LSmAKmRl7diMyXWWFjqXQ2V6JeB1b/eRcZG8rP U0sla5NqWZRSNIhLSyI/ZmklqkZw36y9IspPwFyLIKo5Kq1ZtnaoYFY+GhbALcgui9DH 0a2qBaT3oq443Vu6HUlA0PNEO5jcEWO5nPPIk4ygx5zSVbG1EHwOARQB8R9dcIsgqY4H 201d9qbOLxXnDT2w0nD5YbwT1bKAt4ZJgQCDfKzswM2XR0olWb8C6Xvw6JadtUut3MDx 2RnQ== X-Forwarded-Encrypted: i=1; AHgh+RolyGgG7c45xOaCXckaWxVr+tJxO++lDVlpsgFo4UFTq912gAZTyXZh7SAAODmAM3j0eRMkMkxR52T9ED8=@vger.kernel.org X-Gm-Message-State: AFuF++ndFwgLHvmF6iimtT0imk8ez4+7KQ97uLw2FCwlwEySXfZf3KB1 Du9+4q9kxKO9co4K4cMiU1X1URrvF0grcwQPsE5AlE+vDswf1vYlRGKR X-Gm-Gg: AR+sD12+11vOlrgip/WfS72bxoyCzozTV/s4wzgAS+sZm3dpuO0rux6z7vr4Wp5JIoj H7c7Eb+3uYB1q47aqPDZRr6hhoQmEj4P+s+zn2QC8tF/B8aotA4d6tUxOYfGzOX/afXYhgnYtyS ELlFL7+RfdiLoymxOHp4ThthLN/rQZNy9KsPb/rz+4RaIXK/8eYxCk9e7K1kHevtGgQkzsIwZfN F4ye1zAdeVkIrM6dNpVcbG7n4qVqFP+S4e84I8daeZIqENNK9ZkV6BW8hJdJOR/MOq7m+f+fe5J QVtdyQkpTWMXAJF/N8tIDKFBNpnWb2VqBjv10NAox+nLYTudsdXxhYDtl43qz2zdQkMUclrK0mG GSiJ/owAgJEEBR4sEhm0JZLQxBDRRkEx7b/26x7QSlz88DBn4cez254B+iT7E/okbZ11jExed+Z 4onJAczQqcqxIqEac45CPCo+b+deiTvkna0AjGfp2dG901oVDRUKo8GpPQvg/eOiC61fqjLW+MC AFpnNeSZxttkt5sqKP5dp8RMt+5HXl21gAeUh/yr0qaBWs3WUdLs1nZ8GEalaf+bzzJW9t2f7xF n7QNOw== X-Received: by 2002:a05:6a00:328a:b0:851:b03a:fcb with SMTP id d2e1a72fcca58-851fa018184mr11023615b3a.14.1787315393221; Fri, 21 Aug 2026 05:29:53 -0700 (PDT) Received: from phuc-desktop.. ([183.91.15.56]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-851d3389fc4sm2848582b3a.14.2026.08.21.05.29.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Aug 2026 05:29:52 -0700 (PDT) From: phucduc.bui@gmail.com To: Mark Brown , Matthias Brugger Cc: Liam Girdwood , AngeloGioacchino Del Regno , Jaroslav Kysela , Takashi Iwai , Cezary Rojewski , linux-sound@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, bui duc phuc Subject: [PATCH v2 2/4] ASoC: mediatek: mt8183: Fix APLL enable error handling Date: Fri, 21 Aug 2026 19:29:26 +0700 Message-ID: <20260821122928.41343-3-phucduc.bui@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260821122928.41343-1-phucduc.bui@gmail.com> References: <20260821122928.41343-1-phucduc.bui@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: bui duc phuc Currently, the mt8183_apll*_enable() functions call mux_setting(afe, true) but do not check its return value to handle failures. In addition, the cleanup paths of mt8183_apll*_enable() do not call mux_setting(afe, false) when the enable operation fails, while the mt8183_apll*_disable() functions do. Add error handling for apll*_mux_setting() and call mux_setting(afe, false) in the cleanup paths when mt8183_apll*_enable() fails. Fixes: a94aec035a12 ("ASoC: mediatek: mt8183: add platform driver") Signed-off-by: bui duc phuc --- sound/soc/mediatek/mt8183/mt8183-afe-clk.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/sound/soc/mediatek/mt8183/mt8183-afe-clk.c b/sound/soc/mediatek/mt8183/mt8183-afe-clk.c index 6ab0734ad136..0790d8123179 100644 --- a/sound/soc/mediatek/mt8183/mt8183-afe-clk.c +++ b/sound/soc/mediatek/mt8183/mt8183-afe-clk.c @@ -382,7 +382,9 @@ int mt8183_apll1_enable(struct mtk_base_afe *afe) int ret; /* setting for APLL */ - apll1_mux_setting(afe, true); + ret = apll1_mux_setting(afe, true); + if (ret) + goto ERR_APLL1_MUX_SETTING; ret = clk_prepare_enable(afe_priv->clk[CLK_APLL22M]); if (ret) { @@ -411,6 +413,8 @@ int mt8183_apll1_enable(struct mtk_base_afe *afe) ERR_CLK_APLL1_TUNER: clk_disable_unprepare(afe_priv->clk[CLK_APLL22M]); ERR_CLK_APLL22M: + apll1_mux_setting(afe, false); +ERR_APLL1_MUX_SETTING: return ret; } @@ -436,7 +440,9 @@ int mt8183_apll2_enable(struct mtk_base_afe *afe) int ret; /* setting for APLL */ - apll2_mux_setting(afe, true); + ret = apll2_mux_setting(afe, true); + if (ret) + goto ERR_APLL2_MUX_SETTING; ret = clk_prepare_enable(afe_priv->clk[CLK_APLL24M]); if (ret) { @@ -465,6 +471,8 @@ int mt8183_apll2_enable(struct mtk_base_afe *afe) ERR_CLK_APLL2_TUNER: clk_disable_unprepare(afe_priv->clk[CLK_APLL24M]); ERR_CLK_APLL24M: + apll2_mux_setting(afe, false); +ERR_APLL2_MUX_SETTING: return ret; } -- 2.43.0