lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250414-apr_14_for_sending-v2-4-70c5af2af96c@samsung.com>
Date: Mon, 14 Apr 2025 20:52:58 +0200
From: Michal Wilczynski <m.wilczynski@...sung.com>
To: "Rafael J. Wysocki" <rafael@...nel.org>,  Danilo Krummrich
	<dakr@...nel.org>, Pavel Machek <pavel@...nel.org>,  Drew Fustini
	<drew@...7.com>, Guo Ren <guoren@...nel.org>,  Fu Wei <wefu@...hat.com>, Rob
	Herring <robh@...nel.org>,  Krzysztof Kozlowski <krzk+dt@...nel.org>,  Conor
	Dooley <conor+dt@...nel.org>,  Michal Wilczynski <m.wilczynski@...sung.com>,
	Ulf Hansson <ulf.hansson@...aro.org>,  Philipp Zabel
	<p.zabel@...gutronix.de>,  Frank Binns <frank.binns@...tec.com>, Matt Coster
	<matt.coster@...tec.com>,  Maarten Lankhorst
	<maarten.lankhorst@...ux.intel.com>,  Maxime Ripard <mripard@...nel.org>,
	Thomas Zimmermann <tzimmermann@...e.de>,  David Airlie <airlied@...il.com>,
	Simona Vetter <simona@...ll.ch>,  m.szyprowski@...sung.com
Cc: linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
	linux-riscv@...ts.infradead.org, devicetree@...r.kernel.org, 
	dri-devel@...ts.freedesktop.org
Subject: [PATCH v2 4/4] drm/imagination: Skip clocks if platform PM manages
 resources

Update the Imagination PVR driver to skip clock management during
initialization if the platform PM has indicated that it manages platform
resources.

This is necessary for platforms like the T-HEAD TH1520, where the GPU's
clocks and resets are managed via a PM domain, and should not be
manipulated directly by the GPU driver.

Signed-off-by: Michal Wilczynski <m.wilczynski@...sung.com>
---
 drivers/gpu/drm/imagination/pvr_device.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/imagination/pvr_device.c b/drivers/gpu/drm/imagination/pvr_device.c
index 1704c0268589bdeb65fa6535f9ec63182b0a3e94..f40468b99cf14da418aeecde086f009695ff877c 100644
--- a/drivers/gpu/drm/imagination/pvr_device.c
+++ b/drivers/gpu/drm/imagination/pvr_device.c
@@ -504,10 +504,16 @@ pvr_device_init(struct pvr_device *pvr_dev)
 	if (err)
 		return err;
 
-	/* Enable and initialize clocks required for the device to operate. */
-	err = pvr_device_clk_init(pvr_dev);
-	if (err)
-		return err;
+	/*
+	 * Only initialize clocks if they are not managed by the platform's
+	 * PM domain.
+	 */
+	if (!device_platform_resources_pm_managed(dev)) {
+		/* Enable and initialize clocks required for the device to operate. */
+		err = pvr_device_clk_init(pvr_dev);
+		if (err)
+			return err;
+	}
 
 	/* Explicitly power the GPU so we can access control registers before the FW is booted. */
 	err = pm_runtime_resume_and_get(dev);

-- 
2.34.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ