From nobody Mon Sep 28 19:23:41 2026 Received: from out203-205-221-192.mail.qq.com (out203-205-221-192.mail.qq.com [203.205.221.192]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 963FE175A64 for ; Tue, 18 Aug 2026 13:18:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=203.205.221.192 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787059091; cv=none; b=uAO/y2eH2C+Rd1CrglFo2pSNcbBY+alC93fnMrpkVK0OXH1TM4yD/Pmb1hh2rW9RL2H2aNZVj6L+TC+v15mztsJUmqbYvSHaJ+HSI+6THpw/K5lQ4Kw4Y27ZphQ26nePXkim5YbMEwOTZulvea9Ie98eKGOSmmspE/tFKxvE0mA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787059091; c=relaxed/simple; bh=4zUVUrYoTbWxmaA+sl+kjF1GtfhNafF6ovkcixXZE3k=; h=Message-ID:From:Subject:To:Date; b=Sb961gL289pPq2NaXXqYihqydz49NiP4vGqoqw6sJMUSRiPajOBWkwkSay6YDZS8uJRVcyiEE9MJW8ePuC8wrblLaw1BSbCQpEKMnT7eogqXq7ekDzpZww0v9+J3UeV8adFcHaHFOu/NWBVKGaOWp6kUBpI4r6bg78S4hyqPg+k= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com; spf=pass smtp.mailfrom=qq.com; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b=S7Gh3X+W; arc=none smtp.client-ip=203.205.221.192 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=qq.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=qq.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=qq.com header.i=@qq.com header.b="S7Gh3X+W" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201512; t=1787059087; bh=2hMu9OlmmtjRiRbZJu7fRfLqMPwN1YlZmtEFvcpUaPY=; h=From:Subject:To:Date; b=S7Gh3X+WSaWASWls34n/rNJSxC48ScwkZ1PF0UwsWucN53Ve8N/cpHgKB8iQu/5Hp w2ueD48LpMVqAoXt3J3wmfIfmgnQFT+MDv7bs2heEsWw/fQV+0sLxCNIfpvhaMfHOz nA/qw0dMqubNsJ63N9hlFqx1tWbksx6VVLoOGPYk= Received: from [127.0.1.1] ([5.195.0.150]) by newxmesmtplogicsvrsza63-0.qq.com (NewEsmtp) with SMTP id 1721C6D8; Tue, 18 Aug 2026 21:05:50 +0800 X-QQ-mid: xmsmtpt1787058995t9fe7z17i Message-ID: X-QQ-XMAILINFO: MDbayGdXPuoegitSSTWVpOdQ42lvbogggrXlyrwQIIJyZRLgcs4BqMknKIxoNR SFAcYKzz8Y8212TOxMKyHA9Y6yF1D9lJmyMJRRWLs+x71L5qcxrJG3hQQpyj1bmLYRmQiqwtrN05 bNATp1HI4J52JM/5ZdPS9m+aiu7qjpqeeqSmkLWRaO0LgatBzGTpRK3Q2uAsWP8d53v/w1OHHthg 4sUgH7GIcmZUfbYZk0wxrDzN1g+nkauwI+qX+4v+Fhn+Vwi1K4bEfBqjG2A+b+C7WOBwtgP04Gea iN9jGsPEgYh6H2wjp344E40khF7XWmip4Slf3geiBETCy+/58Aq9EDLRdTFDZQn0Mlq7hrKErjdn oZyoISmfFfnnZAfD34DSbiQzrm7Fx+RUz7J5ep97ZBBZNUPutLPDlRy3Pq/cubOM0vw2mC7kGoNI KhIlMc70oiSeNM9NI4U1RlQ2eQh6fpg8ptEahbntAH0RaokZcphdOf5YmD5NlW7C2rQuahGz4pBw PfpkcnK4kTBPnD2BZMHCiOlvoxVKQLYYUgtXZlw8e7jWlcvdnBTZGar0O6Wh25qx2mGcb0GV+aIi ifKP2fB8FjYNeckJ7cuziZbJ1PqSu7vsmlo/TK/Jn95Hfut3u93PKTm2Hc5CL48w652ze6szoBwx H0VHght4iVrFu0HA36z0UZBfGUN0NcZWen/iwpCs65+7uXQnaPa6RDVvgAubyQ/HVHRhNOntFnF6 963nmaWZbDalHX/bigvU12yDKK6ZBTKHxuTAdXytDUeBo79Jr0uirjcHFf9yELp8hEDeWZM836an cW6vHGaABAnzuT98gvwBBObJ0Zq+wLa61Dk0QTzTiFfHNlgIJwc+VwQfymZb8AUMDcL7iOYwCY5H 56z5oRXejIMH+EhmWKYPONImdLY3X5l1vOS04G5MURGBRCwJEvwaZA7/WGP+I/I2D6hZlgKtzko2 uSUSxt+cQq+dDrEjPA6DytSx6inHM1KKSdeqiv/GI4u3arrtXSpNcQN9EFUdsY3V1RN1WPXd3EZA WQQYFJTlBvB1ZZCedUgmmhFnBLblYdUX+rLroDvTz6u2RX9Dwhm+ihK+g7B/c= X-QQ-XMRINFO: NyFYKkN4Ny6FuXrnB5Ye7Aabb3ujjtK+gg== From: Jiawen Liu <1298662399@qq.com> Subject: [PATCH] gpu: ipu-pre: handle clock enable failures To: Philipp Zabel , David Airlie , Simona Vetter , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Date: Tue, 18 Aug 2026 17:18:05 +0400 X-OQ-MSGID: <178705908535.291840.3174452527939975091@qq.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Check clock-enable failures after a manually managed allocation. Release the earlier allocation and return the original clock error when probe cannot enable the clock. Signed-off-by: jiawen <1298662399@qq.com> --- diff --git a/drivers/gpu/ipu-v3/ipu-pre.c b/drivers/gpu/ipu-v3/ipu-pre.c --- a/drivers/gpu/ipu-v3/ipu-pre.c +++ b/drivers/gpu/ipu-v3/ipu-pre.c @@ -311,6 +311,7 @@ { struct device *dev =3D &pdev->dev; struct ipu_pre *pre; + int ret; =20 pre =3D devm_kzalloc(dev, sizeof(*pre), GFP_KERNEL); if (!pre) @@ -339,7 +340,12 @@ if (!pre->buffer_virt) return -ENOMEM; =20 - clk_prepare_enable(pre->clk_axi); + ret =3D clk_prepare_enable(pre->clk_axi); + if (ret) { + gen_pool_free(pre->iram, (unsigned long)pre->buffer_virt, + IPU_PRE_MAX_WIDTH * IPU_PRE_NUM_SCANLINES * 4); + return ret; + } =20 pre->dev =3D dev; platform_set_drvdata(pdev, pre);