From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) (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 1CE072853EB for ; Wed, 18 Jun 2025 10:02:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=210.118.77.11 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750240939; cv=none; b=QiGFIgccfHK2rGSt6HcRIKmUwrueYLFkfCYDSJgU4vz0J+EWyM8+FEahaMXxs9nW2Oas+88XTHI8dbg/qh4NQBknT25Zam1BbLECHfMCp2T6KkTLPpdKXpQpOvIHQzcrPYPKUhlEVQiJCzT4Ik0xyfCvK4FfHINBQ9tJuJ0kAj8= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750240939; c=relaxed/simple; bh=8i91py5Nf+YYJ+DDJ/UaSDJZPm1uvhaXzGn/NS5Cc60=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:From:In-Reply-To: Content-Type:References; b=fAgWAYP/B5XRXv3NwaoFf1qZV3R72O8W5/tjNA8sFS5Y5H5u4UMxRX1B7IRFzSsvjtUBQS2kdYT+ySuURGRmC8dvM7TEXxZECMXAhmtlzLdn/MhU3rZxY1bToDHXUSyOuMDAxB2ytH7/bcgHfXHXcFgbNLRE5OAfowTxJPIuTqw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com; spf=pass smtp.mailfrom=samsung.com; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b=GC3BPgKI; arc=none smtp.client-ip=210.118.77.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=samsung.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=samsung.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=samsung.com header.i=@samsung.com header.b="GC3BPgKI" Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20250618100214euoutp019a9df0a68ac05a14ca11d322866e98e6~KGttWaNKF3086930869euoutp01m for ; Wed, 18 Jun 2025 10:02:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20250618100214euoutp019a9df0a68ac05a14ca11d322866e98e6~KGttWaNKF3086930869euoutp01m DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1750240934; bh=mnBVL+TiGzXcC6y2voLdZWspxbuthkDVJJY2G1jD6rI=; h=Date:Subject:To:Cc:From:In-Reply-To:References:From; b=GC3BPgKISPlo40xYj6LKCbLn1TG1GuRBIKI9k6RDE0adYjbjWW3V+CNPIUK9POa+G rg5JrO6X8a5L6Cb9k6vfyFay+hzBb0YwAiYLKJJETW4/vcj5VXxJiUG4KTiBXAVNCG 6dlS2WNdMZmzVtCi5Co7nZdwml43AG3hXU3q4lFQ= Received: from eusmtip2.samsung.com (unknown [203.254.199.222]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20250618100213eucas1p10ead7541682e1c8b8985121bf634c83a~KGts1_7dl0901009010eucas1p1v; Wed, 18 Jun 2025 10:02:13 +0000 (GMT) Received: from [192.168.1.44] (unknown [106.210.136.40]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20250618100212eusmtip23b29d2b5e5877af3f8f5b7582a97d35d~KGtr0JUpH2681926819eusmtip2Q; Wed, 18 Jun 2025 10:02:12 +0000 (GMT) Message-ID: <4772bf3d-c7d7-4108-8bc6-ee28953c89c1@samsung.com> Date: Wed, 18 Jun 2025 12:02:12 +0200 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 0/8] Add TH1520 GPU support with power sequencing To: Drew Fustini Cc: Guo Ren , Fu Wei , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Bartosz Golaszewski , Philipp Zabel , Frank Binns , Matt Coster , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Paul Walmsley , Palmer Dabbelt , Albert Ou , Alexandre Ghiti , Ulf Hansson , Marek Szyprowski , linux-riscv@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, dri-devel@lists.freedesktop.org, Krzysztof Kozlowski Content-Language: en-US From: Michal Wilczynski In-Reply-To: Content-Transfer-Encoding: 7bit X-CMS-MailID: 20250618100213eucas1p10ead7541682e1c8b8985121bf634c83a X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20250614180906eucas1p116f8a13a4013edd3bbedfd2e4a8b0aa3 X-EPHeader: CA X-CMS-RootMailID: 20250614180906eucas1p116f8a13a4013edd3bbedfd2e4a8b0aa3 References: <20250614-apr_14_for_sending-v4-0-8e3945c819cd@samsung.com> On 6/18/25 00:14, Drew Fustini wrote: > On Sat, Jun 14, 2025 at 08:06:06PM +0200, Michal Wilczynski wrote: >> This patch series introduces support for the Imagination IMG BXM-4-64 >> GPU found on the T-HEAD TH1520 SoC. A key aspect of this support is >> managing the GPU's complex power-up and power-down sequence, which >> involves multiple clocks and resets. >> >> The TH1520 GPU requires a specific sequence to be followed for its >> clocks and resets to ensure correct operation. Initial discussions and >> an earlier version of this series explored managing this via the generic >> power domain (genpd) framework. However, following further discussions >> with kernel maintainers [1], the approach has been reworked to utilize >> the dedicated power sequencing (pwrseq) framework. >> >> This revised series now employs a new pwrseq provider driver >> (pwrseq-thead-gpu.c) specifically for the TH1520 GPU. This driver >> encapsulates the SoC specific power sequence details. The Imagination >> GPU driver (pvr_device.c) is updated to act as a consumer of this power >> sequencer, requesting the "gpu-power" target. The sequencer driver, >> during its match phase with the GPU device, acquires the necessary clock >> and reset handles from the GPU device node to perform the full sequence. >> >> This approach aligns with the goal of abstracting SoC specific power >> management details away from generic device drivers and leverages the >> pwrseq framework as recommended. >> >> The series is structured as follows: >> >> Patch 1: Introduces the pwrseq-thead-gpu auxiliary driver to manage the >> GPU's power-on/off sequence. >> Patch 2: Adds device tree bindings for the gpu-clkgen reset to the >> existing thead,th1520-aon binding. >> Patch 3: Extends the pm-domains driver to detect the gpu-clkgen reset >> and spawn the pwrseq-thead-gpu auxiliary driver. >> Patch 4: Updates the Imagination DRM driver to utilize the pwrseq >> framework for TH1520 GPU power management. >> Patch 5: Adds the thead,th1520-gpu compatible string to the PowerVR GPU >> device tree bindings. >> Patch 6: Adds the gpu-clkgen reset property to the aon node in the >> TH1520 device tree source. >> Patch 7: Adds the device tree node for the IMG BXM-4-64 GPU and its >> required fixed-clock. >> Patch 8: Enables compilation of the Imagination PowerVR driver on the >> RISC-V architecture. >> >> This patchset finishes the work started in bigger series [2] by adding >> all remaining GPU power sequencing piece. After this patchset the GPU >> probes correctly. >> >> This series supersedes the previous genpd based approach. Testing on >> T-HEAD TH1520 SoC indicates the new pwrseq based solution works >> correctly. >> >> An open point in Patch 7/8 concerns the GPU memory clock (gpu_mem_clk), >> defined as a fixed-clock. The specific hardware frequency for this clock >> on the TH1520 could not be determined from available public >> documentation. Consequently, clock-frequency = <0>; has been used as a >> placeholder to enable driver functionality. >> > > I don't have any more information that what is in the public PDFs [1], > so I think it is okay to have a placeholder frequency. > > Is it the case that the frequency doesn't really matter from the > perspective of the driver? Yeah it doesn't matter, I asked simply because it would be better in the DT to accurately describe the HW. I would omit the 'clock-frequency' altogether, but doing that makes the driver probe fail. > > Thanks, > Drew > > [1] https://protect2.fireeye.com/v1/url?k=260051e8-477bfb60-2601daa7-74fe4860018a-782a548f971ff58f&q=1&e=7e973bd1-ed36-4a12-af1c-1cf44bea2e5c&u=https%3A%2F%2Fgit.beagleboard.org%2Fbeaglev-ahead%2Fbeaglev-ahead%2F-%2Ftree%2Fmain%2Fdocs > Best regards, -- Michal Wilczynski