From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) (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 44DA9329E46 for ; Wed, 24 Jun 2026 06:24:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782282259; cv=none; b=Osv6VidGoxH+DhJIYnVwG2PS5S0/Hnf7R/Qq6rVKEX3Jl9BJUUTHP6h7K4tdMBlUNFPhN0KrgP9p7RQfRdLUxF64Bv24ItKfMlaFaqwI0eWXgi8HW/qMtI3v+GwgNmo72kQiUHf528hty8Bf0jJmR87Oh83ByhJGe1frXOw21Ek= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782282259; c=relaxed/simple; bh=Gsr0e4mrVkZngQMjtx07cYit/2fBMBwrQJ0lP7xv7hs=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=KIDZ2N18n8+MkaR4/pyYduOWvH3X1eWX+uteipHypcJJ+ejYrpLg81T2Iw2wsc8R/Tv2XX/tOHnLxOirVPgQZj+wgCdhcUhk6JoLFO9p7THH4XIejCM770jKWr1ac2ozqJAHIw/H9VTAiIh6su5aab/khGd6VMbRoDfgu6aukIw= 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=keZL7w4d; arc=none smtp.client-ip=209.85.216.53 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="keZL7w4d" Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-37c8e7c8185so398661a91.3 for ; Tue, 23 Jun 2026 23:24:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782282257; x=1782887057; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=/VaPoWI6eKXUMMpNd+FGpSI6D9zOLXi9bfeJRqIdo4I=; b=keZL7w4dhDk6ojuVL/1nrL4HmjFCo9mhucYZ9qpYrYXidGwBXjfRR2WlWNPDQqyock T5k777S0ugVmRi/0k4vNLN+5XFuvpqnntYAoHV0Xg/8mbNcV0HWCm2YIy0GSV0U8dYbf jjy+TjKa2QZaJiIpEVEULtoluw5vYYa00KZZJvpu5LdBZhk2exKqUZ8zpICIjpJqIAw9 3x12lZThX/evOKKso7nSqaATYI0X8Mcr+tvdgzavo4gSe5Zaf6FjSld5uLNnUN6+rv7p ZbKZaOSx7GtRquD1YDaBzYnHF4rpjtIbjbNYBw0X6xfbDI9QrPC0NQ9x2Dbamjre9kzp MDbA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782282257; x=1782887057; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=/VaPoWI6eKXUMMpNd+FGpSI6D9zOLXi9bfeJRqIdo4I=; b=jj/6dJT12F6MCydY6AhyO2QfysSWPK2kWxFKBZnaM7E4DQ5eflvqb3SpMfQQ+5Lpsk 4ccswAyzbZFxrPQd4GZVRJx0Efe5gN3MHOYsHwvLzNcyJqhYvQ6EMpKlEXaa0TxAr/lI ndcvlbIDHWfbqtiZnMS/pSdENa0C6dL76qA+NsxJLEsMfzR2A6zGmqdxl8cP+qiKcPzm HadbwKxkCKBUAz92zZ5Npz6jn37nwWVsW2FJiZMhRKKniOPem/jNQtXPX8tCupsq8wHS TlIzxJzB5/2x622+qrdTzr50un/zpWk1/bqQYIf1dYrykQmThbkM+5QFfPSJX3JGAVNd mv0w== X-Forwarded-Encrypted: i=1; AHgh+Rq5CNB1k+YiYea4CtbbxmsLm1YjSLddaf08QAqUSnq0QxoqANjNc4QxaXiLBbBfWclJ9AfdVwh0cYcQca4=@vger.kernel.org X-Gm-Message-State: AOJu0YykRa3fxkznOllhaBJcs3iLrijNN3Bix+xTx+GLUmJpwhHzeAqr e/SgytkAw5Xqn7AobZjBqiUWWss+nCheYD7HetDQ4ISzQQ+TYlrqiRc= X-Gm-Gg: AfdE7ckozc0jim7THHNKury3oeQsImsVkEgEelBCHDQRR7ReQfgLVYWoFYnIPcNlF7i VdnRtA9RpsHnLjWrDZHoFXr2wHsi4DuVKpQohdIQXQi8+hxx7UomEUEU6RfdKsEWf/Qb6XZuS+w JwvUcSfjY88MBkjwlCfrZXZFZBccNySPP0h+I/NJXltjYDK/1b+oMzF1s+TOWFujpIDZa/h6bU6 DoqU9fmFGhSw5Jo/7B8Ewunm2x5vizjInHDQVdTM6N9c9xOcvv/px2miA3fDt9euE/Cyp43fCFF QZIguPRzsJjQfLeW6R3HWijqoJm5/sBBqLwnhlxj1TNGOHGpIw3zF8jcHs6IujJsRLS6cQl5Vhb bsmSXjlfUYfCApx3A1CV8uUPVG+vMsaTZEKMcQrr9f1YX7qqyxO1CgskLRqmjY5mhVm5wLCfXIR lIsdw/P2rQZOAefzgq7y4J9bMOvDyDLk0SEGFPUtSN+buyNrihoQ7iRUpobC/i13Zq X-Received: by 2002:a17:902:cf10:b0:2c6:95d1:3bbc with SMTP id d9443c01a7336-2c7e157bf30mr22540055ad.24.1782282257477; Tue, 23 Jun 2026 23:24:17 -0700 (PDT) Received: from localhost.localdomain ([14.5.152.27]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2c7436af54dsm126042875ad.11.2026.06.23.23.24.13 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 23 Jun 2026 23:24:16 -0700 (PDT) From: Myeonghun Pak To: Yassine Oudjana , Michael Turquette , Stephen Boyd Cc: Matthias Brugger , AngeloGioacchino Del Regno , linux-clk@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Myeonghun Pak , Ijae Kim Subject: [PATCH v2] clk: mediatek: mt6735: Unregister PLLs on probe failure Date: Wed, 24 Jun 2026 15:23:55 +0900 Message-ID: <20260624062409.45678-1-mhun512@gmail.com> X-Mailer: git-send-email 2.47.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit mtk_clk_register_plls() registers the apmixedsys PLL clocks manually, while clk_mt6735_apmixed_remove() unregisters them on driver removal. If devm_of_clk_add_hw_provider() fails after the PLL registration succeeds, probe returns the error directly and the remove callback is not run. This leaves the registered PLL clocks behind on the probe failure path. Unregister the PLLs in that failure branch before returning the error. Fixes: 43c04ed79189 ("clk: mediatek: Add drivers for MediaTek MT6735 main clock and reset drivers") Co-developed-by: Ijae Kim Signed-off-by: Ijae Kim Signed-off-by: Myeonghun Pak --- Changes in v2: - Unregister PLLs directly in the provider-registration failure branch. - Wrap the commit message line flagged by checkpatch. drivers/clk/mediatek/clk-mt6735-apmixedsys.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/clk/mediatek/clk-mt6735-apmixedsys.c b/drivers/clk/mediatek/clk-mt6735-apmixedsys.c index 9e30c089a2..69d9ce1210 100644 --- a/drivers/clk/mediatek/clk-mt6735-apmixedsys.c +++ b/drivers/clk/mediatek/clk-mt6735-apmixedsys.c @@ -102,9 +102,12 @@ static int clk_mt6735_apmixed_probe(struct platform_device *pdev) ret = devm_of_clk_add_hw_provider(&pdev->dev, of_clk_hw_onecell_get, clk_data); - if (ret) + if (ret) { dev_err(&pdev->dev, "Failed to register clock provider: %d\n", ret); + mtk_clk_unregister_plls(apmixedsys_plls, ARRAY_SIZE(apmixedsys_plls), + clk_data); + } return ret; } -- 2.47.1