From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) (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 9AD01382296 for ; Wed, 10 Jun 2026 06:57:57 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781074678; cv=none; b=gPRiVsQW6x5p1qsIze3AdL7Nz9qi2apuBFNeLz1dm/+iiQn8ejc8gjrHK0aZXgEmQy2FaR0dZhQkRmKyypZQhMkd5rQTUBJBaPO/cp76947lKDYcGJwRsoDjzMdYMnnAg7qBvSqqaI8YU6uL01FDkJ+KL9tUviQM7FelAez+9rs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781074678; c=relaxed/simple; bh=ib1C5m9zUovsfnKC/Ob/iT89+FbnmfTIZHRjo7kccgw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=YvSj9ickSUAHdQELuvEr62RLDVBSWNYBoYZ2ZXUdz9eB/EosB7XTgzEY3J0OkBOGTyja46j4Lgk74ERrf4Vb41fa+h0+lo6c5FrjUqxFtTkgjQXMSs9EwGUEHsePCalehrRdcNOyJYx3KuZprqSaEq1k82tBiOdFjaw8EFKEDl8= 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=dpdND8dN; arc=none smtp.client-ip=209.85.216.44 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="dpdND8dN" Received: by mail-pj1-f44.google.com with SMTP id 98e67ed59e1d1-37474afe908so1324733a91.1 for ; Tue, 09 Jun 2026 23:57:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781074677; x=1781679477; 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; bh=X/UDBDLtZz00cGQrhKCz/1OR6H3GeXpDVyKQrDy5eXA=; b=dpdND8dN8GE0+9Crg57vMAD2+Ii7dKWvMN8GkqvaQrRVfLEruDIATELi0Peyks+MBc ZtEwgrGqkll9OiVUPTP/C4EfwYyeRUDxsuTmdKtkljbrwNHBfUjzleKblv3ZYD+2K4r/ 3kYLmd2ZHB5Z5Zh17Zvot06Kx6Jvhq/fPifk4XPODKRD8HJzIdEZHDHhGE38FxfSscC7 6xR1NMp9l9GmYtI3eBMJUZVuEWPfFvUcPMw3XyLUnz4b3KMwmKgx34pIKzUUp++jfG4o C8Qyo96pBhh8md1wjDSmtCTu8RckKZOzaUwy2SMv5gQ43ux3JPyXDeXs3xCOP/h3wSS7 YcIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781074677; x=1781679477; 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; bh=X/UDBDLtZz00cGQrhKCz/1OR6H3GeXpDVyKQrDy5eXA=; b=h8nWVkiVfQ5tvvPFdLFHHDuTji5ZM6IA5XRNMG4rTExvKelxXa7nKz/VhsSuYqflnC PklLszM+YnmpugHJ4fa9kxsJmIGReZVphB/nujevQbAtOHgey9H6rfwzT5SIm4hgT3kg 1hAO1QlKAGfwpbAiou5EonZ/c/A4kLAtxrb0f7wmTldItUAjunH0Cl9OmWoQ7Ap7JMZb aQAZEkzRp+tDTI1hZr4wZ7W/XABQQJPBawolprFm9fy0jeo0Z7cLmKtZgusW4ShyKb1S 3pzSgd7XvqaZXvECHbnQpyG1WHOHGtR3H8qvoTRAwQobSD34j8AMLnCloneyFuzvAl5e gYmA== X-Forwarded-Encrypted: i=1; AFNElJ8MjeALfSJmOZA4dC+GpHXGl8kJ6v1K4YDFBVm1KWAv4y/WEmpRUcasGcZ9lE3D7IIzu1bbZZSo0ybjnX0=@vger.kernel.org X-Gm-Message-State: AOJu0YxSTwCWRXs5d3e254kXEwBPaBqbJ3AUUXChojHqc5tLelxQt30B jyRmnXx1e/U7eeAmlH1MKbVNrIJbJCFIdeAA+HnwdBQR8gxw4Urq3DlK X-Gm-Gg: Acq92OGsmkkccYbsMoRKq23IErRx8o7FHmXsJ++RRh7IHRDxbtPEOaaj3h+Mlcc/h+l HcviuDzxyshF6Iq4Yh7h5pc9AuYuIRC1Co7dzKrVUtw91IvdrfVdNQkOlPCroYTRqZrCTQgPSpS NdxPkstsVl3p2udFa6AGme5Wf+96+N1bwlEXzwmjb9VhNGYi8x5Ec0HTDdtwu7ZPqfgDW945wqm zMC30Ta8ts/gJENu1tQbe82+G0qA1SioUvqjVw4NtSgfS56wur6rDmF2BkjceQqLFPrjWcG8tda LlOxWDsXk23cFFcABou1xCUiGTf1hFxE1TX4D9efm0yvmfeXUE2S9T1PI5LTqB9snHKXBVlM7Io mtQE6k/H550/i+pAoEgB/wGOE9nQHJu8tHCFC3c8EKDvBhEnMc6cQoibbrOwUwcT4eI3/tMH/uP xMcUWiLlYHzimepE2me0yvnluGuFGraIzuJz1+Ev4mPeCUvCUoo29dfb5njzpQcXNY6/9GVWqwL U+6toq+3p3Sb8+lsj/VcQF+Tjc2dvmNHFn0ew1OwCbrbQ== X-Received: by 2002:a17:90b:4b87:b0:368:ed26:15b2 with SMTP id 98e67ed59e1d1-370eec1272dmr25088138a91.8.1781074676914; Tue, 09 Jun 2026 23:57:56 -0700 (PDT) Received: from ryzen ([2601:644:8000:5b5d:7285:c2ff:fe45:8a32]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-36f6bf830b2sm20064781a91.4.2026.06.09.23.57.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Jun 2026 23:57:56 -0700 (PDT) From: Rosen Penev To: dmaengine@vger.kernel.org Cc: Vinod Koul , Frank Li , linux-kernel@vger.kernel.org (open list) Subject: [PATCH 1/3] dma: mv_xor: use devm_clk_get_optional_enabled Date: Tue, 9 Jun 2026 23:57:35 -0700 Message-ID: <20260610065737.118211-2-rosenp@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260610065737.118211-1-rosenp@gmail.com> References: <20260610065737.118211-1-rosenp@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 Replace clk_get + clk_prepare_enable + clk_put with devm_clk_get_optional_enabled. This eliminates the need for manual clock cleanup in the probe error path. It also fixes missing cleanup in a remove function. Assisted-by: opencode:big-pickle Signed-off-by: Rosen Penev --- drivers/dma/mv_xor.c | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/drivers/dma/mv_xor.c b/drivers/dma/mv_xor.c index 25ed61f1b089..a97fa0038652 100644 --- a/drivers/dma/mv_xor.c +++ b/drivers/dma/mv_xor.c @@ -1359,12 +1359,9 @@ static int mv_xor_probe(struct platform_device *pdev) mv_xor_conf_mbus_windows(xordev, dram); } - /* Not all platforms can gate the clock, so it is not - * an error if the clock does not exists. - */ - xordev->clk = clk_get(&pdev->dev, NULL); - if (!IS_ERR(xordev->clk)) - clk_prepare_enable(xordev->clk); + xordev->clk = devm_clk_get_optional_enabled(&pdev->dev, NULL); + if (IS_ERR(xordev->clk)) + return PTR_ERR(xordev->clk); /* * We don't want to have more than one channel per CPU in @@ -1452,11 +1449,6 @@ static int mv_xor_probe(struct platform_device *pdev) irq_dispose_mapping(xordev->channels[i]->irq); } - if (!IS_ERR(xordev->clk)) { - clk_disable_unprepare(xordev->clk); - clk_put(xordev->clk); - } - return ret; } -- 2.54.0