From nobody Thu Dec 18 14:30:37 2025 Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11010015.outbound.protection.outlook.com [52.101.69.15]) (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 B31B5227E89 for ; Mon, 2 Jun 2025 14:33:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.69.15 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874823; cv=fail; b=cnabJO2870YDeFFLI5oNETItquWTEJzMz7gBad+Wzlvmcn79HFUq0BogWlpwyERqlqK/vzt9z8aXyIeJHvyTyFyXuyW4oFzOv6rbst5Hqk11By9UwuhGSBpMWOZ7YsCsC7itExrwR1v+Ujexry29fTqRqX8j7X9eaLtOblnH7ZM= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874823; c=relaxed/simple; bh=9ZgEBXTPzbloGdjbi8iXKY7M1AqchOcQqthNvHasdHg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=RxP5dWBjR8WeWihmj6C+1vDug2ElA+ZismSBvzN0/af/yLn3Z9Z2AAdWOKAVKF10Lb3tcwXagV/DruxBx7HnDywoSwbGoDMmq1TfKBwauSd9DoKGUOsLRgO76MNFtKI0lsie95dMpCpQwukS6CaKOcYOK1RIk3mT+dfDeYy2U5k= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=IFycN3Pv; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=IFycN3Pv; arc=fail smtp.client-ip=52.101.69.15 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="IFycN3Pv"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="IFycN3Pv" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=SqVhgGv5eOFeD3kVc6y21vWiHCMBpc0FWoWTfSFoNlHal1lxo0Hf+g64MT+hkK31zVNLCJ8k/ZPiS3qJMfSXptxbkVeuM7F+pdrABApNIo11Was3PIN/EDBov3a49TqNdyAUODC1+1w4uIvDBLIn3WkYSlMLX0NNyjuOzmBgskRSzNsH6EggWNIg22XuCK2T2RL8+XwstjpRvJDc2+8sRvlBl2oP61ue0dksqU3D045hFSfyLeK5nlnjjhP6Mw+7s2GoXChUBlLP33YoiXXjfYHL9OPSlQlBi/9uC81dUUCq5KrwUqPDwCasXu/K5AcPb7lGnXqkP6Jh+u3RN7zioA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cPyN0IB1fwWZBDAjZTiK5ynQ4xSdQsNhwyrSUci/32M=; b=r5VluDCckQPzMGwZXI/7CPiB+WTxsapglLp1fyX38wo9W3g86VeFe2dyF4+vePSQ5o2ykktzm8ElKnd+vBCe7aOKweRJPsUjcFkybpkotKTbMW/F6NUFVOJADge1fDX/3RuovV50FqYBp7cz+rWYQNM6VZCoT1CUK+uk1SXvtzzrGQbDI1aItHZfhWsm54qdC42F3DuuF2FETDfASVTrTV+0pzFL65liOSZyp5es8fuO9BJTPTHAcHsoBUyA2rb5t+9czDegMFKWOn0OGMgOxFl7K0JzPQ8oXZZ07j+W21lue1R9AMfRXGvk01OKLrv/1LHWxhzb3JjU/UHhwchQXQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cPyN0IB1fwWZBDAjZTiK5ynQ4xSdQsNhwyrSUci/32M=; b=IFycN3PvRB0G9rSt0ux/mehrQa7yF25c5XwwxoF95UQDjND6EhM+/z9VlsHyG0E2CPvUJk8ZC6nN3v65z4Nv+9ZX2CcyL4eo6hiORpbDuLEeTQb/pJKbJYlJ8JykiEQvQ1+PXNBjJJVwmZJFnLmugwZkdMRQNtpsWYMV8SsP0g0= Received: from PA7P264CA0144.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:377::12) by DB9PR08MB7534.eurprd08.prod.outlook.com (2603:10a6:10:302::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.32; Mon, 2 Jun 2025 14:33:35 +0000 Received: from AMS1EPF0000004E.eurprd04.prod.outlook.com (2603:10a6:102:377:cafe::25) by PA7P264CA0144.outlook.office365.com (2603:10a6:102:377::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.31 via Frontend Transport; Mon, 2 Jun 2025 14:33:35 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AMS1EPF0000004E.mail.protection.outlook.com (10.167.16.139) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=NeMuwGIvkMfglAdyLrrgUo3S64CexIeyAE9iIMOwSpkavHW3C9h6itd3DhRr69EYYf4k19NMS8At/2tqLn+TgZXoJRMKuXGyDs7mz1njtDVc4BEZEQfM5eXAOx+vp3fYJbE9TfNH5KNHod4RQx8JTMwDD5j/dOVo0IR69WH5g/FtJKcTRZd1KZJ4eqR6f7pAwe+WqyMkTbjv1F0PJUYI4w2CjhzSStSZJ8kcOAcW0d0guwZWODBz7awUScQzKVbE+yw5mRLEQlR/TK4tTv/5V0DMC0zkwHCSB4zfDgnDnk+B38B8bWg5DlFQr7Fs0ghIJfoP7DKfXbzDLDwztip2JQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cPyN0IB1fwWZBDAjZTiK5ynQ4xSdQsNhwyrSUci/32M=; b=WNTXjlN6UmO7AoBTtEz5WIUNLYsoUZD6dq4anYsgzRlv7zq1EvBzTCPbqrwHm1kqfhI6QIti4nDaEjd/vFt1l42Grasn9pIqAcUbcm5xXGQ8CmrECZHRSL+4zY8IIjc7Cub+E2mhIIbkL5kEDK9SEEGRjQsNIWttoKfXCck887oMz98uP+nTCjVHeWGWDQ0ia9XcH3i1GnlKFOhKYyABJe5SBX1Giuya84qqzQRLcDQ0A1vB524wU2a4xwCxnXGLlVo5a9SCa0ZrIF/Ax3PgHVuasohdgXYu0c0o3BROH48XT4TLbRGL0T075dDDfmgcBV3ylos4Ac/4s9WGh7VLsw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cPyN0IB1fwWZBDAjZTiK5ynQ4xSdQsNhwyrSUci/32M=; b=IFycN3PvRB0G9rSt0ux/mehrQa7yF25c5XwwxoF95UQDjND6EhM+/z9VlsHyG0E2CPvUJk8ZC6nN3v65z4Nv+9ZX2CcyL4eo6hiORpbDuLEeTQb/pJKbJYlJ8JykiEQvQ1+PXNBjJJVwmZJFnLmugwZkdMRQNtpsWYMV8SsP0g0= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by GVXPR08MB10809.eurprd08.prod.outlook.com (2603:10a6:150:158::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:32:52 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:32:52 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 1/7] drm/panthor: Add GPU specific initialization framework Date: Mon, 2 Jun 2025 15:32:09 +0100 Message-ID: <20250602143216.2621881-2-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM6P194CA0069.EURP194.PROD.OUTLOOK.COM (2603:10a6:209:84::46) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|GVXPR08MB10809:EE_|AMS1EPF0000004E:EE_|DB9PR08MB7534:EE_ X-MS-Office365-Filtering-Correlation-Id: 2ad48aa3-021b-40fb-bdb7-08dda1e27452 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?d9VKkWafBEETni0DXLykNEpmI+BOzw3CNIwaNiT1DYoOKLRKpsIxEjwn3+Gx?= =?us-ascii?Q?K1iR5WILfSrho7D+q+WB9LUNs7zxbsgH9s/bJWsy08z1GPvBHK0kfoDUbRcT?= =?us-ascii?Q?O2XeuMOo2oD/okqNouU8QGxD4/GpuGcg0gQvteFmbcykJH/UHXRYCJbXDj4l?= =?us-ascii?Q?jGx1TGyo6gDNY0fAOt7/wikoTHn5WKABi2fcSs7282xGDws4YO4EU0xgR8bq?= =?us-ascii?Q?u5P0W8qWEu0mjFuJUz2/OdAD92pQ3XpGy4vhtYN0jkWy8U5hHl7yT2rja283?= =?us-ascii?Q?5bF4IXmWr3mDzu+LoKu3yOFYbkXJQ6K0BryQO4eyXI8bXJG+GVa3B/TD0Uo9?= =?us-ascii?Q?KhULqLY8k8Kl3lJQRbjV3cqNTQUjeLb6hwSfUi+XpZUG77MA7Xla7Kpe1vy9?= =?us-ascii?Q?Egn+SR+TxEhJA+1z75Sa0bVfPGhGCmQwrx/bYGKq/tBUyMA3zeG4h+ljX/lZ?= =?us-ascii?Q?1N9fg3OZ9u5BXfCekLF2qzp9OQNGyh0P2ExiH+ioo5q+ZEkigsHbAmWNzKvX?= =?us-ascii?Q?XKPcmSnOdtFvoGRqiXjMNvI7dBOoxqbr5WeTL5bmlPNIFBLTiv8N4zNCIhRR?= =?us-ascii?Q?+3GEt5xdzJTgO4dlQgJSnS4Enz2PQpNwKGvU7XXoOjwwNH+7bUv66ogaVyz7?= =?us-ascii?Q?e/dGRYrFkyd2EH83dT32syTFnfDeYs3qCZyHWJ0td4VxbIZt3uTIa2+31fhm?= =?us-ascii?Q?kOz6BnofDt9re/nK3yOhkHgUg2MGamLi9j86keUVyCKBiOr93rM0iyuhTU3g?= =?us-ascii?Q?hCZDXXA+bF0El0KLveCnJqwkLhZZ5tELQoZWRVN91GRneLyNqtzhpKNq3aFi?= =?us-ascii?Q?JZNcXT1z4KrBvDWrhN6B4+VYFyfl/QIi28yYvKCLdlltitUhHG0aUB/Wm5j4?= =?us-ascii?Q?ZmKUeLqMfiFZCgbi1yzMJNGLP0EqbCKRfdvfEYfbXJS8aGrDCQsFJgdIVJNE?= =?us-ascii?Q?yOBbEOUFEL02ocUVrd8iFk+GXC/rtjHJCTpCv4L+W/7siwsyC6NA2j+UxtcA?= =?us-ascii?Q?0Q6CK6DGJHnDncFWMoap5shuLHUybZU4+FcfnvzDMVQe3aIrf85kevi+83CC?= =?us-ascii?Q?vEWP9U7d5jlnq+QS9LQ/PHsVyovTZlpjA5oT3pfALxBMCgVMqksWWp3oLXr5?= =?us-ascii?Q?fOOtSraD36EZNmYAYI5Rj743LnNGJGyYFg70YbibSV5acqg8FRHZzRprhi1m?= =?us-ascii?Q?8mFnjvFMtvwfCCS69bvwPlHxZqwNyMIeR3Zn28Lo2lgyBkxT/XSw262ztJdF?= =?us-ascii?Q?svFdLXFYkybHQzzqCwCxDRAiOX7U5YtsjS9JOUWMcAsacOcRrghktZjBfAZu?= =?us-ascii?Q?HfAtw43643dphZ8/CbfZoaoi1RuPe0BvL3CfUzHZhnQQXxI+0s5kegAHdisa?= =?us-ascii?Q?jJH0ixVk7s1TUSh7A+vflPiZo29EPY1p9giRA4U9WmSLCNqd0Jj4gwNn/jus?= =?us-ascii?Q?ZYrDdLzH9Mw=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10809 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS1EPF0000004E.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 66d0fa9c-92cf-4ce4-2290-08dda1e25b5e X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|14060799003|36860700013|35042699022|376014|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?yXiElzCg2x4jrAJ3+hSuc3EhDTc6Lf/PWsZiTpXE65lMpRg1RwOjeTNuoLGi?= =?us-ascii?Q?JpKN/4Eplf+bcGOWSIJctd9Xh0yf+4onyAucpuV3s1SNu6sPTsGIXuyKbihM?= =?us-ascii?Q?8f83u9e39FygV/ohZ5mPvFBSaowVDEBYbTC4QLBVPesSwQmQ01AijmTcOXLv?= =?us-ascii?Q?QjVgARdit9VtCFPmSKM2CCXe8Y/qFNpUQelICdchXkSittXpk73+j+ame7o2?= =?us-ascii?Q?wrSfXb3eDDKd61vqx2n3VzAkJIu/FvbCf2OaRfO9cMKC532XHUfn1oegmZTu?= =?us-ascii?Q?ubHQ3rX/62tW0Ema5N71at8lZwe/57tC0l+Z1soaPexhSeyWrvdMjHFlytfI?= =?us-ascii?Q?Bl7a+S87APkbYQXckYuLpif1exj44XoEvsTsFaiDs69AUovY366ilD72WqsK?= =?us-ascii?Q?zIHOQJS5eKMPLpji6BUf1i+QXWi7e2LrYMTZMaNkJf4s7oa+oKaRivFlVBsy?= =?us-ascii?Q?z04SGx4svhEfq416QVA8HD59HREtwsjxqYh+mPEhhNbR84HP9Myn2R/ygWPO?= =?us-ascii?Q?bgi1jIit712n2CcWHkMSAWSfe6S8exWZqle8qmtxqlEuSNCKnG4G0wGq+PuZ?= =?us-ascii?Q?ay4iIfIM79+0Aia8bb1t6hpKVf+6hEu6CFmA9LnMj/9cnioe7k5nT4Gq1d4+?= =?us-ascii?Q?kpf7RQSF7TCtZ/Jk8yWUiyYU3jCS/lBNk2NWijp+sffUdc8mBcRCpoJAS5I1?= =?us-ascii?Q?ywBeRkQwAZAFJcZMw/O98Dw8DWQxVdziZFfHRegeogIpdHC4lWqG0yU9eZEd?= =?us-ascii?Q?1BPdcHIwGoPUrfs+r5eJ4R/+ieKUTuaP+Tjfv2ypJdb+C8uQynopq2Ss5+tB?= =?us-ascii?Q?b/QmxfCCt7B1fpj7XysywCwLcBvTK2cLtsJX/+qlu4FkiCl33CiwVsnFiRTq?= =?us-ascii?Q?b50P7/Jdi21QTWiLkgg/J1y4lM8K+iVAxl0mFCEeST2DWGbTcXiH+ABDWGRl?= =?us-ascii?Q?KvcEZe8hl8pW1ZPL/vs5tYeuq5BJ3Dyxr04DPAbI7gpTCkDmzejqrGlwXb2r?= =?us-ascii?Q?YuFPRHTnNbQXqLYlcw2g8qpxLobZak4jRfS01xaCOzPMHCrXTE0efGuSd9Jm?= =?us-ascii?Q?V1RpxrIwxmpV93m9uAv2WwI0JPwLUUwIqxe+5afjh85s1EO7+CtA4e5JwJgC?= =?us-ascii?Q?Myva1QhWDsTjRGhOD2k6BbF10r1xjapDufW1DFLZywoGxgzh0/cXoXANgIXp?= =?us-ascii?Q?BZHTV9wsfTGageVQDA1hcAELtE7HuGJvp9TvgycmWT7Yga4wJdkP0IteqSpE?= =?us-ascii?Q?NPHfrQMztkurIL4HnIS8JM+ptAkQ7dYuf9nc5OA/azqKmdFGx7ThCMnhZ9JD?= =?us-ascii?Q?4BoG52995VMNVxm9hcUAaUE68YsrcUyfV0aAbSZCdJhc7r9Z1EQLbW3shNrr?= =?us-ascii?Q?oorF8Ghl6U3QDokL+lhZwQZKrLtkSP6AaRxNiKrSPrkl2DdECEPHbMMYu4hY?= =?us-ascii?Q?8CbcVe3pJy+TSbZfyYbMDE4Hr/975ehdxNojcX8YFOOF9KOavY1Gr1rRsTId?= =?us-ascii?Q?ldR12teyvww+KgzET4WN3CD1QWeJDQePdxzm?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(14060799003)(36860700013)(35042699022)(376014)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:34.1530 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2ad48aa3-021b-40fb-bdb7-08dda1e27452 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AMS1EPF0000004E.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7534 Content-Type: text/plain; charset="utf-8" This patch provides an initialization framework for multiple Mali GPUs by introducing a GPU support look-up table. Each entry contains, at minimum, the architecture major version of the GPU, and may optionally provide feature flags and register offset overrides. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/Makefile | 1 + drivers/gpu/drm/panthor/panthor_device.c | 5 ++ drivers/gpu/drm/panthor/panthor_device.h | 4 ++ drivers/gpu/drm/panthor/panthor_hw.c | 65 ++++++++++++++++++++++++ drivers/gpu/drm/panthor/panthor_hw.h | 60 ++++++++++++++++++++++ 5 files changed, 135 insertions(+) create mode 100644 drivers/gpu/drm/panthor/panthor_hw.c create mode 100644 drivers/gpu/drm/panthor/panthor_hw.h diff --git a/drivers/gpu/drm/panthor/Makefile b/drivers/gpu/drm/panthor/Mak= efile index 15294719b09c..02db21748c12 100644 --- a/drivers/gpu/drm/panthor/Makefile +++ b/drivers/gpu/drm/panthor/Makefile @@ -8,6 +8,7 @@ panthor-y :=3D \ panthor_gem.o \ panthor_gpu.o \ panthor_heap.o \ + panthor_hw.o \ panthor_mmu.o \ panthor_sched.o =20 diff --git a/drivers/gpu/drm/panthor/panthor_device.c b/drivers/gpu/drm/pan= thor/panthor_device.c index f0b2da5b2b96..81df49880bd8 100644 --- a/drivers/gpu/drm/panthor/panthor_device.c +++ b/drivers/gpu/drm/panthor/panthor_device.c @@ -18,6 +18,7 @@ #include "panthor_device.h" #include "panthor_fw.h" #include "panthor_gpu.h" +#include "panthor_hw.h" #include "panthor_mmu.h" #include "panthor_regs.h" #include "panthor_sched.h" @@ -244,6 +245,10 @@ int panthor_device_init(struct panthor_device *ptdev) return ret; } =20 + ret =3D panthor_hw_init(ptdev); + if (ret) + goto err_rpm_put; + ret =3D panthor_gpu_init(ptdev); if (ret) goto err_rpm_put; diff --git a/drivers/gpu/drm/panthor/panthor_device.h b/drivers/gpu/drm/pan= thor/panthor_device.h index 340a5ef09477..5b617ab781a5 100644 --- a/drivers/gpu/drm/panthor/panthor_device.h +++ b/drivers/gpu/drm/panthor/panthor_device.h @@ -26,6 +26,7 @@ struct panthor_device; struct panthor_gpu; struct panthor_group_pool; struct panthor_heap_pool; +struct panthor_hw; struct panthor_job; struct panthor_mmu; struct panthor_fw; @@ -122,6 +123,9 @@ struct panthor_device { /** @csif_info: Command stream interface information. */ struct drm_panthor_csif_info csif_info; =20 + /** @hw: GPU specific data. */ + struct panthor_hw *hw; + /** @gpu: GPU management data. */ struct panthor_gpu *gpu; =20 diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c new file mode 100644 index 000000000000..4dbe23df0c4c --- /dev/null +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -0,0 +1,65 @@ +// SPDX-License-Identifier: GPL-2.0 or MIT +/* Copyright 2025 ARM Limited. All rights reserved. */ + +#include "panthor_device.h" +#include "panthor_hw.h" +#include "panthor_regs.h" + +static struct panthor_hw panthor_hw_devices[] =3D { + { + .arch_major =3D 10, + }, +}; + +static int init_gpu_id(struct panthor_device *ptdev) +{ + ptdev->gpu_info.gpu_id =3D gpu_read(ptdev, GPU_ID); + + if (!ptdev->gpu_info.gpu_id) { + drm_err(&ptdev->base, "Invalid GPU ID (0x0)"); + return -ENXIO; + } + + return 0; +} + +int panthor_hw_init(struct panthor_device *ptdev) +{ + struct panthor_hw *hdev =3D NULL; + u32 arch_major =3D 0; + int i, ret; + + ret =3D init_gpu_id(ptdev); + if (ret) + return ret; + + arch_major =3D GPU_ARCH_MAJOR(ptdev->gpu_info.gpu_id); + + if (!arch_major) { + drm_err(&ptdev->base, "Invalid arch_major (0x0)"); + return -ENXIO; + } + + for (i =3D 0; i < ARRAY_SIZE(panthor_hw_devices); i++) { + if (arch_major =3D=3D panthor_hw_devices[i].arch_major) { + hdev =3D &panthor_hw_devices[i]; + break; + } + } + + if (!hdev) { + drm_err(&ptdev->base, "Unsupported GPU (arch_major 0x%x)", + arch_major); + return -ENODEV; + } + + ptdev->hw =3D hdev; + + return 0; +} + +bool panthor_hw_supports(struct panthor_device *ptdev, + enum panthor_hw_feature feature) +{ + return test_bit(feature, ptdev->hw->features); +} diff --git a/drivers/gpu/drm/panthor/panthor_hw.h b/drivers/gpu/drm/panthor= /panthor_hw.h new file mode 100644 index 000000000000..1a3cbc5589fd --- /dev/null +++ b/drivers/gpu/drm/panthor/panthor_hw.h @@ -0,0 +1,60 @@ +/* SPDX-License-Identifier: GPL-2.0 or MIT */ +/* Copyright 2025 ARM Limited. All rights reserved. */ + +#ifndef __PANTHOR_HW_H__ +#define __PANTHOR_HW_H__ + +#include +#include + +struct panthor_device; + +/** + * enum panthor_hw_feature - Bit position of each HW feature + * + * Used to define GPU specific features based on the GPU architecture. + * New feature flags will be added with support for newer GPU architecture= s. + */ +enum panthor_hw_feature { + /** @PANTHOR_HW_FEATURES_END: Must be last. */ + PANTHOR_HW_FEATURES_END +}; + +/** + * struct panthor_hw_regmap - Register offsets for specific register blocks + */ +struct panthor_hw_regmap { + +}; + +/** + * struct panthor_hw_ops - HW operations that are specific to a GPU + */ +struct panthor_hw_ops { + +}; + +/** + * struct panthor_hw - GPU specific register mapping and functions + */ +struct panthor_hw { + /** @arch_major: Architecture major to match against */ + u32 arch_major; + + /** @features: Bitmap containing panthor_hw_feature */ + DECLARE_BITMAP(features, PANTHOR_HW_FEATURES_END); + + /** @map: Panthor regmap */ + struct panthor_hw_regmap map; + + /** @ops: Panthor HW specific operations */ + struct panthor_hw_ops ops; +}; + +int panthor_hw_init(struct panthor_device *ptdev); + +bool panthor_hw_supports(struct panthor_device *ptdev, + enum panthor_hw_feature feature); + +#endif /* __PANTHOR_HW_H__ */ + --=20 2.49.0 From nobody Thu Dec 18 14:30:37 2025 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012011.outbound.protection.outlook.com [52.101.66.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 A178A2AE9A for ; Mon, 2 Jun 2025 14:33:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.11 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874822; cv=fail; b=kzJsuIa6enTWWgWg7lPm0vyVf3v8xdhfBYn+mSwHaqf5UO4sUc0DvDwaOfdopkWIRwwWIWY0mUj66+sneLwK2EHiVPFk4hRSAN1FJcEiStI2lbnZCClnhokFCBffwwvrnoXaXiSqkn30nhZMIJkPo/y5Y7AEWPipk3ktmf1ybh0= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874822; c=relaxed/simple; bh=/AY1xk7j5tSkDkD8QOjym4zkMPpuIwalJc8tXDar3JQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=i+psBLzb/n2fD2/OXbOVW0xwgbOK4YW3mJ37vNpN7CEbtk6XqsHGDxb4nvRnye5tBqGqRJN1tOajf1bT7o/DbXkCqFKltdrSGgdRpniQH5M0nddiyJjLySXwdGgfOnNEv0K8bID46sKQz5fcqUKN7/GnPj4Xjz4pHUw2CpwDRZU= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=WaIbgseD; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=WaIbgseD; arc=fail smtp.client-ip=52.101.66.11 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="WaIbgseD"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="WaIbgseD" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=etk/DTqMsWrG+FlvOWaRqc8smI2XV/XVAkASGws9nr0kxBZDgx065u0aV9Yc2ylQCYkUWl6Wpea/jrcS/Bh11UndxuNrK75xZ4joSueX2jlyWlhiXAj+8FslpZ1yNAxN00IToVrIljRcsZkCKJn1t0cbXHzRpVVV/YSkKaOeo87GvnCp8FtfZFmzV+fkBiu9i1l/0bnL7scwc7fZ/AQsw/KSOS5f0ILL4THCow18OsuRomxM5lktG7AeyzOArpeRUOrJchlI6Odv4vX42ZeL8J5164K1YHI4NZoBNMuqbWHyP7fjY29dLMgIRzR/uBpme1R8lSCb9UmAliQH8172ow== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=DuIQkNHHx6gH9kL3tvPElLH+YEBSrqOX4WRDMjkUZJE=; b=YC7xcx8JaLhEy4N2NE0vX+rj1TZ5+2I9u8h5fxqOBXXYdNy1MX21NxqVDzXohLH0lCWkixKniYiJGoNrn2v6cfqnb6VoOqfp0uRXRvbaL6yQEjEPm3fiGmwgsHdz3dWEhen+qMqDhLsOEFQDqv6Hv4TgCBLDWg5U5PvfBVZcxw2HW2m4YFtTpRjLF4sA9TwD2VdC5prR9SgLLaRZwRNG6m2z+fR4QBKhfom89MyhuHq3wC6eI6eioFy1DaPBsVe8Xv0s9C/WnC9/T5BZiVokLxMfovxn1cuhixrE568UFdDhCM7GFqagjn9Fz9k+lvQgU9HIB2pQuml0wmvkpJmCfw== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DuIQkNHHx6gH9kL3tvPElLH+YEBSrqOX4WRDMjkUZJE=; b=WaIbgseDk9GkpLTSH7TSaus3W715244IfuX1MuK9ajjSDSH1aj+Xxkc/HB/hjVJ/Ppa7t19yDcxDeb71E+p+ie08YTLZTarqnjyTva2pGdDC+dNwCwrFTQQHK6eOU9/o8Dr9+93yUOuirmZ84hXClJQhNZVu1wF7RvZsq8OnGvk= Received: from DB7PR05CA0043.eurprd05.prod.outlook.com (2603:10a6:10:2e::20) by VE1PR08MB5760.eurprd08.prod.outlook.com (2603:10a6:800:1af::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:33:34 +0000 Received: from DB3PEPF0000885A.eurprd02.prod.outlook.com (2603:10a6:10:2e:cafe::3a) by DB7PR05CA0043.outlook.office365.com (2603:10a6:10:2e::20) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8769.27 via Frontend Transport; Mon, 2 Jun 2025 14:33:34 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by DB3PEPF0000885A.mail.protection.outlook.com (10.167.242.5) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uyftnNgIAmhJe0sCBi9QE6JB4Vm3iK6u+4XgSxERfknAawm31srm7PE9rGK80H3CptSEQK7VxBAIxe5Z0eCPJoSAVs7kCk7wnVmeBnKmbkH7cCvNXN4u81NVtsFzWbY82QUG+XbR62kEiHqRA6VjjxqqNr+AdjaGv/bLDV6/y6iUwsAPg5l4tcxw4zfs+Lpwh+p8poatm+y35jGgXEE0OF3v2udfz3V7+acSCDMAUm7KLj5YfBOnEv3A1bH9YpEvrAHj3jGlWFGM1Hbb7zzYlRGDP7SS+rYN2SC0TLueCSBCuusYZQJI8feEiEQREnGmUC8dAk4bHZVH8jbQzHGRIA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=DuIQkNHHx6gH9kL3tvPElLH+YEBSrqOX4WRDMjkUZJE=; b=Bk3zmgNaRBnBxVlbH/oTANh+cS9oS6i3rl+Lu4fq1/3GU9Ja1NJPTktwp9tmFEMgCbdVyO1kkdDVVfFw6p33K3edRclmnu6O32rdvrSDqMNlF3AwIDw+s44aH+5XjlM7nZUNN5J+H42CrHRAWiVQk4pYTNNddomtM0kKK9b/bNE4OkLvr2lyEDH1fLT7Ha8YBHGbcKfhkJjmlBCVHFB94I8+rDTYiPv0Zg/CdP58kTWIlKulu8/xYdcKXYSKRcO4/gkXCMbMtZGtY3nc+e55RmzAzyH5AGsPxKuY9LbmBY2VaY58BCW0yA1UBPTeqoIV0ZlW2vx5BblCjherbCaw1Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DuIQkNHHx6gH9kL3tvPElLH+YEBSrqOX4WRDMjkUZJE=; b=WaIbgseDk9GkpLTSH7TSaus3W715244IfuX1MuK9ajjSDSH1aj+Xxkc/HB/hjVJ/Ppa7t19yDcxDeb71E+p+ie08YTLZTarqnjyTva2pGdDC+dNwCwrFTQQHK6eOU9/o8Dr9+93yUOuirmZ84hXClJQhNZVu1wF7RvZsq8OnGvk= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by GVXPR08MB10809.eurprd08.prod.outlook.com (2603:10a6:150:158::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:32:57 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:32:56 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 2/7] drm/panthor: Move GPU info initialization into panthor_hw.c Date: Mon, 2 Jun 2025 15:32:10 +0100 Message-ID: <20250602143216.2621881-3-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AS9PR06CA0632.eurprd06.prod.outlook.com (2603:10a6:20b:46f::6) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|GVXPR08MB10809:EE_|DB3PEPF0000885A:EE_|VE1PR08MB5760:EE_ X-MS-Office365-Filtering-Correlation-Id: ca2dccd7-0caf-422d-eb9e-08dda1e27470 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?fj627r+/LqZawO1Fjxtuu0Cda8Sm7/GowrQPiOgBjNysXeG2CYOP3b77k8cx?= =?us-ascii?Q?xXY1j5L1emYNdglCKkwjCNBfm5nPXxgaDD5fBsJIMsaP87/B5O+vrCf9pmYB?= =?us-ascii?Q?A89YQjn+qj+qpF/JL3E6g7/N6cCZL0wYnwXgHZL7tfH+rAzU14+JDkzi5szj?= =?us-ascii?Q?crEisz2hs/vxrIIY6dEKR+v9TMNDbkfe1pgrVWR4WH7eGFBhMVpmUPfdhvH4?= =?us-ascii?Q?Mk9uHswYZED8Bk2xz4M5GkIIpPp6uyVBFHKAjMooej+UoYvkzrP2qHI0ue9Y?= =?us-ascii?Q?q4OngKqAgBJIYilSQPubRz1XkS24u4cfpAw1JhuMKSLss/U6gKaas4WKgvwE?= =?us-ascii?Q?Jq31H51xqRG1k9Pn3zg+cNk1KiRIPNtP/wouCZdovAA72fiS1IxtN1K7aCc1?= =?us-ascii?Q?RdY7fg8Gkto0Ary16b48mdKpPpPjlDIaD0g6NSavzTCV2ULecTNGTqK0FDeT?= =?us-ascii?Q?UyIUSPAbPNnYqK9hkV4wF+sjW822YLwp8IhjIiWWXK99qbTPqlSGxXkx7+c3?= =?us-ascii?Q?m5sJQCVTBLNe1lKP3rPXU5T6fDf/WH7k9Inp0KLS09FLnQhXVBaJ2bQmRfTa?= =?us-ascii?Q?FKHbPwHmu0pPuNvJhr4HwlVhR5qrpuatahTXeVSE56srDOvQgygcd/JgcuHU?= =?us-ascii?Q?2s3Yg4g/LGo7RRY2s31s3BJXpsgSJNpbPQpXSyiUY33Gw+2uoAlEZgQTQ9S5?= =?us-ascii?Q?04W4Eh/09U0aDYML9pRmoLP5j8oLkMixo9l68rzGzgXTiG08JbelxjWMYnyt?= =?us-ascii?Q?/GyNFR/x6hM45aCadP6M7PO6dniq/r36Sd9bChr/HD4yKSsxofHwXXAiZWWD?= =?us-ascii?Q?uYcXUc1WqfXOwc1gtxzg1sArDj8WX9rAR87hBJHBDalHdZhDfYirTTdf3KN+?= =?us-ascii?Q?HVVn85iIVFXwzO8UFadE8DiPYfchLNi7C9D0SKQ8A9te2AXbytL6QpgugVWY?= =?us-ascii?Q?uKWV0CCEkijFnam84coU+vfTMYWy5i5JPOXl6bSK3rAKFv80wAC/nG90fi5z?= =?us-ascii?Q?CIq4BOHoH8eEQ8yf/LGR8x0YsSAo6MtyjM0HUVzlvLxAG5kySKJlwIWXLkQA?= =?us-ascii?Q?6XYAQhqlyH4l7fwmFNiRg0u1J+OAljcnNxFYb05lYP4IzPhNfrqVCx91m4NS?= =?us-ascii?Q?2KqyR0PleHwlIoLmW24oNJlma3ouWi7aFT0Yc/miht8PotCO94hn0Y8QvAmw?= =?us-ascii?Q?Mgep176METIxABN5Nb1u1yOmnX+l9BOiy/dFbeLUrY4Wem76Sr4fEV/7LDVy?= =?us-ascii?Q?7+DmWOTIy6ueMPpA3JEOBPSIKdgfnSb7CwuIftTrwfw5UTEifTC70uOHGn9O?= =?us-ascii?Q?lfBAa1cJGFXSdph4kpUU+tLjD9wR4NCaCltuZOAQ2Vnox1dBrk5lXOk2ZJgK?= =?us-ascii?Q?XXxuw9u5ETZESvN0zSfctYSTNYT8Srm+MszWsVl2IRRStHnVxg=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10809 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB3PEPF0000885A.eurprd02.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 1289f88a-9869-4d67-8477-08dda1e25de8 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|1800799024|35042699022|36860700013|14060799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?pXE1qKBuGgSYcTvQWa/XHMdxXXhVd/ac3i6z3MGt+vNcBRfeoFH2SpRHWR3i?= =?us-ascii?Q?VSBuNv9irtQZFiqWDdrZmY4gC3SD8SGcAAQqOGhpwe57aY+8kWsrhAFv+ygA?= =?us-ascii?Q?tz9T8Z7DrR0o3DRpgZldcKjC1znqi13AW6Q6AVU0r9Y6WmrQzm9prrBBKAHl?= =?us-ascii?Q?LsNTXOJVKuAilTrnv3r8+dURce53aTeP9zjPY7mKb/QDJEB959GGYwxLn1WN?= =?us-ascii?Q?zfokrqB57GU67TFEn8jeaT3M5S4cXq8gk9fl2EPFiL7TrWX87XebOmamC26x?= =?us-ascii?Q?QwHKs+soNeHDUsma4CQhkqFvarcgSkBNLJBEv+w8jyEzs8MUTamrWSKM5psP?= =?us-ascii?Q?GwUdussMdBQZEoTg6JQcZ2Ieb/z1k12oMEwhxP5Xjjzv8w5GgukvH+cOnkkB?= =?us-ascii?Q?1ukgRtX2Yr3tlq/1ucjyfl2x15fysn75EQQo2mnARDt2iWpQQM4obk8/lTL0?= =?us-ascii?Q?uHE/t2ReyIDyQOOmIvP4Ea7lpbIxw6tz4u2zjeerb1Vns2CA6TmFZluyX/ZU?= =?us-ascii?Q?NSJCMuFtP4tB20ctP99m3cnfXo1taB4DV7po/PukB68MFYiaExz+ZjGQMRr8?= =?us-ascii?Q?3inTMSCU636X70tM8kv1G0wjBDAe9Tcrbr9bJ9kDLg7+kEvnJd8Ys4DXr7Rd?= =?us-ascii?Q?dDCkEuHmFvPhk7r/rIP7VuZSZaIme0Xmm48JlCnllKZoZKdauHZpU8AIhjUk?= =?us-ascii?Q?ZZFw6EmAg8Us0KG+3nZ9PUbioaMxT6FPpVBf1cHgbNkDQrJuNnIeeS6JclAF?= =?us-ascii?Q?/NtQWJhIqwwTgKsE6Y41GYDL8lAmUrbpOGfr3J0YxrNklFUO3Ezo4HWyh+wE?= =?us-ascii?Q?ExVwXT17j5sH7kw2Cx2Gu7pe8yjIyB7gxZoP3t9npIu1JXPo/DOyIF4UPO22?= =?us-ascii?Q?MqKQmCjY1wiK8w3GSUKu4wLiSebDOHMC3Z+WHDcQ2PW2sLtsdcstAHKe5bfr?= =?us-ascii?Q?h2n1rHemgZt65Xur0+vc7wyZPd7ZAVQe6QNAeH8UNSa8EfXLd0vCacysThJO?= =?us-ascii?Q?/XaK51IK9nGO2Dj9KYZwrBIC62Cvvx3k/H1oabwVeCEjb1h6jsU+orTdO/G7?= =?us-ascii?Q?D+BoSAU5DjLB0/8Na/ZALu1mwIhy4JPpmwJeVgXr73SEvALccBoS8K77xi5y?= =?us-ascii?Q?OHC+AgsnosDWFM5XIJMy/oGNGjRjX02WheHxd07+hBM9h8JNdV5SpTjhuVHu?= =?us-ascii?Q?3eMqykXOmcCSZSUB5e3TKa/NI38gjcnyemMb/nq8cwHudEVE72Yq2LEAtHmD?= =?us-ascii?Q?Ca0VhrYYRcQQNy1FgnI0NdNplNvBmIxkPrufxl9vraaQAXw25jSDaVmEZ/cw?= =?us-ascii?Q?jNTlwjjhWqrs3HYc0AI9EXZII0NSToQuvJUw4DP+WvO5EFk0ntjchWA2ARYR?= =?us-ascii?Q?vPszlniSeC2fyZ5WN8zCaeMqKteMxOhwEJoZyl3X7tAEoUmBHuovFzC7EXEC?= =?us-ascii?Q?VgegXVUbsuVzEuffdyD6Nqqd5VTv+yoKn8a1TYeoTOgjk3TP8SRs4eQR0G24?= =?us-ascii?Q?5aZmYQ4s99kgw1YTry3y0gj/XaESxFOUBlU0?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(376014)(1800799024)(35042699022)(36860700013)(14060799003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:34.3643 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ca2dccd7-0caf-422d-eb9e-08dda1e27470 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: DB3PEPF0000885A.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5760 Content-Type: text/plain; charset="utf-8" This patch moves GPU info initialization into panthor_hw.c in preparation of handling future GPU register changes. The GPU register reading operations to populate gpu_info are moved into a separate function to facilitate this. Future GPU support can be added by extending this function with the necessary register reads behind GPU architecture version guards if the change is minor. For more complex changes, the function can be forked and we can leverage the panthor_hw_ops structure to provide architecture specific initialization routines. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_gpu.c | 95 ------------------------ drivers/gpu/drm/panthor/panthor_hw.c | 101 ++++++++++++++++++++++++++ 2 files changed, 101 insertions(+), 95 deletions(-) diff --git a/drivers/gpu/drm/panthor/panthor_gpu.c b/drivers/gpu/drm/pantho= r/panthor_gpu.c index 534735518824..ca720e70211c 100644 --- a/drivers/gpu/drm/panthor/panthor_gpu.c +++ b/drivers/gpu/drm/panthor/panthor_gpu.c @@ -37,40 +37,6 @@ struct panthor_gpu { wait_queue_head_t reqs_acked; }; =20 -/** - * struct panthor_model - GPU model description - */ -struct panthor_model { - /** @name: Model name. */ - const char *name; - - /** @arch_major: Major version number of architecture. */ - u8 arch_major; - - /** @product_major: Major version number of product. */ - u8 product_major; -}; - -/** - * GPU_MODEL() - Define a GPU model. A GPU product can be uniquely identif= ied - * by a combination of the major architecture version and the major product - * version. - * @_name: Name for the GPU model. - * @_arch_major: Architecture major. - * @_product_major: Product major. - */ -#define GPU_MODEL(_name, _arch_major, _product_major) \ -{\ - .name =3D __stringify(_name), \ - .arch_major =3D _arch_major, \ - .product_major =3D _product_major, \ -} - -static const struct panthor_model gpu_models[] =3D { - GPU_MODEL(g610, 10, 7), - {}, -}; - #define GPU_INTERRUPTS_MASK \ (GPU_IRQ_FAULT | \ GPU_IRQ_PROTM_FAULT | \ @@ -83,66 +49,6 @@ static void panthor_gpu_coherency_set(struct panthor_dev= ice *ptdev) ptdev->coherent ? GPU_COHERENCY_PROT_BIT(ACE_LITE) : GPU_COHERENCY_NONE); } =20 -static void panthor_gpu_init_info(struct panthor_device *ptdev) -{ - const struct panthor_model *model; - u32 arch_major, product_major; - u32 major, minor, status; - unsigned int i; - - ptdev->gpu_info.gpu_id =3D gpu_read(ptdev, GPU_ID); - ptdev->gpu_info.csf_id =3D gpu_read(ptdev, GPU_CSF_ID); - ptdev->gpu_info.gpu_rev =3D gpu_read(ptdev, GPU_REVID); - ptdev->gpu_info.core_features =3D gpu_read(ptdev, GPU_CORE_FEATURES); - ptdev->gpu_info.l2_features =3D gpu_read(ptdev, GPU_L2_FEATURES); - ptdev->gpu_info.tiler_features =3D gpu_read(ptdev, GPU_TILER_FEATURES); - ptdev->gpu_info.mem_features =3D gpu_read(ptdev, GPU_MEM_FEATURES); - ptdev->gpu_info.mmu_features =3D gpu_read(ptdev, GPU_MMU_FEATURES); - ptdev->gpu_info.thread_features =3D gpu_read(ptdev, GPU_THREAD_FEATURES); - ptdev->gpu_info.max_threads =3D gpu_read(ptdev, GPU_THREAD_MAX_THREADS); - ptdev->gpu_info.thread_max_workgroup_size =3D gpu_read(ptdev, GPU_THREAD_= MAX_WORKGROUP_SIZE); - ptdev->gpu_info.thread_max_barrier_size =3D gpu_read(ptdev, GPU_THREAD_MA= X_BARRIER_SIZE); - ptdev->gpu_info.coherency_features =3D gpu_read(ptdev, GPU_COHERENCY_FEAT= URES); - for (i =3D 0; i < 4; i++) - ptdev->gpu_info.texture_features[i] =3D gpu_read(ptdev, GPU_TEXTURE_FEAT= URES(i)); - - ptdev->gpu_info.as_present =3D gpu_read(ptdev, GPU_AS_PRESENT); - - ptdev->gpu_info.shader_present =3D gpu_read64(ptdev, GPU_SHADER_PRESENT); - ptdev->gpu_info.tiler_present =3D gpu_read64(ptdev, GPU_TILER_PRESENT); - ptdev->gpu_info.l2_present =3D gpu_read64(ptdev, GPU_L2_PRESENT); - - arch_major =3D GPU_ARCH_MAJOR(ptdev->gpu_info.gpu_id); - product_major =3D GPU_PROD_MAJOR(ptdev->gpu_info.gpu_id); - major =3D GPU_VER_MAJOR(ptdev->gpu_info.gpu_id); - minor =3D GPU_VER_MINOR(ptdev->gpu_info.gpu_id); - status =3D GPU_VER_STATUS(ptdev->gpu_info.gpu_id); - - for (model =3D gpu_models; model->name; model++) { - if (model->arch_major =3D=3D arch_major && - model->product_major =3D=3D product_major) - break; - } - - drm_info(&ptdev->base, - "mali-%s id 0x%x major 0x%x minor 0x%x status 0x%x", - model->name ?: "unknown", ptdev->gpu_info.gpu_id >> 16, - major, minor, status); - - drm_info(&ptdev->base, - "Features: L2:%#x Tiler:%#x Mem:%#x MMU:%#x AS:%#x", - ptdev->gpu_info.l2_features, - ptdev->gpu_info.tiler_features, - ptdev->gpu_info.mem_features, - ptdev->gpu_info.mmu_features, - ptdev->gpu_info.as_present); - - drm_info(&ptdev->base, - "shader_present=3D0x%0llx l2_present=3D0x%0llx tiler_present=3D0x%0llx", - ptdev->gpu_info.shader_present, ptdev->gpu_info.l2_present, - ptdev->gpu_info.tiler_present); -} - static void panthor_gpu_irq_handler(struct panthor_device *ptdev, u32 stat= us) { gpu_write(ptdev, GPU_INT_CLEAR, status); @@ -205,7 +111,6 @@ int panthor_gpu_init(struct panthor_device *ptdev) spin_lock_init(&gpu->reqs_lock); init_waitqueue_head(&gpu->reqs_acked); ptdev->gpu =3D gpu; - panthor_gpu_init_info(ptdev); =20 dma_set_max_seg_size(ptdev->base.dev, UINT_MAX); pa_bits =3D GPU_MMU_FEATURES_PA_BITS(ptdev->gpu_info.mmu_features); diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 4dbe23df0c4c..576cda231c1c 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -5,6 +5,105 @@ #include "panthor_hw.h" #include "panthor_regs.h" =20 +/** + * struct panthor_model - GPU model description + */ +struct panthor_model { + /** @name: Model name. */ + const char *name; + + /** @arch_major: Major version number of architecture. */ + u8 arch_major; + + /** @product_major: Major version number of product. */ + u8 product_major; +}; + +/** + * GPU_MODEL() - Define a GPU model. A GPU product can be uniquely identif= ied + * by a combination of the major architecture version and the major product + * version. + * @_name: Name for the GPU model. + * @_arch_major: Architecture major. + * @_product_major: Product major. + */ +#define GPU_MODEL(_name, _arch_major, _product_major) \ +{\ + .name =3D __stringify(_name), \ + .arch_major =3D _arch_major, \ + .product_major =3D _product_major, \ +} + +static const struct panthor_model gpu_models[] =3D { + GPU_MODEL(g610, 10, 7), + {}, +}; + +static void panthor_gpu_info_init(struct panthor_device *ptdev) +{ + unsigned int i; + + ptdev->gpu_info.csf_id =3D gpu_read(ptdev, GPU_CSF_ID); + ptdev->gpu_info.gpu_rev =3D gpu_read(ptdev, GPU_REVID); + ptdev->gpu_info.core_features =3D gpu_read(ptdev, GPU_CORE_FEATURES); + ptdev->gpu_info.l2_features =3D gpu_read(ptdev, GPU_L2_FEATURES); + ptdev->gpu_info.tiler_features =3D gpu_read(ptdev, GPU_TILER_FEATURES); + ptdev->gpu_info.mem_features =3D gpu_read(ptdev, GPU_MEM_FEATURES); + ptdev->gpu_info.mmu_features =3D gpu_read(ptdev, GPU_MMU_FEATURES); + ptdev->gpu_info.thread_features =3D gpu_read(ptdev, GPU_THREAD_FEATURES); + ptdev->gpu_info.max_threads =3D gpu_read(ptdev, GPU_THREAD_MAX_THREADS); + ptdev->gpu_info.thread_max_workgroup_size =3D gpu_read(ptdev, GPU_THREAD_= MAX_WORKGROUP_SIZE); + ptdev->gpu_info.thread_max_barrier_size =3D gpu_read(ptdev, GPU_THREAD_MA= X_BARRIER_SIZE); + ptdev->gpu_info.coherency_features =3D gpu_read(ptdev, GPU_COHERENCY_FEAT= URES); + for (i =3D 0; i < 4; i++) + ptdev->gpu_info.texture_features[i] =3D gpu_read(ptdev, GPU_TEXTURE_FEAT= URES(i)); + + ptdev->gpu_info.as_present =3D gpu_read(ptdev, GPU_AS_PRESENT); + + ptdev->gpu_info.shader_present =3D gpu_read64(ptdev, GPU_SHADER_PRESENT); + ptdev->gpu_info.tiler_present =3D gpu_read64(ptdev, GPU_TILER_PRESENT); + ptdev->gpu_info.l2_present =3D gpu_read64(ptdev, GPU_L2_PRESENT); +} + +static void panthor_hw_info_init(struct panthor_device *ptdev) +{ + const struct panthor_model *model; + u32 arch_major, product_major; + u32 major, minor, status; + + panthor_gpu_info_init(ptdev); + + arch_major =3D GPU_ARCH_MAJOR(ptdev->gpu_info.gpu_id); + product_major =3D GPU_PROD_MAJOR(ptdev->gpu_info.gpu_id); + major =3D GPU_VER_MAJOR(ptdev->gpu_info.gpu_id); + minor =3D GPU_VER_MINOR(ptdev->gpu_info.gpu_id); + status =3D GPU_VER_STATUS(ptdev->gpu_info.gpu_id); + + for (model =3D gpu_models; model->name; model++) { + if (model->arch_major =3D=3D arch_major && + model->product_major =3D=3D product_major) + break; + } + + drm_info(&ptdev->base, + "mali-%s id 0x%x major 0x%x minor 0x%x status 0x%x", + model->name ?: "unknown", ptdev->gpu_info.gpu_id >> 16, + major, minor, status); + + drm_info(&ptdev->base, + "Features: L2:%#x Tiler:%#x Mem:%#x MMU:%#x AS:%#x", + ptdev->gpu_info.l2_features, + ptdev->gpu_info.tiler_features, + ptdev->gpu_info.mem_features, + ptdev->gpu_info.mmu_features, + ptdev->gpu_info.as_present); + + drm_info(&ptdev->base, + "shader_present=3D0x%0llx l2_present=3D0x%0llx tiler_present=3D0x%0llx", + ptdev->gpu_info.shader_present, ptdev->gpu_info.l2_present, + ptdev->gpu_info.tiler_present); +} + static struct panthor_hw panthor_hw_devices[] =3D { { .arch_major =3D 10, @@ -55,6 +154,8 @@ int panthor_hw_init(struct panthor_device *ptdev) =20 ptdev->hw =3D hdev; =20 + panthor_hw_info_init(ptdev); + return 0; } =20 --=20 2.49.0 From nobody Thu Dec 18 14:30:37 2025 Received: from AS8PR03CU001.outbound.protection.outlook.com (mail-westeuropeazon11012040.outbound.protection.outlook.com [52.101.71.40]) (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 B531E227E9B for ; Mon, 2 Jun 2025 14:33:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.71.40 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874824; cv=fail; b=TyOapHIrQgyg3KqYlXZ4VzfddikNawT8acq85Y3WjOjVRU6XF4/k/NiKuuJQKrItKLpErFMEZrcOG9dE177fMIt2yUibZOmrEUxTE6/FWWoAvxlsrCC+kbwIy/yZ3H2obihMXviSETN05OJD0PTGf6KtRObaLzWRM9Vi5qopops= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874824; c=relaxed/simple; bh=CpAO9YSAH6unk9i7VseVK/kNs1UaUbEIWo5MofigL3o=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=ce3M5o9HvfczGfRYZkpKVZYuoVQo7bv/zoiSv+bVg6srNdpIoYi1kzZmla2TixJs0Tx110UdHrIByiaE3qegYcPoi3YeHRpEKiCwN6qVCDdD1wMIJEQN/y4+MbtYEuju9/pUklLp6PG1RrK0Cyr76q+Ul+pOx8y/KbXmh+IswAU= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=k7wwiHCn; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=k7wwiHCn; arc=fail smtp.client-ip=52.101.71.40 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="k7wwiHCn"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="k7wwiHCn" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=RK+aBVllDDdOJpLt4APBxggKX/FThBH+jUmMNyqq+EEOgDikLweJGkwmvXER2ZfvV58tUt/7HICR1RHhVpD2C9AMtTuCltkF000xZjoVBWriwNDtLtinMoCXck2wmRmYj1exDhwV/J6J6Bahg1csnHkcgxQbFm/+XvQFuSWppQIYZCSTAcI81noVAsDi9zNvbYrq+UZP9VSULY1vUPG90RVVAUci/dAF22AOWZuf7K/PrLRiK0ZDyxb6OjbCo98DfhMPcs1mMd/EMMS3uQc2Bu8b7VxwtA4+/DkysJZ3ll13oBVrdG6sOyAsWZdcvT4ygpIMkqI6Ua/Sxm6FMh0FQA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YYSRkCNnaGAKA+FBxg2i44JxbDRqCedCP8l/aG2+2KU=; b=kDwnmJEPBLcpPHMsmt/O74SCl5zCU59pCnnfv4Bj7vUEu7fGmOO5dG57Qb7dw4UQv+CyeJwmjGMOMxuSDZj3JWiIiLLNKHoZ2H/sxfhIj2A5cmBq7s3hiCt3jJPsXyG6CTeGWmxvHI4gGI2aAVBrMPes/Tt0dgDZ2m9khtTcm7Lyp/BP1PwUuXt6MKf5mIB8nSB0CHxmanr/fT8Jc+E5fgVduasvsyg2bpak2w5tNYLQUc17Kthuv2Uy9JphKWRMGi7K6vkS7ViWIQol5YYeSgmDPvyBEshnAidnAmx9tKoc5H1GbcjcJKgtoLrZv66AgWcrVX3eRzsGRPsR7K7btg== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YYSRkCNnaGAKA+FBxg2i44JxbDRqCedCP8l/aG2+2KU=; b=k7wwiHCnvZDawn9sERmxikwCBlgCxwXmh/WhAZn6hglHVkbztJ4HUiaieaRvs2KVKqBJZv22BVFZP5+wZMMU85MltB9GjmXChVYk00KlpK1QepWbj0eby7ao9OiRgsKBHZBRaf8LQUzswGKHPE+rd5fa1s8gfcqRlxy5fsxqz1I= Received: from AM0PR03CA0008.eurprd03.prod.outlook.com (2603:10a6:208:14::21) by VE1PR08MB5855.eurprd08.prod.outlook.com (2603:10a6:800:1a2::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:33:38 +0000 Received: from AM4PEPF00027A65.eurprd04.prod.outlook.com (2603:10a6:208:14:cafe::88) by AM0PR03CA0008.outlook.office365.com (2603:10a6:208:14::21) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.22 via Frontend Transport; Mon, 2 Jun 2025 14:33:38 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AM4PEPF00027A65.mail.protection.outlook.com (10.167.16.86) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CRNdiP8rz0xwzVLWoKesBkRblslvrcQcLUVkfbqZ0RbaJSp6d/Ns4m8Fpel/GgJVSq0GWL6xLzkwqRQmwMrfqGJ9Zf4hK5L7+uWCJF9ZGzKCozkOi+mNR+spNBkAHvjjfBJwY+IlLMwo5+od1WYeI/+1YzLWHG8s8OL4OYv11Ly5mJXDXDAO7AjTdlbdYBlM9AwToIfVLI0vTGC4jLDalAkkjYHwhoGcotW5a3Qe8NUG+YUSo87fkY1kb1BNRpJ1inliGyh8CAp7YCUDpaXt04cMiEzpBhgc5FsnJEUQOV8fCL1gjbGJT4IcjLX6xlcJ0jBChLyaHJeUfuzWcSsjKA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YYSRkCNnaGAKA+FBxg2i44JxbDRqCedCP8l/aG2+2KU=; b=yXFOuxLomaZnQffjcDw2aoLD1kNcQ+WICk5q6kewvxnB7Op/hjaKRB+Eodhywbx2Bk8hJOBAnNGHYA2AdIGEiH/8rkKOI5nXLJ+jy99W6qWdKsOVaZWYfS4sF3uFFCKgi73uJsiXAW5wRqSRNlT9AOMDSQ2nLslbC50x3KbGe538MAt/1LmWldrSrJPOTghNV5QbLbYRF/xf6XaABYlRYhgLyFQNqk0/UBderRf992gbp3//36Rv5+4jVtDs/jl+8yJpyNZns7fnz9nzqFrYAPkKqZY7NU2JxGEMYNVIkVCPSVgIC6wRuMQaEcIKGUz7rsHcvhaT6IE2TwlEtp8CGg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YYSRkCNnaGAKA+FBxg2i44JxbDRqCedCP8l/aG2+2KU=; b=k7wwiHCnvZDawn9sERmxikwCBlgCxwXmh/WhAZn6hglHVkbztJ4HUiaieaRvs2KVKqBJZv22BVFZP5+wZMMU85MltB9GjmXChVYk00KlpK1QepWbj0eby7ao9OiRgsKBHZBRaf8LQUzswGKHPE+rd5fa1s8gfcqRlxy5fsxqz1I= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by GVXPR08MB10809.eurprd08.prod.outlook.com (2603:10a6:150:158::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:33:06 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:33:05 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 3/7] drm/panthor: Simplify getting the GPU model name Date: Mon, 2 Jun 2025 15:32:11 +0100 Message-ID: <20250602143216.2621881-4-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: VI1PR03CA0048.eurprd03.prod.outlook.com (2603:10a6:803:50::19) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|GVXPR08MB10809:EE_|AM4PEPF00027A65:EE_|VE1PR08MB5855:EE_ X-MS-Office365-Filtering-Correlation-Id: 44ca8931-b900-4517-5ff6-08dda1e276d2 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?ELk/60kXWbV+gdPdMLyfKUkZ5fbKOUq3V2Eczuo+lbLfeI5yS4HIrQ4lEGzT?= =?us-ascii?Q?8ivHSjph+Xq6hLQdTsroGvmKr+vxTR2Mxrknr0VtH+u06/8R7KDbrbpiJyXG?= =?us-ascii?Q?Gz/HpqV+u8gt2gxNdabrU3DSTjxDUXVyVGVGkGUZe/OpKRuT4JJHHZQD9FWX?= =?us-ascii?Q?6X+nPdEpLu3ZwAXFpXNeQjWc4OsH0m3ym2jHjnkxza6xjFYyhNf190AzICzJ?= =?us-ascii?Q?YOBi4echV9fqGxBgIXTuxndcN/RtX4LRwd+Ncq5FudmlL0MgWVqmGi9MOzp6?= =?us-ascii?Q?tUJ7JimNRTyN08cMvguWydToOuTdjMG2JBsAlURpd1t6f6hu6AOrl10mxd05?= =?us-ascii?Q?dDoSoH024QoIwAJ6+UeG8DDzcXZE7flP75km8fhHp5Qqt928b9x+LY64poK2?= =?us-ascii?Q?7YcVKZtvUCVLHvApA+5KpFcqxFClhizTVGzD6GpBaZgw8izlADNAYUS7/DQX?= =?us-ascii?Q?kdwMaN2My5/NeLNif/K0RDbbPqyrhgupi1vxXe1Z6v9fvlGjptsG9PkZoO4G?= =?us-ascii?Q?k6wTBAiuecWfiR1R+s7EWmtM5ZxQ8Az19o7jMRMPtlj+OzgxX105Y88XQqHs?= =?us-ascii?Q?cxbIcLgRCkQ4AALaJWGYtGcK7i2VDDZ+lPEMw7d7hFG3y2T6x540Xd+so16h?= =?us-ascii?Q?GgOzdsVQAYgz86cd0G/ZP0jbtHIFV8Wu4fFCzA1wZnscL0XdZNkObLZV23k/?= =?us-ascii?Q?567zaNNrxmGTbjskb1hEjtjq6GU9t5DkdMvlwUfJStSAiGLHaRomz+hzY1Ve?= =?us-ascii?Q?yk6huBrjSLVtevEFZ5Vt7f/Tcd67Ff4J0nLwxKBKiTjvk2/l3rmcDfZQosuP?= =?us-ascii?Q?6VMjuXYSZRjfaUp+8SyFFz2doeeSBsl7ZUZ711JmJQIxFOnTGw0e2qu4XVUS?= =?us-ascii?Q?el9NImVdzLAhf8NCYVM77zkvkkgFksn17AKRfg1ZlYSQO+xK05kBMlca9xRp?= =?us-ascii?Q?p29hSzZHmnox+r2g9TuWKmzGv4WvCltRkPut/HZYUs1HlbC+NUydiO5exD92?= =?us-ascii?Q?Z5ubCcIvkBSLJJbRmBIklnY+nQPceX9Vx/T3DP9xjt3wxN27dSNGfNGYQSiT?= =?us-ascii?Q?cKCLSDNcv6kYXwU3CgYQvzviKwkT2SowfSxxfMQdPJjtRq5fxZtyc4gpjPaR?= =?us-ascii?Q?/Bl0yd4GWqe+RVG0rheMFgIcTw8V1dGm8Qnq89GJBwpfn8evqkyg6wXMVQwS?= =?us-ascii?Q?rB0GwqE25k3REfa83/mscapcWJxzL9GV+v7/TuXhd78iU8/EsgOv3wcZ876E?= =?us-ascii?Q?sbXp3PLHmsW63ikVO3LXaaoPPn7x+2XMx+h965UjTSRSnquaNPB4lP36vrfC?= =?us-ascii?Q?kaMNWcqfeRXWQ/xGKv2ehE01KvtbmII0xhM3KvGGGn5Wu3ZKM1GD1Ag3cXz9?= =?us-ascii?Q?Q1hmccCutEiushY69TjDy8RSutMiIb60k2qMQursKdcsjc/JSw=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10809 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM4PEPF00027A65.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: cd6c7465-a08b-4cb6-e39e-08dda1e26343 X-Microsoft-Antispam: BCL:0;ARA:13230040|14060799003|82310400026|1800799024|35042699022|36860700013|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?XWoKxGIhtnGV+NPtBEUjmvwjuja3RU7dYsyfN/i6jo6ATEWSEUFXyVkUCDF/?= =?us-ascii?Q?wcDHZpwhMeRA6yt5f+KMVuxmtkANFB266sN3qZDm0Sh241e9O/8eKZCdQTuw?= =?us-ascii?Q?oHWe9Y4y8vwH71rk011nWNGeFq43EMVH0lqRIz0ahpLDlnuY1/dxHCcsEHG4?= =?us-ascii?Q?kZ81HOs8MVnx4TsEq1Nb3t3Pli81iQLSW5OP8RPbHKXso1iSNIygSnupLukJ?= =?us-ascii?Q?KMi9i0IPR/LRwS0mYmO7/x+A8X4CkJGzj9Gc2Oar/za7Py98AGNCjlh1/00W?= =?us-ascii?Q?4kTu7aYWJUsTAA5/Qiv/d7nIQ7kUOuNwDdXfJgVoNKG9t5RfCZ0XJ3euSQMj?= =?us-ascii?Q?/R3fox6XqdO03SvPg8a23o2Dh7pAal9svUYq9MxTP4Izn5bunsOnUXOiyOIy?= =?us-ascii?Q?FQcDKNXh1nOsQjLTAsgf5iRlXJekKdEjmenZfWQR09a52wHczlpUyBs2tj+L?= =?us-ascii?Q?FXUtoxBfRfxtcLpmpCN79ejIQZLxUKk+2/nfu6pseh3JmREclwx44jqNLNqL?= =?us-ascii?Q?FFE21C97XLHYZKi15YN6/tLO4G9fGipHdBRvYzkLqnOkAbvw66PV2ceYw5pD?= =?us-ascii?Q?9w6G/89yXKqRgrRpofczaHaZqk12Bw4XZjNNWF/HJcP626nEhLf9jrpu4QGc?= =?us-ascii?Q?E7geBcMnA4ZfT8DPVaWmFnwpO5H/hFaH4A3S+nvY9bSfXtDeyoJbRd4m9jEO?= =?us-ascii?Q?Amyma6kvjxW9CnoA4gOfgVkbq/jRFFhDtMk4/Rm3g+gWG6m/rfUFfzY7xztR?= =?us-ascii?Q?OSGUtaAHatYq2uU4D5Wc+3P4y3IDQz95fc3yG/vMpKmOcN0Kg6FWe1qA1i14?= =?us-ascii?Q?ReLp7ey1skqQ2N4qir9FgDA6cQP4rb5Vl3RPnW+6Typw/LVQcJPvFh+HyIqP?= =?us-ascii?Q?vMBkSB0VaSqkWWaaDxT1TS2/fnJ2a/888LDN8pjGCTjpwS9wsO8ckMNwJvdh?= =?us-ascii?Q?+xnV0hRq5b8Cv7WCfAPF/tQDO0/GUryGiGXliJizlUvwjcQSFle+9ETo6W5h?= =?us-ascii?Q?yVVoCBHlRb1Bpvwim0920+bJvMVKhWiepdtSDjH0T+UyhM/ju9mWjQYhX+L5?= =?us-ascii?Q?0gBLpTzGjESfWXblaE4YHLWjHvyTVSuNUSW0bCtXEiVRN95Vb7FM8UK99uMC?= =?us-ascii?Q?YthftKp5crIMaDUqlX5YQiXnAGOFpDJVd+xuYyLO6GVA1FVKD1eWLiy47Mm7?= =?us-ascii?Q?1n1QqipeK2vszX6bS+qDglS7snE41QRjRLZBQYFe3uVmpInFzHpU4l9U6Qwp?= =?us-ascii?Q?d5M2Bux9Kxp8CBovUW41fzY3iIB9WbzHF1Zm3UZVKJ9rFZRJidnII1eox4At?= =?us-ascii?Q?yiBYzkQ3J57mEjIznx5WxL+9njlP38UhXnED731MIxemlIEN4z3ySEhr3S54?= =?us-ascii?Q?mjn3aCoEgb9rF7xyq3fR/Hr/Sk0jlM5uoTpfXQM2pG4yrSst4nS0y6oZfh98?= =?us-ascii?Q?6k7uUHkfK7g8CBngrb2Jn1lhVcXihQAPXgpHGGVM31Lv/hoRGfqn2pbIyXCO?= =?us-ascii?Q?I3ROkCzPDyf7jHDE1RW70qXuLsuyIHMSTVNO?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(14060799003)(82310400026)(1800799024)(35042699022)(36860700013)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:38.3720 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 44ca8931-b900-4517-5ff6-08dda1e276d2 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AM4PEPF00027A65.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5855 Content-Type: text/plain; charset="utf-8" This patch replaces the panthor_model structure with a simple switch case based on the product_id which is in the format of: ((arch_major << 24) | product_major) This simplifies comparison and allows extending of the function to accommodate naming differences based on supported GPU features. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_hw.c | 63 +++++++------------------- drivers/gpu/drm/panthor/panthor_regs.h | 2 + 2 files changed, 19 insertions(+), 46 deletions(-) diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 576cda231c1c..421f84fde7d0 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -5,40 +5,6 @@ #include "panthor_hw.h" #include "panthor_regs.h" =20 -/** - * struct panthor_model - GPU model description - */ -struct panthor_model { - /** @name: Model name. */ - const char *name; - - /** @arch_major: Major version number of architecture. */ - u8 arch_major; - - /** @product_major: Major version number of product. */ - u8 product_major; -}; - -/** - * GPU_MODEL() - Define a GPU model. A GPU product can be uniquely identif= ied - * by a combination of the major architecture version and the major product - * version. - * @_name: Name for the GPU model. - * @_arch_major: Architecture major. - * @_product_major: Product major. - */ -#define GPU_MODEL(_name, _arch_major, _product_major) \ -{\ - .name =3D __stringify(_name), \ - .arch_major =3D _arch_major, \ - .product_major =3D _product_major, \ -} - -static const struct panthor_model gpu_models[] =3D { - GPU_MODEL(g610, 10, 7), - {}, -}; - static void panthor_gpu_info_init(struct panthor_device *ptdev) { unsigned int i; @@ -65,29 +31,34 @@ static void panthor_gpu_info_init(struct panthor_device= *ptdev) ptdev->gpu_info.l2_present =3D gpu_read64(ptdev, GPU_L2_PRESENT); } =20 +static char *get_gpu_model_name(struct panthor_device *ptdev) +{ + const u32 gpu_id =3D ptdev->gpu_info.gpu_id; + const u32 product_id =3D GPU_PROD_ID_MAKE(GPU_ARCH_MAJOR(gpu_id), + GPU_PROD_MAJOR(gpu_id)); + + switch (product_id) { + case GPU_PROD_ID_MAKE(10, 7): + return "Mali-G610"; + } + + return "(Unknown Mali GPU)"; +} + static void panthor_hw_info_init(struct panthor_device *ptdev) { - const struct panthor_model *model; - u32 arch_major, product_major; + const char *gpu_model_name =3D get_gpu_model_name(ptdev); u32 major, minor, status; =20 panthor_gpu_info_init(ptdev); =20 - arch_major =3D GPU_ARCH_MAJOR(ptdev->gpu_info.gpu_id); - product_major =3D GPU_PROD_MAJOR(ptdev->gpu_info.gpu_id); major =3D GPU_VER_MAJOR(ptdev->gpu_info.gpu_id); minor =3D GPU_VER_MINOR(ptdev->gpu_info.gpu_id); status =3D GPU_VER_STATUS(ptdev->gpu_info.gpu_id); =20 - for (model =3D gpu_models; model->name; model++) { - if (model->arch_major =3D=3D arch_major && - model->product_major =3D=3D product_major) - break; - } - drm_info(&ptdev->base, - "mali-%s id 0x%x major 0x%x minor 0x%x status 0x%x", - model->name ?: "unknown", ptdev->gpu_info.gpu_id >> 16, + "%s id 0x%x major 0x%x minor 0x%x status 0x%x", + gpu_model_name, ptdev->gpu_info.gpu_id >> 16, major, minor, status); =20 drm_info(&ptdev->base, diff --git a/drivers/gpu/drm/panthor/panthor_regs.h b/drivers/gpu/drm/panth= or/panthor_regs.h index 48bbfd40138c..e7a81686afdb 100644 --- a/drivers/gpu/drm/panthor/panthor_regs.h +++ b/drivers/gpu/drm/panthor/panthor_regs.h @@ -19,6 +19,8 @@ #define GPU_VER_MINOR(x) (((x) & GENMASK(11, 4)) >> 4) #define GPU_VER_STATUS(x) ((x) & GENMASK(3, 0)) =20 +#define GPU_PROD_ID_MAKE(arch_major, prod_major) (((arch_major) << 24) | (= prod_major)) + #define GPU_L2_FEATURES 0x4 #define GPU_L2_FEATURES_LINE_SIZE(x) (1 << ((x) & GENMASK(7, 0))) =20 --=20 2.49.0 From nobody Thu Dec 18 14:30:37 2025 Received: from AM0PR02CU008.outbound.protection.outlook.com (mail-westeuropeazon11013019.outbound.protection.outlook.com [52.101.72.19]) (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 0C85F17BBF for ; Mon, 2 Jun 2025 14:33:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.72.19 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874840; cv=fail; b=KKWRXarC8kep+caS4nW2T7jrlWCzN3asUBZIZJhLzGZPgRi3YeI0tTqYwvbvPnTq9q8j2SQh2/w2eFdbHKtCRZqus6ZL7rUNHsO7cfnG1Oj4gv2ZNn9vmH0yHioqPbrmgjzfDCqzsZZMMbaR4ot8HIA9XkTJLV0LKD4bOyJXJv0= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874840; c=relaxed/simple; bh=n8Kw4ysoxQ18cBDDo5xiIZ/hMcESe7A0L1cx6FpkmQg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=gHhTYQRRu2lPwzGBWexoZ8zM/7xjchh0jHyJ2v2+4Xti6WriFzLuQqNm3N7kDd8A51lygJm7sqfiP909gNjM7B7hpsTUM+rbHQXsaHs/qmhES92aNWfHtfqoVtsYKDLD0j5mICUsnMOWz/Kx0Jdx6Al2J2ovJTePd1En7GRMcVo= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=B7LH8wj8; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=B7LH8wj8; arc=fail smtp.client-ip=52.101.72.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="B7LH8wj8"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="B7LH8wj8" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=p68q5kADRCBzcEd5mqG0fqWTwjQRU1Dwa4TyIbg3jdNjtlPTqKFrPTeomkYOR4THVNIcY7+a3rievMUMGxc/cNj0e6nnkLuwolvD/pWhK2WnHfoPBCsU78ZQhhywrF6aTqohKNo2+Yu567bZdW9xx3n/a/oS4PleBOWsOmiD4Xk8qWV/L8t6TNsm/WIZeOoWhUKkbjiW6ovnUD6QDE+0WlnSdr0poQWHyfEY4QxWOPCgDFm5Emey2hQ0gI+k6jT/G7LChiAWiGDy/iOpZd9+nXRfjvhNxJCNrZY9U8xJnU+HB2Dup98AFmsODX+SCJ7rO+Xg0CS14gxlR+GteSWatA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7rDGmSdfteGoIfKuzX5uIALrHmiyn7prJje3zFECTP4=; b=fbasL7Q7iRq4cJsATU10zukgPCR6rbKRNx9iZ37fXOYGjpcNVvX0S6R7KgYC956xfrYdpMLkObLZd+zC7garJDslwRnSBohvrCLSMR4IYOdZ/D6JdVH/5n04BgxgR3Za8HdhcFeB12NU7IiISIojHa4+XOQ6rVwueIgrt79Rtg5JVaDl5u2cqJBGvSkYhh2W0g5aWLsptQfxMJIjCrrPSxW8Xb930a61ULCsio+RoMZB3wJo+7Dv5C9kBgtsTn5OwGkWuPEoTrnCt/faQ7tehn7xWEE0APwuqBUO3oQ8hwZ60LGznMABPFsW4w3T9YZuq4809Xdy1g8y0rY3fr49sQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7rDGmSdfteGoIfKuzX5uIALrHmiyn7prJje3zFECTP4=; b=B7LH8wj8Pbl2xxrnC+hL1m79OkLSQ8N+y4joKe+fx5FkNe15YAlkKYu+5GP8RQcRixkzv/IFzvWe6qm6R2TMUXjVRZ6iZOL3Cyp6+WxtPSVO93DBkCxWFFV4M8VDVwmJ76i8dUSnK0rOEcF24xxniLvtAfi/3DulPxPqi7++e8o= Received: from CWLP123CA0102.GBRP123.PROD.OUTLOOK.COM (2603:10a6:401:5f::18) by PA6PR08MB10442.eurprd08.prod.outlook.com (2603:10a6:102:3c6::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8722.30; Mon, 2 Jun 2025 14:33:53 +0000 Received: from AM2PEPF0001C70D.eurprd05.prod.outlook.com (2603:10a6:401:5f:cafe::25) by CWLP123CA0102.outlook.office365.com (2603:10a6:401:5f::18) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.23 via Frontend Transport; Mon, 2 Jun 2025 14:33:51 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by AM2PEPF0001C70D.mail.protection.outlook.com (10.167.16.201) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HchyYc+1WrvFZGMKEg99DD/KLFeHJMpe9rO2YHmSI683NKlKmHqpY32KFmErX9ibpG6R9/pAzA2SjcxAEDsoKQEMRI09URA+/Jw69nCIrJm27g2u+fc7MXtdYEQ/tUSreosQ7m7PTtX8/CceWAlqOKrkzSfZ3BcrhHqiD2XKaEF6wRH1kWhVp12g/GSvVi5FvPjIbrvggm5Ud4hgQFwhtR7/QxEpW3tgym5IB1oha92m1vMXjZL/PJXv3Di3lJ/AvqnWXAJZ3I8gI7G7i2tjqjXBTo0wxViNigmoHbJQf40Uujb0HKVOzW9wS+vCIAW8HlKQxqbXV0ClQXJG0wJ0tw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7rDGmSdfteGoIfKuzX5uIALrHmiyn7prJje3zFECTP4=; b=Vd7LtyNjPfnKkfExrSVpwRsM+/oLsqyocW65HFVWP3RY0GsB0KEw1TDNa+ymJf1bJ6Q/RmeMlFg4ASEIMBPRMuFBwnpXA56WhtJZX1QpRi6UX/YN88WkEcwQ/onwq/vcRW2yba+U0JvfePxKE+f1Sa2DaRpTOjtfSnyg1JsXW6i5hSY5xXWDjimBLtr6x1zbo6+2ZdyA4G97oDBjMTuxW3tF9Si9L2+6xtJ733CUZqxTQIxPv9i/FRuzZd9fhIJ72JdRnbEdH+4hz+UEwX0tXIqDJSXwL3ckr4OaoBO7Scs1vKpkPSMkf5hafs0ZDtam84SwlXG6phcPAA5f4hJd7Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7rDGmSdfteGoIfKuzX5uIALrHmiyn7prJje3zFECTP4=; b=B7LH8wj8Pbl2xxrnC+hL1m79OkLSQ8N+y4joKe+fx5FkNe15YAlkKYu+5GP8RQcRixkzv/IFzvWe6qm6R2TMUXjVRZ6iZOL3Cyp6+WxtPSVO93DBkCxWFFV4M8VDVwmJ76i8dUSnK0rOEcF24xxniLvtAfi/3DulPxPqi7++e8o= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by GVXPR08MB10809.eurprd08.prod.outlook.com (2603:10a6:150:158::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:33:11 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:33:11 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 4/7] drm/panthor: Add support for Mali-G710, Mali-G510 and Mali-G310 Date: Mon, 2 Jun 2025 15:32:12 +0100 Message-ID: <20250602143216.2621881-5-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: AM0PR10CA0037.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:150::17) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|GVXPR08MB10809:EE_|AM2PEPF0001C70D:EE_|PA6PR08MB10442:EE_ X-MS-Office365-Filtering-Correlation-Id: 13cdcafa-046a-4691-8fb1-08dda1e27d86 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?096xOTEMfFVf0yslrAuPNyUFc5ijeU0DQ1OSy+uaKNNcEbjHfzbxOx/qLZmR?= =?us-ascii?Q?F2U54N6gEnjAkVNQmJFSvIHGH9fXOaAyVlPs0O8VVd+OeUuqszzAM4AdoDSl?= =?us-ascii?Q?RxFXhxVhTigCpKKAnz7eo5U54e+hw0RLBBWdT3gBUqZeZ+xwZNKS+I09hF+d?= =?us-ascii?Q?CqjERJ6c/Dtn8yUhY4Q9T6p2n5uUd9zQene7hgHHjmkhxKBmJqjIOqZvKeDH?= =?us-ascii?Q?/6LBOetg9fPuT9zgxUPjxyiCee+aNL90v6PK+yx+4y8Dl6LR7E3njzY7hy1J?= =?us-ascii?Q?GL3f4SRE7PiaE+cHa+nNWEZvLnhuLUg4agJzG9KjT2JGgQm2BVwKoMeU5s/m?= =?us-ascii?Q?4y+7AmIv6KVavlcmlKUE+V3OodcepTi7cxdD/S0hGisEUrMpRTFAbK3hHQU3?= =?us-ascii?Q?/pzarpxl56nqD9kFeREu8ORAWvE/FeQVeAoGTLpSKiZowTGOc2oXP1WY7udU?= =?us-ascii?Q?pdIssUm1mhdqlodoiwKcLtMyKaSQYEiFUVJTESHieUPM5czQtUL8SIyy8oCh?= =?us-ascii?Q?8wzr9v1aPQ+EwYaWvxnmmt/dfcmei9H9e+finGL6K5nZnAtN6eIz8kwP4HWq?= =?us-ascii?Q?pKZqwv4G4mpOh/KbYFt0Q41+4SEMcvToFURLOcdS4CZPTaNAzH1QlSy3Prjc?= =?us-ascii?Q?Rouh0/IxUkGuyjNtUCpbhMAw7UfNgrxRd0SU8PlfHjTxsUAheCdDWtO4dPpP?= =?us-ascii?Q?aXWGJaxxIo8w7ldmavagGH5YN3CK2mHw8IGn0oSFX9cqUiwkmBsCD3lqSqGx?= =?us-ascii?Q?jrPpAKZ6senS/3cgv/d8n7+NTTYMmhTo8yKvVDzu2qqH4w7AxM0mV6TlJYgZ?= =?us-ascii?Q?pXaF80DvVz3JvVjWYU/I1RLIueSprq9qx5vrcnm6pf7DCflu1SD+t8HMYLta?= =?us-ascii?Q?8cHSg4sBCwGG3L10LxZFCtqgh1Lb7Ixemp1JRTpPKtb5BjDH4hcr2kOtAlIK?= =?us-ascii?Q?6qF5FbfsbHIfjuvMOIU5A5p4b1sDmToQtxQCxW7tsv/G/RqL72tn0JiYkMbD?= =?us-ascii?Q?1LH3FJ25wqPK7JYNNvPTixkYqH8NSbnnktbFlP6kdmBfZ/HkZaLjBdtqoMx1?= =?us-ascii?Q?dKS4Y2EPqqCcDSOEfvnyNNoMPsIcWXYdw7hd6+ZHzH92S/QzctIPko7ZKar2?= =?us-ascii?Q?e+izPnAXcWLAvhs4v9iOgbh+gmXKZRRnsItUl2teyBeVmWKWWMUZF8J8EY1Z?= =?us-ascii?Q?D1SK9dTwOmHU0Ho4qm9Lcab+y4ZI946DMfFQN4m8ziRODUPE8iU1cSbmt037?= =?us-ascii?Q?9pVcrGhgR5l+z0vBNUfvIZKRztOy0sVeuyIOUGa7dAxP/kq2zge8nNOZlP3v?= =?us-ascii?Q?2CogifAsr/5T9VoHya9YVrWHAEHByeepaLgj4hlmnj3DINBtzJ9pDfDYDHiE?= =?us-ascii?Q?CoxJqJsQomnLpS8gP1ULsj8LxhLrdwzWQMPbrv3ELdJAlvuFqVHfbAWetcjm?= =?us-ascii?Q?tDIFccBmbZQ=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB10809 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM2PEPF0001C70D.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 4d806adb-380b-4950-10e8-08dda1e2664c X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|14060799003|1800799024|35042699022|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?izNvmQXs0l8SR1f5Qvabj5t2/qCUkl73K3gUUD5IC4MuFfZ2AvmG+Onmh+Oc?= =?us-ascii?Q?d0Q2Dd76cJuBFNZ93XY2nHIyzPOWuGo1hoVMudhLK67ffoJgvlY5KjY0x53y?= =?us-ascii?Q?NIe+WplFrCKcFYM1QtvzlWZf+EFncz79qZUrry0a5tbRyHR5M49JG966f4Oe?= =?us-ascii?Q?6dMuPaKjRMwUkopVnXBAoHiogzAon0Ov9sfpIROzRgJzPLCYsXP7JXC81k/R?= =?us-ascii?Q?Ij5fZpUY1A2MKcok45W0Jkpn3gsgojOERl5MzlDpYXFGwRpEeuryhbyrSMZb?= =?us-ascii?Q?FSiM5OxdBs1Qv48P5u17H0FoB/lU9/V8U1Tyd0cxl3Nks7Ypk9u442uc+tTW?= =?us-ascii?Q?sshiX+dMD6YDsMxnMatna/iFCE1W2NYomduT9S2SlNRxCta5466aqB8jQ4YP?= =?us-ascii?Q?TWH/opooDSciuMa/ik/oKlfSa0Ku5IjkcNvT1DRtpUwsfF8raUEbQUEFRlbQ?= =?us-ascii?Q?tFXL0s+PIYlQoXIlpgBe1/ded9DZuoc3nS2Am3DP1w1n97bEQYlU0Eo52mY1?= =?us-ascii?Q?ZfD30r6GKwCc1dr9GqP2TlijnGv26is9ETYm7ZNfmtDIouhh4zNjQgzFgYRI?= =?us-ascii?Q?6akkq5atAoUPlXUbhSwKRh4R2T5XbS+l2vdyYxhBmXoe/u4cUzs3DzqT+JN6?= =?us-ascii?Q?5RSc/0esYDnhX8Vzgm1eMBtCZIPJsIxpS8NLngwmKT5Ui98mlHNfHojetrIK?= =?us-ascii?Q?FmVbCooMcbi+IN4OLdyhp6MGf8X4PyZviiNrH8VxoU8rXdr1qku4fdt3MPNA?= =?us-ascii?Q?dZfSu9+JPyo44SZxnZ5m2s33dBPR+vr226sVmAlIGnpmy0KLNZQm1Kvhfych?= =?us-ascii?Q?iva7XOOTPYehBWsQx0xn1gF50C09QRTHlic0F0Xzj4wgucmF0ero/KnFPa+w?= =?us-ascii?Q?uDUYaj27UXx+ulb14Xcbvyq5+8j0tgJFY7S72ZLsbTdoEL7HW1fT+NdKi3iP?= =?us-ascii?Q?pb4eT+5ilkbwzSYN9QpyU8juJKXIFGE5wPbo8QxjfNoDKcfyooy51DFSuYBW?= =?us-ascii?Q?u1k+9oGeYo58O+efRrjbAJh6uIwSR1KNramM9FdATP/kh8xj4lErfKwS6L8T?= =?us-ascii?Q?9cx+1BPXlwlvppn+X6DtOGfA+Lbonf7R297Fnc0yfslNj5201dxGhVhpkpyJ?= =?us-ascii?Q?UTY3MQs/0GwSM7m8S0IlWHDF4O+It5S0PDw0BJ0HGVfGwbd26tuxOzXIbwY+?= =?us-ascii?Q?DNCSk7Fkdbcx976HJqSDi8xSOkrycTs8bJSA5LrHjlcZjMT1RsSZjzuizveo?= =?us-ascii?Q?HVOHdt9dB69jpBRVev62mpRWeowK+b1pcwvv2l9kjBNTNsNdjtNz+ohVXy3v?= =?us-ascii?Q?n4NZey0KLrICRVYlz7/2DrZPSAelDQSCLfDFT33ciXMM6py4QOMPVmgBLifO?= =?us-ascii?Q?Y7TuLV0CbfqzgESkL6lqBuYJnOFx/9RoatXjGElQYWBl+yqEV1QXfB8EJDHj?= =?us-ascii?Q?OVwEzTYjHWsnRBP6/QuyJcZz1xoPRve4d0WLRnGMCUHv8KJvZX+5cX5ZfoBj?= =?us-ascii?Q?2vdkzU31naZ176nEpEUXMaPtwlQpj1lmYng/?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(14060799003)(1800799024)(35042699022)(376014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:49.6243 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 13cdcafa-046a-4691-8fb1-08dda1e27d86 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: AM2PEPF0001C70D.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PA6PR08MB10442 Content-Type: text/plain; charset="utf-8" This patch adds GPU model name and FW binary support for Mali-G710, Mali-G510, and Mali-G310. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_fw.c | 2 ++ drivers/gpu/drm/panthor/panthor_hw.c | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/drivers/gpu/drm/panthor/panthor_fw.c b/drivers/gpu/drm/panthor= /panthor_fw.c index 36f1034839c2..b7b454d16f12 100644 --- a/drivers/gpu/drm/panthor/panthor_fw.c +++ b/drivers/gpu/drm/panthor/panthor_fw.c @@ -1402,3 +1402,5 @@ int panthor_fw_init(struct panthor_device *ptdev) } =20 MODULE_FIRMWARE("arm/mali/arch10.8/mali_csffw.bin"); +MODULE_FIRMWARE("arm/mali/arch10.10/mali_csffw.bin"); +MODULE_FIRMWARE("arm/mali/arch10.12/mali_csffw.bin"); diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 421f84fde7d0..5e423122cd4e 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -38,8 +38,14 @@ static char *get_gpu_model_name(struct panthor_device *p= tdev) GPU_PROD_MAJOR(gpu_id)); =20 switch (product_id) { + case GPU_PROD_ID_MAKE(10, 2): + return "Mali-G710"; case GPU_PROD_ID_MAKE(10, 7): return "Mali-G610"; + case GPU_PROD_ID_MAKE(10, 3): + return "Mali-G510"; + case GPU_PROD_ID_MAKE(10, 4): + return "Mali-G310"; } =20 return "(Unknown Mali GPU)"; --=20 2.49.0 From nobody Thu Dec 18 14:30:37 2025 Received: from AM0PR02CU008.outbound.protection.outlook.com (mail-westeuropeazon11013056.outbound.protection.outlook.com [52.101.72.56]) (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 0C26F22ACEE for ; Mon, 2 Jun 2025 14:34:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.72.56 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874843; cv=fail; b=XH1/0pa1nMYGG/3AJ+b9R9+T9yXmeJCHz/Dy+zY8RnicESjLY3VZLQlzW1YiVF9NA51bOmnl19i7Ol2Zv4aWdHGNEm5muYQLSxyqPGSHZAOUI8A4u5FnpkK5tStExGcNzsj81sMKO5wKKMiPBrcw1z1uhlEwGgqeEJewQLi68zU= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874843; c=relaxed/simple; bh=86Ug6hRxjBqaIkgGJLNl1ZsrpfeEt1mBmbbBMG2M+FU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=dffDtWyQhmJcAnPjU6GaPfpfufmT9RbFx5g9z+Img+z+5rox3MGblb0DgOao+nM1Q4JMb6B60vbGxWFbB8vOtV4aUC3Ho18D7dZ5F1Coxd1OGHJpMRM6pJWnlhJibhMay2NGzYijsEB2/FabVYamTJQkY/to8B1yZTjdSELQzZw= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=BivCH8Ck; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=BivCH8Ck; arc=fail smtp.client-ip=52.101.72.56 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="BivCH8Ck"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="BivCH8Ck" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=QVR/sMPQNYqdoGFvWZJ/nRe9TvAmaCLltnPceg44S+L0YvzvU1qGesjZ2DEGXR1BF6oL3h0W9ttMOyfkgUAj2QWGhe8DNReKFlCHyy7WmBRuBWJFaaYu6HoZ6fAooXo0rK1C36PPPmnvLQfKCpOBX+keaJtKv02usyMMAoA9KuLKpPy5pJ3x9pO3L3Yx3mHcTEDYz4QKmgtpmr1d468Otvw3kD1l2Ri1aIlLUoHkcYq1clCB1j0/Dv9fJBQk6xAEd9v1hdw54LnEVokuAoJ1V87SQFp1JM86DH6bSH3QYElQ6ohau6Knvs9C1eyOjCySYf0WdWe0zFeMPZ4g9m+aBw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=NCHfWpf5zWZOPq8o5CgMyzciYXE78/x5WUs4vbuxuyk=; b=dQ1W5wh1XNwF2NP92hWsjAwCFH8xX8BL/tShEhM/IrhihoRYu6mw9oP0ZlLDeAyEfrPd3BjzRZHwCjsqQI88dQZdE+y8ucqx41duz7FlYJjXJpVcnBURMO0W7NygVDnoqgsroKLlGtZnhEXkm2lF2WtGgLO+qLzvoqOlCNoVcEWkzJNDGdw7jWOdOFI/gWfMekEJXkt+TinpaqMpB11/u38M6Y2WHQM36I0G8HEksoOAET5FqjdAUPiEJcwEJBg8j8Aws4Zt3mh5U3jfc9Oky5jtERlE+yUvsAHkrvy7agvih/m4cO7cYLmcAEC7xcwLz01i2NyzluYKQZ5Q7S2pjQ== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NCHfWpf5zWZOPq8o5CgMyzciYXE78/x5WUs4vbuxuyk=; b=BivCH8Ckh0AjKRM9qeBzW09d1B8hSvSC0V3QGFKThvXkOFV9WHD6zRHiRcLp42CwU8Dj82Rw0G1bJDQO5d3vHuQvm7pV7nKShJOAgKu2KfKwCXZLuUB0YcMEKGRLgPaFrAMIhJ8AC/aBs5BaA0mJ6eab2gOnWQt5J65SSR5ly00= Received: from DUZPR01CA0041.eurprd01.prod.exchangelabs.com (2603:10a6:10:468::19) by DB9PR08MB8740.eurprd08.prod.outlook.com (2603:10a6:10:3d0::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8792.34; Mon, 2 Jun 2025 14:33:50 +0000 Received: from DU2PEPF00028CFE.eurprd03.prod.outlook.com (2603:10a6:10:468:cafe::9a) by DUZPR01CA0041.outlook.office365.com (2603:10a6:10:468::19) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.32 via Frontend Transport; Mon, 2 Jun 2025 14:33:54 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by DU2PEPF00028CFE.mail.protection.outlook.com (10.167.242.182) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:49 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=edllTwYM0j/H8a74Ihl63i4wMFsof7qdj72z5HT6JhcHm5S41+y5ikuYxCAM+93pL4fudES9M7UaFTyqI+GDwcNrGN4Z++LfVhvIBXUrzFFcNBqqQ6y/hiOCYzb59hIVnVY39PZZcWIcjdX+bErSZ4knaqVSkb65+G/QRoV56GCo6DDz68AwT8FayP7vA9fhxxy3HuLLnMPmVsx6CGSB5SLnGS0wcP//7u6Ps1aC3b7WRgJCjUFI3MjYu8mWb9MlGigemvUmUY3p3xZUYLRRWthTLdipgLVpe90PmKdWV0YBl3rdszbJZs436eLMsHT3sL6/fpCHlv9/y/lukqTfiQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=NCHfWpf5zWZOPq8o5CgMyzciYXE78/x5WUs4vbuxuyk=; b=QeNexqiq7XKZtSv8e7EJjEMU0V44ikBmA/ZwPH/Hf+2ebshytEKK4qs6QxBodMPIOWjt4YiGa76JmZUzJ+3SVLQNbYxYFRgjR511gYUNhhrSaDl/DRKuVzmHRE2BG5seOHhGpy2zIirzZ+/KyZizCYqgUTL4nnshpb2ULbdlCn6HK5dVRtglQaciHhp3BQ6EpK10+XHcZaseORSXOrImgT1pfcKD1WkPfoJ18Aw2G+7WomomhA56g9igX8ohF9G2S0pOng2OJd8bMt3aVVV1zQcUtI07anq34OK80S7AIW6x4Ri1j5HQrwWhADDR3gxUfhwOIQ3HJwc2zQnHVeJq6Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NCHfWpf5zWZOPq8o5CgMyzciYXE78/x5WUs4vbuxuyk=; b=BivCH8Ckh0AjKRM9qeBzW09d1B8hSvSC0V3QGFKThvXkOFV9WHD6zRHiRcLp42CwU8Dj82Rw0G1bJDQO5d3vHuQvm7pV7nKShJOAgKu2KfKwCXZLuUB0YcMEKGRLgPaFrAMIhJ8AC/aBs5BaA0mJ6eab2gOnWQt5J65SSR5ly00= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by PAWPR08MB9640.eurprd08.prod.outlook.com (2603:10a6:102:2ec::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.30; Mon, 2 Jun 2025 14:33:16 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:33:16 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 5/7] drm/panthor: Add support for Mali-Gx15 family of GPUs Date: Mon, 2 Jun 2025 15:32:13 +0100 Message-ID: <20250602143216.2621881-6-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: DU2P251CA0003.EURP251.PROD.OUTLOOK.COM (2603:10a6:10:230::13) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|PAWPR08MB9640:EE_|DU2PEPF00028CFE:EE_|DB9PR08MB8740:EE_ X-MS-Office365-Filtering-Correlation-Id: f038c9ff-bbdc-47f3-a4f3-08dda1e27d99 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?9lDFkkp/T3NaYBqB1PNPXHH8RDkLneS9H7wIiC+Jnb46lTV5AiX31xIU/hqs?= =?us-ascii?Q?XvbmrEfyR++j/A9tJlpK+Z7BBeiZ/s/9LyiViAeFG3IA3uUlXqWfDUycbwXg?= =?us-ascii?Q?sSxQ/tV0Niyf3C7SARicPDS95DtbZwfPoYmh5xuh7Go2zVPXKLaVvUUbu5JJ?= =?us-ascii?Q?Ias5EqFWG28P9NRgjM3ycdXRSRL60lfyB+udQ8adEjoZRo019BFjyCtQQojB?= =?us-ascii?Q?AomlKRHrjl/Nk0NWQy0Uuju5M88K2zLNJidQJC2vyJbbRZuO/zAv8IKomNm/?= =?us-ascii?Q?7xPNj3r92TYCOs+M0d8tvlkNFsqw3WAwEoN2uEnftCYH3orwojSW2LZUR+ZS?= =?us-ascii?Q?kjU7NYJ8rS4glgSc9NL37rRjL+2Iy8vnP2RMmNY99jKOuNK4HzjAz+l1H3SI?= =?us-ascii?Q?tDR70DX3aka5hQQIGLOE6qhYWrl/qxl9FxUdeGeWSG1SlGfopCAlbn1wgwjG?= =?us-ascii?Q?eh5guROlEoXNZ5pDBVnJWb0Y48e1MOWqVSbelTfCaLOEdBOoX+ilzNHVDw1Z?= =?us-ascii?Q?2nLwYKjGw0DJE+oawd2aBHArK16zSgcHbIpad+8A4ji3Wdbx4TGVB0DLHUzp?= =?us-ascii?Q?FP6SADJ1ZWjyuZTl3jeMbnFhZld5bmXsobckOj2SZ/GdG3zmt/hV66zxL99q?= =?us-ascii?Q?yuf+mqJGlTsik28f5cLM7uuEr1fnGmKsdW+dczNaeo/TOxcZDPozMnGQoQM9?= =?us-ascii?Q?hZc1BMkt21Jmd6yELTFwxDDbrJbn0T8oAdg1GBDq3ibOZ81hu42OsTFb+mSX?= =?us-ascii?Q?EmAb5pEYokiuPLpmy3EX0O84fU9uHs/6GyBEg2C1NwkduxKuz2YkPg9/FeIh?= =?us-ascii?Q?iECH4uRvEGVP3wu3ZI4SM/PZoep+TjQu/NGjTKyK/rgquzZBWaYdnXayf2Te?= =?us-ascii?Q?pGiKxcHnaqxdZQC3Crq9xgNv1qS9NyugOs7Mv5xDq4zqWLxHo81hDaPL5Plf?= =?us-ascii?Q?cAS4rnUHjWy6XAp4z3twKbD18yf76ujdNZ8/uxrdb6dLdTEpr98mHLRAwR9k?= =?us-ascii?Q?kP5LyH2vehPRGzxxw07ixvJbhE+7TRvVYArFmdy216LTPB6Q6ICF6blmVqIM?= =?us-ascii?Q?uu3vBhQRTRySk5lsj8+RfK/G4wxakb/5ayVXbQr2BZQ76+mjxcveIYrrNQVy?= =?us-ascii?Q?4OR5+XCV9pE9Q3l+mLEgJN964kkmTtaVeBmd/zXNPGYKuZIK6pMoVmg+NTB3?= =?us-ascii?Q?2PSD2Wnl7jpc69s+7UBwZjZ4OkJ9HNpIp1VEjs7zfG1Hos2Ll7lfMWOp+SQL?= =?us-ascii?Q?7QeA+gaiKLKh9yDc5bo4vi+XuXBMeEuLiTr1LZGrGF84MZoNO4JaS3gWqVe1?= =?us-ascii?Q?R1ZXFSjdBRvdeiol7xdBTJTQllzhe5JZwg6x1LpyGG47NPwPpG5tC8Iaybk9?= =?us-ascii?Q?XatWEOQXeDraTKGUo2/+/KwNcDq0QFpWyOSSvgZxnPx9l7lDrg=3D=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9640 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU2PEPF00028CFE.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 14fb45ff-fc57-4528-cc83-08dda1e26957 X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|1800799024|82310400026|376014|14060799003|35042699022; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?rv9g6EJ/iZTM8NxAbPKAEdxi18Se7mAb9nCOq4nFVzaXM5tUjQeSW/vuaeuT?= =?us-ascii?Q?20Gj40jhhbevVxHhhveC5RRrLUbInpIUoZqMKcE0wcgKy1YJ8oe4kPQHUxYF?= =?us-ascii?Q?V2D9b4qyHJao4s442ZuT6jM3z4dZUWOTO9hOA1tUyNMCd7xlk/Cx62/AivCK?= =?us-ascii?Q?HdDxqSkr41dL9NvuzCiaFf1a3BUPvppTTDTwGVW1mTS+6KQhljtjbvk3nfYT?= =?us-ascii?Q?8MGsJ36Pifku1Bn3wRyzxbs9Or/Sg7PXl4gbgPAx8MwZFy+djrf/r2irx089?= =?us-ascii?Q?gKoQcwqugwnI+N/Tk84jbkkJbUsSqLiF4D/CmyzSe5+lkPFDEaQ7nYx2To5t?= =?us-ascii?Q?EcNbX46LZLi9F0B3IA4MmYidmFlFMXgNk2M9Fk8LpJ3OzunO4S5vt/dISLJu?= =?us-ascii?Q?SsL+T91NvA/bOe8reMNkYZsSHnfWuDBmhQGcDXYKoq4dAbZnBXuU3T6Ljd29?= =?us-ascii?Q?G/C4atvViGI8qA8EGJyKcawNvnu1ospH4bcOeC11c+VcShiJTHjhjOmbbqg3?= =?us-ascii?Q?WhpGKOfy4mtVgAzwNWmlISYmbEh9uzHFycxVKjHGRAPYU/wjwa0jfu13/7lr?= =?us-ascii?Q?8oqYwKbSrO/Ojw1O357s44RMiZGOZuavkje+60cTEE6fPIJMy+vr3EIsk99l?= =?us-ascii?Q?iLL2tqS2Fv3S/uqoY0QWu3yabroPh1BTO/VBBTBSbaY0LrJPdfadnAOZHwwo?= =?us-ascii?Q?5oP9evuwGdAQM42mA8YbzBNIz4KVjQOnMvjJl7hVO/tW3zO/f1uBuIZ5XQ6d?= =?us-ascii?Q?5z18MrOFwlQrua9oxciC5K+tnN+PVLAekt1icCXgDWVN0USk1pSQoh4aqJCa?= =?us-ascii?Q?6YeGE47h8D4GUDUCmcmdU7tuYglhFLphi0BU/3aeOTD/JtlkbzKENq5EaIY0?= =?us-ascii?Q?koW8RPsJu/HvyHiD18Z23fuqO4HlIsFj4cyjv090cqP9/9gnHu5Vbr3rpJAF?= =?us-ascii?Q?/ciWITg20M7unK6KN5frfwn/kPiMtyi72U0sQ/1qNG4Sbj3fho8KU9Gjgj7f?= =?us-ascii?Q?TtEvOzETTRJGhQf4VpUF5H7apnxJn4OU9LQBohg5WFNNghXvMy+vw44mwREb?= =?us-ascii?Q?5xQ8RIXjF3AzhNFrsYmx4Iuz17mp1gkcXgS8vPfYtPlSsNCJ40Rl/yXih6nk?= =?us-ascii?Q?5Tzu4GccseIFKXfKk7HYxIX9aC+4hu0Q0q26R3FJ2tBdRJOx+/Npqn1jLmEC?= =?us-ascii?Q?FaRY9tE0QSJ2rwUwu2Z5Cw4LWFwLn0rMwTZLDlsD2+MHPG98ywfTI36AbGTL?= =?us-ascii?Q?aKNIJcQhRCL2ML6nUrOacay2bRMrwJRUo9OvDf6oED8xbewyNPD5iNKsyfok?= =?us-ascii?Q?Xrdqqr94dBF316aE6k4BkW9Zmq163NLY6G0CwCBwjJ385LcloIGrvczYvssG?= =?us-ascii?Q?Aw4bTXmJdRIg8qvP9pra3fRxPVoatcIrGkmSS9vpTeTU77+ZpplXUQEstU8B?= =?us-ascii?Q?NmfLOzQM0STgLwEr4oZdONF2uU2/v6+7n0WBMjX3LCslAjcqyGUafiFrPeyP?= =?us-ascii?Q?3FwYjT5hwIcZbW4e+Op4TdkmIoeS7tYvAYae?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(36860700013)(1800799024)(82310400026)(376014)(14060799003)(35042699022);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:49.7297 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f038c9ff-bbdc-47f3-a4f3-08dda1e27d99 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: DU2PEPF00028CFE.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB8740 Content-Type: text/plain; charset="utf-8" Mali-Gx15 introduces a new GPU_FEATURES register that provides information about GPU-wide supported features. The register value will be passed on to userspace via gpu_info. It also adds the following registers that are specific to the kernel driver only: - ASN_HASH_0~2 - DOORBELL_FEATURES - PRFCNT_FEATURES - SYSC_ALLOC0~7 - SYSC_PBHA_OVERRIDE0~3 Additionally, Mali-Gx15 presents an 'Immortalis' naming variant depending on the shader core count and presence of Ray Intersection feature support. This patch adds: - support for correctly identifying the model names for Mali-Gx15 GPUs. - arch 11.8 FW binary support Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_fw.c | 1 + drivers/gpu/drm/panthor/panthor_hw.c | 18 ++++++++++++++++++ drivers/gpu/drm/panthor/panthor_regs.h | 11 +++++++++++ include/uapi/drm/panthor_drm.h | 3 +++ 4 files changed, 33 insertions(+) diff --git a/drivers/gpu/drm/panthor/panthor_fw.c b/drivers/gpu/drm/panthor= /panthor_fw.c index b7b454d16f12..fa6e0b48a0b2 100644 --- a/drivers/gpu/drm/panthor/panthor_fw.c +++ b/drivers/gpu/drm/panthor/panthor_fw.c @@ -1404,3 +1404,4 @@ int panthor_fw_init(struct panthor_device *ptdev) MODULE_FIRMWARE("arm/mali/arch10.8/mali_csffw.bin"); MODULE_FIRMWARE("arm/mali/arch10.10/mali_csffw.bin"); MODULE_FIRMWARE("arm/mali/arch10.12/mali_csffw.bin"); +MODULE_FIRMWARE("arm/mali/arch11.8/mali_csffw.bin"); diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 5e423122cd4e..f5127a4b02dc 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -29,6 +29,9 @@ static void panthor_gpu_info_init(struct panthor_device *= ptdev) ptdev->gpu_info.shader_present =3D gpu_read64(ptdev, GPU_SHADER_PRESENT); ptdev->gpu_info.tiler_present =3D gpu_read64(ptdev, GPU_TILER_PRESENT); ptdev->gpu_info.l2_present =3D gpu_read64(ptdev, GPU_L2_PRESENT); + + /* Introduced in arch 11.x */ + ptdev->gpu_info.gpu_features =3D gpu_read64(ptdev, GPU_FEATURES); } =20 static char *get_gpu_model_name(struct panthor_device *ptdev) @@ -36,6 +39,9 @@ static char *get_gpu_model_name(struct panthor_device *pt= dev) const u32 gpu_id =3D ptdev->gpu_info.gpu_id; const u32 product_id =3D GPU_PROD_ID_MAKE(GPU_ARCH_MAJOR(gpu_id), GPU_PROD_MAJOR(gpu_id)); + const bool ray_intersection =3D !!(ptdev->gpu_info.gpu_features & + GPU_FEATURES_RAY_INTERSECTION); + const u8 shader_core_count =3D hweight64(ptdev->gpu_info.shader_present); =20 switch (product_id) { case GPU_PROD_ID_MAKE(10, 2): @@ -46,6 +52,15 @@ static char *get_gpu_model_name(struct panthor_device *p= tdev) return "Mali-G510"; case GPU_PROD_ID_MAKE(10, 4): return "Mali-G310"; + case GPU_PROD_ID_MAKE(11, 2): + if (shader_core_count > 10 && ray_intersection) + return "Mali-G715-Immortalis"; + else if (shader_core_count >=3D 7) + return "Mali-G715"; + + fallthrough; + case GPU_PROD_ID_MAKE(11, 3): + return "Mali-G615"; } =20 return "(Unknown Mali GPU)"; @@ -85,6 +100,9 @@ static struct panthor_hw panthor_hw_devices[] =3D { { .arch_major =3D 10, }, + { + .arch_major =3D 11, + }, }; =20 static int init_gpu_id(struct panthor_device *ptdev) diff --git a/drivers/gpu/drm/panthor/panthor_regs.h b/drivers/gpu/drm/panth= or/panthor_regs.h index e7a81686afdb..4eaa2b612756 100644 --- a/drivers/gpu/drm/panthor/panthor_regs.h +++ b/drivers/gpu/drm/panthor/panthor_regs.h @@ -72,6 +72,10 @@ #define GPU_PWR_OVERRIDE0 0x54 #define GPU_PWR_OVERRIDE1 0x58 =20 +#define GPU_FEATURES 0x60 +#define GPU_FEATURES_RAY_INTERSECTION BIT(2) +#define GPU_PRFCNT_FEATURES 0x68 + #define GPU_TIMESTAMP_OFFSET 0x88 #define GPU_CYCLE_COUNT 0x90 #define GPU_TIMESTAMP 0x98 @@ -83,6 +87,8 @@ =20 #define GPU_TEXTURE_FEATURES(n) (0xB0 + ((n) * 4)) =20 +#define GPU_DOORBELL_FEATURES 0xC0 + #define GPU_SHADER_PRESENT 0x100 #define GPU_TILER_PRESENT 0x110 #define GPU_L2_PRESENT 0x120 @@ -109,6 +115,8 @@ =20 #define GPU_REVID 0x280 =20 +#define GPU_ASN_HASH(n) (0x2C0 + ((n) * 4)) + #define GPU_COHERENCY_FEATURES 0x300 #define GPU_COHERENCY_PROT_BIT(name) BIT(GPU_COHERENCY_ ## name) =20 @@ -117,6 +125,9 @@ #define GPU_COHERENCY_ACE 1 #define GPU_COHERENCY_NONE 31 =20 +#define GPU_SYSC_PBHA_OVERRIDE(n) (0x320 + ((n) * 4)) +#define GPU_SYSC_ALLOC(n) (0x340 + ((n) * 4)) + #define MCU_CONTROL 0x700 #define MCU_CONTROL_ENABLE 1 #define MCU_CONTROL_AUTO 2 diff --git a/include/uapi/drm/panthor_drm.h b/include/uapi/drm/panthor_drm.h index ad9a70afea6c..888179effdee 100644 --- a/include/uapi/drm/panthor_drm.h +++ b/include/uapi/drm/panthor_drm.h @@ -310,6 +310,9 @@ struct drm_panthor_gpu_info { =20 /** @pad: MBZ. */ __u32 pad; + + /** @gpu_features: Bitmask describing supported GPU-wide features */ + __u64 gpu_features; }; =20 /** --=20 2.49.0 From nobody Thu Dec 18 14:30:37 2025 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11013009.outbound.protection.outlook.com [40.107.159.9]) (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 C8072222582 for ; Mon, 2 Jun 2025 14:33:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.9 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874841; cv=fail; b=b9a3u7egghudEE5AjWdAhuJzeTghz66mg7Je/gY0IsimtEZlXocfIJr6bLsw9zsAkxPqH/Rj3Ga+iaLVbeQJo7ib1Zb6AuDmfZ/tco+LMhh72UZP1iwkHdYHsBYcKoGQuXQzcxDK/ZGGSFvZOfM/abFtd5QVYGcwXucrItDfssw= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874841; c=relaxed/simple; bh=OdgPsmJShLMqy6CEmWOAgAuD5BM2smBCJIb5RP83EZA=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=Sv3NAo392ymRuSQYtW9sRpefnYzUhAQolzErPXv8zxAdGm2rX3XT3ScTekX25401uRl9rp2S6G/2eaAdBhq+Ep/lOrFG475wBqB67vcJF6/P0U5vx2UK9jhZe2n7crWA+yE/nKjhmnNfQVcdjW2Iv101y9MWbX1j/JILcxEqWpw= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=MoRaI0yl; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=MoRaI0yl; arc=fail smtp.client-ip=40.107.159.9 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="MoRaI0yl"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="MoRaI0yl" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=JK1Jb8uQi3EFwws2Uw5Dkx7oKT5YKEBB4argIqITtrDBj17hq2zaUm4xqI/PgWJ+xBW96dlMJBtW9sQlCFAIJwINXmHFYAuPSzgONeH6/XONMMqZXOeC11jAzOpSU+n7cjgLrKMv0llZEtzSgttCfMns8UYDEfExBf4rd1DlQyYMT2BHtTOtGPjd2HN4nNDnRyhIV5RYb6MPNVzCN0MnOZMtJawgcYeG9Lf1E7Y2CoyYSCbgHBt1vlG98qfUsjCdeoQc9W2NUksJeBtj5Hu2X1NQsPam6Cj79rOr/7UZSZoyjqDYskbrKCRLVjZ7QJoFa0u0UZlgLluy0yeVoK7oIQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JVVLrqVeaW6kxWoPxTsHJPkp4beyND9FA1VU9K1vj6A=; b=MTvJGlZWYgw8hFkwgC9umimk3BnBHWpQPZeI7BEOLXMH33eMu6X5/HifjVi7sbKUv7vXFInOhr5x2Za+OPjQga/8+le/VB0ZuuPULYpk1ebE1ib0awdtlv2bXNtt75PbG5asFxIcF89BYYDxje+qiTcCkPut5LQ4G5OgCl0+Fri4iEypczb6CVBlSGaQEO4eqMw969ATiSxIuA9VYemvdoEu5UDxYAlpCf2GFKiYZJwRNVOLiT3uzwz1rVEQjwDTz5ZjGOA6SdekJo8uCzL3ttGN3PbW4JcOgSlTH4UKd3B85Pz3Mu5xoO3ZW8JSQe2kVMlRqI+UQFEeYngpzTqsdA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JVVLrqVeaW6kxWoPxTsHJPkp4beyND9FA1VU9K1vj6A=; b=MoRaI0ylmmY2HYc32GyLaXlrKTUrBpufWfy6O6RW6IL+9rrY3ZjqU1pLK4Jd5WHVQe3yo0sinRmNj8yRqwXYiAPwnA6QfGztV3rpRR1yYYRaHF/t6/gMqk6Pmwd8d0OYf9/IBXeZvtzz3Ji6rjkhtV6jCVuHL4KIjGH+NbNnEqw= Received: from DUZPR01CA0100.eurprd01.prod.exchangelabs.com (2603:10a6:10:4bb::8) by AM8PR08MB6450.eurprd08.prod.outlook.com (2603:10a6:20b:317::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.37; Mon, 2 Jun 2025 14:33:54 +0000 Received: from DU2PEPF00028D0C.eurprd03.prod.outlook.com (2603:10a6:10:4bb:cafe::d8) by DUZPR01CA0100.outlook.office365.com (2603:10a6:10:4bb::8) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:54 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by DU2PEPF00028D0C.mail.protection.outlook.com (10.167.242.20) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=o4KB/rdzWJQwqCFsklKqbMzszdoOXp+LIEIHb4iZ7o5MAM3YF57qCpo14jEm1Y9WLtOyTZuP+PFiQGcnUwf/TtYVSvQ40+gbA9DTbNRCA9NTe3rGTDVJREgMaBhS5r4slTlQyvPeYMeQc22/4ezph0+Fe+1p+qFW1kwDu5zBi9sXr9X76Giw7mrIlFWV3vCyFceMvdhDtuu61naTnwbRcIlK25HjThGees2A0gzvpmSNemknvcTVj120VRHd1PwWfpJltRj12hsIS9LhRIib+wam1or6bwspj4J+DU1JqAs8Ab0vVc1RAk+deH2Ry3ucigHKbUI9YGj/DgW+J8O1Uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JVVLrqVeaW6kxWoPxTsHJPkp4beyND9FA1VU9K1vj6A=; b=ME1mYIB7P73O6G7Fpi0pIeqSVkykolOAy8oj0PjsOERezV4n9D8cLchSas28OI6JhCBvizBFRCy1HGUBrcvUZuDeG7yvHl4vxYv7NMj3sEy4HtehZIa4WLj6T5XsYV8Ir1c82crHrfYCrsUfhfDigND8gfPgQjG95WykBCmUqFDTmzWC131wccK8eOGGqM0WBf4+39vt1JvfCLK/G5ySQqFJ8aRPrZD5XYqvh1XaBzBfrIXeQVOr3gxPtAi7vA6AZXFu6Fc9hScm9wi6jlTllHTJcC9Z6fdi3RU2uUN7+TcSVSKQMT0/yJjeQprBVmYsHdPrFnjfi7ItVe0l8btc5g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JVVLrqVeaW6kxWoPxTsHJPkp4beyND9FA1VU9K1vj6A=; b=MoRaI0ylmmY2HYc32GyLaXlrKTUrBpufWfy6O6RW6IL+9rrY3ZjqU1pLK4Jd5WHVQe3yo0sinRmNj8yRqwXYiAPwnA6QfGztV3rpRR1yYYRaHF/t6/gMqk6Pmwd8d0OYf9/IBXeZvtzz3Ji6rjkhtV6jCVuHL4KIjGH+NbNnEqw= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by PAWPR08MB9640.eurprd08.prod.outlook.com (2603:10a6:102:2ec::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.30; Mon, 2 Jun 2025 14:33:20 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:33:19 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 6/7] drm/panthor: Support GPU_CONTROL cache flush based on feature bit Date: Mon, 2 Jun 2025 15:32:14 +0100 Message-ID: <20250602143216.2621881-7-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO3P265CA0031.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:387::20) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|PAWPR08MB9640:EE_|DU2PEPF00028D0C:EE_|AM8PR08MB6450:EE_ X-MS-Office365-Filtering-Correlation-Id: 897fe687-6346-4c50-131e-08dda1e27fb9 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?clmMWHYMDPTEaIYFw63IAIP+Ya8vLM3NOKNdcNvjg1NIUvRNyVuMytMTaMpD?= =?us-ascii?Q?QyQQ2CH9ZJNkTdXNCy/WjFWIBIx4uUfQK42wQLPl3KQOfV9QLoewzTEJ7PoS?= =?us-ascii?Q?H+1+MLDUViLUefRqaWoHIkRyFX4LG7O18yty3WXjq1HuXaX56dBt/FdwIsaW?= =?us-ascii?Q?MtAvs95HOX9JejQ6Y1Xpp3xTyka2mgnob3/BtCrMkdxtbBA3KC1gsNQCGuCB?= =?us-ascii?Q?0N4XrVgZ9SjXGdbKMgSt4TbNdTNeNNgHqpOx/xT7wnT9Por4fzV65SVhmDOT?= =?us-ascii?Q?MLN8Q2hzZRz/02t4cLitCb0CMPoGZIBGegQCr/44gZOyu/R0k286SubFvSJo?= =?us-ascii?Q?FOwhqUR3uck1qRaZknXTQoc+FU7/QkNE2OPHwqwuBk/vFEhy51ovA9DMvNNe?= =?us-ascii?Q?fidWtebrbr7kwdRmKj0jl/pTEUD01790CGfGTyqGI+5TQuXb1WVko1p7EHfT?= =?us-ascii?Q?aebI5ifWtVpWGhFcN8sGiIZGl6KnLQRaW3MXjcMKqgZ2TH9U8uYL9PrP5ZwH?= =?us-ascii?Q?QgcI1D1AbOPqHUgeN5AipG1psAbhH4dZmg+nzhTd4X5E7Ka9YZ5qm/6yGlPd?= =?us-ascii?Q?89D3esFenBZ3gVP1ewhLer348/D4SVwIHvIydkduXxlann3Scnqf9ei9UWad?= =?us-ascii?Q?ryCqZjRI1OZgYnckWuthSOXt3dp4hzkFar0+wAoKf3T02wwZl6HgIFChocCU?= =?us-ascii?Q?xHR19TvS/sRVpsX8zChGatMwgBD/YjzyS8zbi6TxU2a31ibKkg+BEUqXU9eS?= =?us-ascii?Q?MnPOapQAgmOJU9i/E3hUX59GBaaVTBIIudOiclonXFSeqOLZMGz/k3dgRhRN?= =?us-ascii?Q?yZYoqGvjnhPChC7pQVD6LIzgTBt7Gd+YG572xZ/XqHnxsd6DPAblcvyvg43w?= =?us-ascii?Q?8UI8tlPXfAbsU6Cwv1gIzrw/vAltd7d9i6HYzKtZ520EcNSZ4paWKXlElAEE?= =?us-ascii?Q?Wa16iyyNS7uB/YxT4d71efKury2LWwTTdlmIm9oRO8e30pJt6omXKTHoW02m?= =?us-ascii?Q?Fw3U3APWJlaYsGka3yuHr+1YqG0FgRvukuvBJHpTaGRYfjSEXimDsbXe2J71?= =?us-ascii?Q?hFLaRacUNrW0xCRLhHC3a7tC2DXKnKJjRNEV+YdJbXepFEgcrdJuKRg4KDWV?= =?us-ascii?Q?N1mbu8lyEYashM7ju+74nFQCB/T8GFQ4uHDcnCXtB8Tn6a/6AcakqG+eU+Jd?= =?us-ascii?Q?Kvltj0PtM0kytq40ecTCTdmR8uC/Bfm85UGgt2SMbir+7fR/sGCCOfgAfM//?= =?us-ascii?Q?qckK1J1rnsHtKLJv/Zn44uTFHR4fl52yIr+uYMxslqpRvVOYJLedpBwjjH8A?= =?us-ascii?Q?FCajpuh0gTK88fNMrbqZJ555IwlzbHoharOsvSR28tRAs1Xwr/iTsW7QmLIg?= =?us-ascii?Q?I3u+J80sJZKAJTEcJjbhiTl5htpJg6VG/qwr6vCf16pAw3XwTNWwcGPLCB68?= =?us-ascii?Q?p4MJDPOQra0=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9640 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU2PEPF00028D0C.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: fd8c531d-330c-4964-4a89-08dda1e26ba4 X-Microsoft-Antispam: BCL:0;ARA:13230040|35042699022|14060799003|36860700013|376014|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?4pXUnabyA3w/ge4pW5oUE0VTdthW+Qp7NX/H9RE9tVQRPs6E0oabQJmHQuhx?= =?us-ascii?Q?B7terS0R9OtV2VgX+GdmjyJ9d22Mp0QAP4diEsW2w9f0gcXsFunIsljOfVOq?= =?us-ascii?Q?YpltPe2MGICf9FxKfWC3AHG/hMjvtJzRoV6aInVntXKXQALXTizFmKi9I/DL?= =?us-ascii?Q?raegUOgRYUf2wGI6DzAs0d2f1rFpEYM7c7BocJj1Z70tp5jrK18IheYKItAY?= =?us-ascii?Q?f5jTnmLsZVbT8hZl5eeUJUHXDHXqno4BV1hJ44m7mkx5Y9XIF1hr/agoytUy?= =?us-ascii?Q?0sgOH6J/l7mgla+UAbp3xxNR2GJAoOJdT1pU7o6HklvDaHr/S02LyggkGRqC?= =?us-ascii?Q?3BGd0X6/VaBc4hAAy3Sb1rGY9AueHBCI/Q0z9F04lDA6mEejKrY/ZY8eYry4?= =?us-ascii?Q?xZ2WFbste6eJ6qYlM7qs2iLY+zCn3BSMwl4ajrZPNo7B07ST7B2m/BGYMWz8?= =?us-ascii?Q?MB+zp6ibXzMrVd8QOyepHE+InCzeeBsC8JCbglg+RRrK++2lespa8OiD+uts?= =?us-ascii?Q?r39rW5gj2AOwbZBCa32mHP5CKEj5amtScxXZRUZ7FZ3jog10TBGoIBCB6pzd?= =?us-ascii?Q?Cwc1LZApoApTq37komypYQG4mJpDMYmEMrSDJvgWSe9Q5hLPq8EDPUJz3cVw?= =?us-ascii?Q?JKmgUiCQlyKUdqEyJ0wTbVbcajZMgMPUz83uC8rT57ObUfSSOV47kbRbBWq/?= =?us-ascii?Q?wXzsusK2A0chdW32XB+rmQ1gQ9B3LKiZgRzxyWoDQ0bwNO4Pyc3arh8e3VSx?= =?us-ascii?Q?sbAnLOYyYaA4QkZwfLA71ulw4727vyIU5m/j7eX4EH2fg/tKQwf56zaWxyaJ?= =?us-ascii?Q?tj8VLwFfKXbqNfJzna0lhLP9EnC2OUtxYzxqFW+EOHR54oJ0r7br6bVEHTe8?= =?us-ascii?Q?MJFV2bzhdTgpRZsvSmXtPXDrkWQANNCaOs0qWMHKuxJNB8SY3pHtt5xhHLT5?= =?us-ascii?Q?H5tEAD08ypK0V2G7NtcBV4G69utKRR4svziMfu9r8p0nPa5TQtVFpRco7ssZ?= =?us-ascii?Q?u1rCl9Jimy/f+jWJE91/mCTrcCKJPVvWrQNRyaNr3Kawd91UaFIrF+s4y/Tx?= =?us-ascii?Q?VI+dEhBvOf3kuQ5RD5+iEBSsoxEFB/hv8JXR+S02huAtGYfjcWAwdir4q4Wr?= =?us-ascii?Q?k1H3xrCZKnXUwdAIrGVKHMrXJSE1rC80yqNgDKNTv2duE8L6Y3NP9JIrn2VZ?= =?us-ascii?Q?GL61vg6ER0lSdaCBpjS9oD8nIGSDLXQVsMOwf16I0b5kJQyZzzbHDzmoVIK+?= =?us-ascii?Q?Z65aqeYmbwuNVwup+Obb984UXkRElUytpl0dytZBxqs9fEHi6jAuzzD7MY9R?= =?us-ascii?Q?2cZEuGGCP6pkvhecqYZJSDG8+FWR81KTzw6Sl0IVICkIr2ef+cId9J+8icN0?= =?us-ascii?Q?89AqfPQS8VrNn2gMQ1ocv8RTwFc5O5vWsU2ye3CVjEMdkSB0ZqVAD4irlx1m?= =?us-ascii?Q?vifqnqwICKUhFwNjRKmxr7DC05PlNmL174a5dk/6a5nm9hV4IqaAqbQlxZMD?= =?us-ascii?Q?gwvj4gfnGzR+LJsITLkiauxsAFjgHslNhRnQ?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(35042699022)(14060799003)(36860700013)(376014)(82310400026)(1800799024);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:53.2804 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 897fe687-6346-4c50-131e-08dda1e27fb9 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: DU2PEPF00028D0C.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR08MB6450 Content-Type: text/plain; charset="utf-8" As the FLUSH_MEM and FLUSH_PT commands are deprecated in GPUs from Mali-Gx20 onwards, this patch adds support for performing cache maintenance via the FLUSH_CACHES command in GPU_CONTROL, in place of FLUSH_MEM and FLUSH_PT based on PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH feature bit. This patch also enables cache maintenance via GPU_CONTROL for Mali-Gx10 and Mali-Gx15 GPUs for consistency. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_hw.c | 6 +++++ drivers/gpu/drm/panthor/panthor_hw.h | 6 +++++ drivers/gpu/drm/panthor/panthor_mmu.c | 35 +++++++++++++++++++++++++++ 3 files changed, 47 insertions(+) diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index f5127a4b02dc..5ec9d7f28368 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -99,9 +99,15 @@ static void panthor_hw_info_init(struct panthor_device *= ptdev) static struct panthor_hw panthor_hw_devices[] =3D { { .arch_major =3D 10, + .features =3D { + BIT(PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) + }, }, { .arch_major =3D 11, + .features =3D { + BIT(PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) + }, }, }; =20 diff --git a/drivers/gpu/drm/panthor/panthor_hw.h b/drivers/gpu/drm/panthor= /panthor_hw.h index 1a3cbc5589fd..2bb372fe9d4d 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.h +++ b/drivers/gpu/drm/panthor/panthor_hw.h @@ -16,6 +16,12 @@ struct panthor_device; * New feature flags will be added with support for newer GPU architecture= s. */ enum panthor_hw_feature { + /** + * @PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH: Perform cache maintenance + * via GPU_CONTROL. + */ + PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH, + /** @PANTHOR_HW_FEATURES_END: Must be last. */ PANTHOR_HW_FEATURES_END }; diff --git a/drivers/gpu/drm/panthor/panthor_mmu.c b/drivers/gpu/drm/pantho= r/panthor_mmu.c index b39ea6acc6a9..f9ccc8627032 100644 --- a/drivers/gpu/drm/panthor/panthor_mmu.c +++ b/drivers/gpu/drm/panthor/panthor_mmu.c @@ -29,7 +29,9 @@ =20 #include "panthor_device.h" #include "panthor_gem.h" +#include "panthor_gpu.h" #include "panthor_heap.h" +#include "panthor_hw.h" #include "panthor_mmu.h" #include "panthor_regs.h" #include "panthor_sched.h" @@ -568,6 +570,35 @@ static void lock_region(struct panthor_device *ptdev, = u32 as_nr, write_cmd(ptdev, as_nr, AS_COMMAND_LOCK); } =20 +static int mmu_hw_do_flush_on_gpu_ctrl(struct panthor_device *ptdev, int a= s_nr, + u32 op) +{ + const u32 l2_flush_op =3D CACHE_CLEAN | CACHE_INV; + u32 lsc_flush_op =3D 0; + int ret; + + if (op =3D=3D AS_COMMAND_FLUSH_MEM) + lsc_flush_op =3D CACHE_CLEAN | CACHE_INV; + + ret =3D wait_ready(ptdev, as_nr); + if (ret) + return ret; + + ret =3D panthor_gpu_flush_caches(ptdev, l2_flush_op, lsc_flush_op, 0); + if (ret) + return ret; + + /* + * Explicitly unlock the region as the AS is not unlocked automatically + * at the end of the GPU_CONTROL cache flush command, unlike + * AS_COMMAND_FLUSH_MEM or AS_COMMAND_FLUSH_PT. + */ + write_cmd(ptdev, as_nr, AS_COMMAND_UNLOCK); + + /* Wait for the unlock command to complete */ + return wait_ready(ptdev, as_nr); +} + static int mmu_hw_do_operation_locked(struct panthor_device *ptdev, int as= _nr, u64 iova, u64 size, u32 op) { @@ -585,6 +616,10 @@ static int mmu_hw_do_operation_locked(struct panthor_d= evice *ptdev, int as_nr, if (op !=3D AS_COMMAND_UNLOCK) lock_region(ptdev, as_nr, iova, size); =20 + if (panthor_hw_supports(ptdev,PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH)) + if (op =3D=3D AS_COMMAND_FLUSH_MEM || op =3D=3D AS_COMMAND_FLUSH_PT) + return mmu_hw_do_flush_on_gpu_ctrl(ptdev, as_nr, op); + /* Run the MMU operation */ write_cmd(ptdev, as_nr, op); =20 --=20 2.49.0 From nobody Thu Dec 18 14:30:37 2025 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013049.outbound.protection.outlook.com [40.107.162.49]) (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 B363F22ACF3 for ; Mon, 2 Jun 2025 14:34:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.49 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874843; cv=fail; b=mUK5RciUxLay/3BKSzoNy/xVXmen05/V39Yh+LSwo0Q/2Uy+n68ChWmjEarHwzZrLI0wMari9eD1CW83SsxIugm2FHlJEhIu+tTRaUiUXJKEiRINVltt/HCbYuJ7o/lD9zbMlUs83Jyb5tCAboNxhg8W1QnJ6jq1pSOakIibwow= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1748874843; c=relaxed/simple; bh=bnNcu8JyHPK/1sJuB2a07zijEJrXHqoiT94JykKJhXQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=Z+8m8eYX+068RrSTEiZDiJnkdXClMq9SvCGmVru7PFdcmq17BUKF4CCApvuXbQMsotCy0FX6Tj3/VTCOuHoWLNTI7i5Hl4cDbut/ADXRH+hpvNiMezB4qBELP3UQdc1AF/m3nzDWeUxrAXtpW0B74u2L6tWDsJInpZ4/VTiQ3Bs= ARC-Authentication-Results: i=3; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=YMGMKeOW; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=YMGMKeOW; arc=fail smtp.client-ip=40.107.162.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="YMGMKeOW"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="YMGMKeOW" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=iSYNxvDR6JufRrGMRyInR/KKlJBBwqQS5ClD4n5h7pKQFA/E73B6X9SZA+5lHdcmkpLmgunSAaGAAv1K8rE54w05gTw9VbWunhZKEiU8y2dPxqDwVZAhe9+Niriz40go17Q+hgv6FHcjlFLEwYQwJVHieAWUjGQ1V5JjKgDb/oo4u/eiN5V1zgTt7Td/cf9RtWOW9y0efj30KQ54279QDZpfjw/XLGhkA7soPDxI+apoLQwBLL9YBNfhum/B6KJoj2zvD3o+zl6WD9InG+VysT9vYgkRzn8mlUamy6sDtxYxS9oWTxoipIRD4Q4aJuLB9HqK8xc97E5sGuR6mf+E9A== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=79EUByVuJzVYOwLMmM+wLUXT8WRloN2obWZl7Q4M5AA=; b=nkKcXGZHpQBDtqycVFQTvaUBEjSgFcXsZUQBZbyNNvuI8F+Qvv50Qx47nfk6ifH83bcgJPVr6s0+rXN9A+Q9ES+Wg+gkiijcz0DHLzZ9HEjk9NShbafsQYoktLcaYSVhg1OCXp3CUAesdFnpAdciUMOEgydmyA3PamXw4jnWtAM5riDaCaTkEYTGl5jRcXGE7m1W9LZtkcDdjvytSEkgnghY71u3Y0r1IAqMxUziS532J44jl4ItV43euVDJ8E70N+idZRNX5AaVlnzNUiERK7U+/6RR1OsjDVWe/WGR1GHATG3C+xGDTBcA+I6tFNuSfBA8oAgSAkldJs4wFq1f2g== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 4.158.2.129) smtp.rcpttodomain=lists.freedesktop.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=79EUByVuJzVYOwLMmM+wLUXT8WRloN2obWZl7Q4M5AA=; b=YMGMKeOWJyPr94EwRNVG3cOEAg9huNBF9J+h+ekn6TTpi11meE0lFwTRQyViAuPHq1o6L4VPuh84S1Ev3SDq9i7rUKxTwVVa2QkcUT5JxXDr+Q6klPYrf+keocT9Txqfm0YgklXMgt+Yya7sL5M8PgLCSaEgbvqR2aXODR4q4Ns= Received: from DUZPR01CA0164.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b3::18) by PAXPR08MB6478.eurprd08.prod.outlook.com (2603:10a6:102:159::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.32; Mon, 2 Jun 2025 14:33:58 +0000 Received: from DB1PEPF0003922E.eurprd03.prod.outlook.com (2603:10a6:10:4b3:cafe::a7) by DUZPR01CA0164.outlook.office365.com (2603:10a6:10:4b3::18) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.23 via Frontend Transport; Mon, 2 Jun 2025 14:34:02 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 4.158.2.129) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 4.158.2.129 as permitted sender) receiver=protection.outlook.com; client-ip=4.158.2.129; helo=outbound-uk1.az.dlp.m.darktrace.com; pr=C Received: from outbound-uk1.az.dlp.m.darktrace.com (4.158.2.129) by DB1PEPF0003922E.mail.protection.outlook.com (10.167.8.101) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8792.29 via Frontend Transport; Mon, 2 Jun 2025 14:33:57 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fMRuVK90PMpB0t1FeEvg31NT1eKo5YbFq7qBDu6L7XEol3dHZJM/P527ABSBfM4GeHWILzhE9JPaHACKQhNvoY5DnmMVAQfVsxfcLGdYycS/JWSBE+lzLHnEgCz90/sbwN9cc6Y/LX3dTFzTlu+zJ9N6o22nRXz3K8BkP6R+Tgzao+wUf2GbCbCRx+eGNCJA/naH6lC6OmZV3usICiDMK6xoRPt9MpVG+w3lzSzRIreI5JPW8mHT5Qkmjl0awhqggbbejE7WLYRP5Hv202uURleWVdOb32fqKbWbNkc+jlFuo0Yzjg4yWUXbm61/thrImGIk7wJpyu7jVyAzKFG8Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=79EUByVuJzVYOwLMmM+wLUXT8WRloN2obWZl7Q4M5AA=; b=R0+rloC34QVnSeSNSHYivqLliZbYU6xFj1nJTiMHmL5eQ8TXm9O4pBYm2nuHiXuwcMEpWj3ibWiPrmWWIQIVpgCmmEz0L8UqkmoeVfkNAhDeJv14T/a2NyEyCYGueCCvgmLtxgIJlHhMGCYlDQokVRYJwBdsQQkXYYP03aSIVeM/IiT64VDGfNV1/NAxYeQDgIqoQRp3EChounMr3+3nQR90kOWltfTsekBTLJY8OJMY70sex3dOKScDtrCjtSs0vZQ3cZp3OKfSi1seFH9Mr/fxlGUKqsLiwhasy0vlmljyEOOzCsOsKs0KXCj749TFjNltxL5X2Z+jdRpkLsSYBA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=79EUByVuJzVYOwLMmM+wLUXT8WRloN2obWZl7Q4M5AA=; b=YMGMKeOWJyPr94EwRNVG3cOEAg9huNBF9J+h+ekn6TTpi11meE0lFwTRQyViAuPHq1o6L4VPuh84S1Ev3SDq9i7rUKxTwVVa2QkcUT5JxXDr+Q6klPYrf+keocT9Txqfm0YgklXMgt+Yya7sL5M8PgLCSaEgbvqR2aXODR4q4Ns= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) by PAWPR08MB9640.eurprd08.prod.outlook.com (2603:10a6:102:2ec::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8769.30; Mon, 2 Jun 2025 14:33:25 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%7]) with mapi id 15.20.8746.041; Mon, 2 Jun 2025 14:33:25 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH v4 7/7] drm/panthor: Add support for Mali-Gx20 and Mali-Gx25 GPUs Date: Mon, 2 Jun 2025 15:32:15 +0100 Message-ID: <20250602143216.2621881-8-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250602143216.2621881-1-karunika.choo@arm.com> References: <20250602143216.2621881-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P123CA0335.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18c::16) To VI0PR08MB11200.eurprd08.prod.outlook.com (2603:10a6:800:257::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: VI0PR08MB11200:EE_|PAWPR08MB9640:EE_|DB1PEPF0003922E:EE_|PAXPR08MB6478:EE_ X-MS-Office365-Filtering-Correlation-Id: a0d951d8-e9e2-46a1-d4a6-08dda1e2821b X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,ExtAddr,ExtAddr x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?TPTSs5+DxgVZ3niSGIwDJ3jstF+vTuQk0CeFefCzXownnnf8cBRt70Ke61Dg?= =?us-ascii?Q?Rd6eoRs5/HErUl5ueRi/zOJWwoHdRI+67Mbc604nJUxsKwkqc5nyDC9dDiEy?= =?us-ascii?Q?lyJzdnuv8s5v3ySPJNmdbweO9XLMW5zfK5SCKx2uHwxO6I6VR3wvI9KUDo+f?= =?us-ascii?Q?GsznyNykSgMvqxZc8pgCp4UgKhlmkpMFCNn0JVm3rN18szZOJwJtmjGf/581?= =?us-ascii?Q?9OCg1iTa4ddoK06MPIMXcNaMZ7tNKmRJoCFtECrnGMRgA9L/oQTQAczrGtbe?= =?us-ascii?Q?6ptdkjdtm8TVzjG+1SZiEaoFOJT9Is14nq8HJy+eEFvEagpytPG7HbNGyAY8?= =?us-ascii?Q?xj3fYZvo1UNdnGL+bKwc8WNz5ZnAt06lR5q4j1OlgHJhNQfdJmfx9jR65LL8?= =?us-ascii?Q?65L+IScTaTckopC786t5++o1W4/O6uVxzB7r1foCh6kBKq9z28awMjUselmE?= =?us-ascii?Q?/NLddXvBEBervQOF0EQ2EvOXW2knRnvbtwDF8eR9H+cb2VGxA0XaAtkthuyd?= =?us-ascii?Q?neXEIDtQ1uo+cT0oluInFm24YchqqX+BRlTtzeW4FRTg7MTaG5QHvNS2eP5t?= =?us-ascii?Q?0QjFW4D5MyHuxo5D8uDI1q8tsNL+HmpDn7hsHEMny7JFeNpcCLQUDyoPb1xQ?= =?us-ascii?Q?0SpVwISdPNBl5gym5vfnXfO68BozJ6RAWNWYFoypjiWIB8SliUumBb8w++p2?= =?us-ascii?Q?RwgXu4W5GdPhzVtUzROPIxIOcmgGAu1f6FYC5bAiZ7+bsxanV9cZL4O7XQLR?= =?us-ascii?Q?BH+dnMphdsrds2SMcFcPqrL144ckbmo/U8r2rwWfAzzMm6R5AGMjmoFKs9ut?= =?us-ascii?Q?+kymgsQtYeZH1YPkxQu82cmDYnBStj52jp0r7/pxqSADR4IwWWjtdhdrjrwY?= =?us-ascii?Q?w06VKK7/SVqOAUAymiBAhhbyqTFLG4Q1McKoVzfZ+JQ6yU9T5cd5bxMrDr9d?= =?us-ascii?Q?/029wyrAuwZRQSdRBCoKRaUDHraSMI+Vg4dYmtbDapZBhuPknNlILeBQAaYL?= =?us-ascii?Q?Io8JHxLloPW/l41EsiF81IKDaZ87jKx8xEA9BMXL5U8t+UgsRgsQEHFj7Cne?= =?us-ascii?Q?rAjqNF1/rw2Zg7mjhIu1XLDq70wvrvB8/b61pbMj0Fv1vyeJ9KfOR4l4uQYp?= =?us-ascii?Q?5M+2KamdpgVCtBfy0cf5/+NNRAa704Hoe3IKpmRejRMP0JPIzN5Q1v5aO4EE?= =?us-ascii?Q?8InSz4VzkDp8u5zWmJFFEy0zyZ9LJOO2yJor6fNdJpafoV745ovdcdZYwY0v?= =?us-ascii?Q?sx53NzMw2e4742gCVyRmqbw3msS+anfLHmqLpGzcFWkJPm+GeavifyxdRwUx?= =?us-ascii?Q?gIXQ8JffqSiiUpQ6s0UojKstFtnmL48kGrDyfuFOa9gOwQcSb7h1mXyxji0M?= =?us-ascii?Q?+QUGqGJhFGU69UB9nZ50mZe00hNC85fmRATPH92tluZVGeCe3DP1GdLuYwxo?= =?us-ascii?Q?6xi2bV0lcyc=3D?= X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI0PR08MB11200.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB9640 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB1PEPF0003922E.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9c83c168-b6a3-482b-6e25-08dda1e26ea1 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|36860700013|1800799024|14060799003|376014|35042699022; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?xFSwvgkGFchTa2SrpMlzWICsYqRB7bpV2c+SvxJefE/lZdSLNk9TwzCttfD1?= =?us-ascii?Q?lNe9l4WO9RBRTwO1gBcDfM0Ata3p4tKKUCsawuk1h/Y6UH03Q5OwD+qxM/+7?= =?us-ascii?Q?NQQ6Vo0eEPYZiWJHCvNzTOU/QoXAO+c9m13hWpXD5iKVJXMNhtLWyQfrzUCl?= =?us-ascii?Q?tdbFDvPSXJ/OfLNT/hiRlNmH35yhnMMpGLw1XVkzOTpGohHNBj8Knz60DKs4?= =?us-ascii?Q?6eZOa4PLLSu3PSXDU1eZHx3CmmWsTAIwr9m70J3GcMRt4CMVahbg3ycwtlqt?= =?us-ascii?Q?dWiUG5Dil8gEnNakghosiVCxwP7N/eZ1NpOKj4OjTBr78SEO3toF7vcnQaMj?= =?us-ascii?Q?ORx8vOodbhbtTUKV8zIVXD7Qq8UBHp753DAFiq7LpumqNnJpUig+PrL7ONvJ?= =?us-ascii?Q?k/K1q8VhgU2/S5mdEHlDsBW76DicUSyFs/o8NTzXL1x472SzjaQF8WxXXuhn?= =?us-ascii?Q?Iyi4v8p6cKJjfppwG8k8M4ybgopPxWxi8aWZRXwGikC+ZIU4Cs8zuHplhga9?= =?us-ascii?Q?gIZxj1orplyrangS9mHysSIMcABqGtwva1zmKea5C1/ZFLomnO0Tm8UOhACj?= =?us-ascii?Q?WHPfY6IQpWwmk9OwYOS9P/wzJC5+5lZDW31D9rHl5+29gR6D6aBpRHgW6EHa?= =?us-ascii?Q?wjOxj5je6W6JzId1n0Vwnw2np6vpRY+AobEMPvg+fYTKobiDEGWSAiMxbQvP?= =?us-ascii?Q?9tNBcHfW4Zxqzg00rpdP3dY/LPsEj5HkBb3l/rgL9LS5NePABFZa+VKJEffD?= =?us-ascii?Q?kBPsumYT2LKVuRbThNedqZfFsIWP1Jp1F757wby6+Hp3CvkL2RPDLNWl3Cfy?= =?us-ascii?Q?8Zc42lBTOXIqaLr3yhDZecIJ2974Xl6cQT7+VLsBm+trPrOdjzD8nlZtCCwo?= =?us-ascii?Q?0oUL6xdNXyqiX3kwQu3bYduyH4w/YiCsYLWbBHyD1KFliBQ7fXFoovlYeSDk?= =?us-ascii?Q?WWrf3tVPfdm+Afx9Kobh92C4QWsnXJC4HV1mALMFTM1aYtvKOvzdwy/5vGGY?= =?us-ascii?Q?IrTDPMdmlDOdd2MjSJS5NyTfBPBkgFcZRzsOm0FZe9uYOJMzv44CPcyctdm0?= =?us-ascii?Q?egcjxIzumRae7zs41eqgFiK5jklhey1sFeIjRRG465OLHU9BSEJOHYnQpL2i?= =?us-ascii?Q?zHgoM72cJO0FIx81RX/B/qIzscnsPnPF0Y1vh1VYb+HiP7oh96UY9bkjqwwT?= =?us-ascii?Q?9v54L4oaaJjzqpn3H3jackgEkM3gqgeBrEsPL9ARaqJ9Iv4l8uHbH+9BZVxn?= =?us-ascii?Q?YrMyi3xQDSEiSD1Uq2Ecu4Omm0uee5V2HGuALA9dB6ufpBzucX78BkziWzze?= =?us-ascii?Q?21QP6riuBapNzgQZIpMJw5+4ojCn59lOUAVtP/TKf//kxIppjCsAq69XbxV+?= =?us-ascii?Q?46RT3hYI0tkItWZCRtWPTseT+5609jzqTTAnPKMELFjWeZmnvM+QwmdkVqZC?= =?us-ascii?Q?VQoz3qd1OPlJFI6rRV+P0wEqbtSeAAWthP9hFQ1miVDcV1XAWawU4JuOVgi7?= =?us-ascii?Q?R7UkAW6IlVpg4TNN+RFoOnH8EL3/AbbdSThN?= X-Forefront-Antispam-Report: CIP:4.158.2.129;CTRY:GB;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:outbound-uk1.az.dlp.m.darktrace.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(36860700013)(1800799024)(14060799003)(376014)(35042699022);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 02 Jun 2025 14:33:57.3060 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a0d951d8-e9e2-46a1-d4a6-08dda1e2821b X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[4.158.2.129];Helo=[outbound-uk1.az.dlp.m.darktrace.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF0003922E.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6478 Content-Type: text/plain; charset="utf-8" Mali-Gx20 and Mali-Gx25 deprecates the use of FLUSH_MEM and FLUSH_PT MMU_AS commands in favour of cache maintenance via GPU_COMMAND's FLUSH_CACHES and FLUSH_PA_RANGE. They also introduce the following registers: - GPU_COMMAND_ARG0~1 - SHADER_PWRFEATURES - AMBA_FEATURES - AMBA_ENABLE This patch enables FLUSH_CACHES for both families of GPUs via the PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH bit until FLUSH_PA_RANGE support is added. It also adds the aforementioned register definitions and firmware binary support for arch 12.8 and 13.8. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_fw.c | 2 ++ drivers/gpu/drm/panthor/panthor_hw.c | 30 ++++++++++++++++++++++++++ drivers/gpu/drm/panthor/panthor_regs.h | 12 +++++++++++ 3 files changed, 44 insertions(+) diff --git a/drivers/gpu/drm/panthor/panthor_fw.c b/drivers/gpu/drm/panthor= /panthor_fw.c index fa6e0b48a0b2..9bf06e55eaee 100644 --- a/drivers/gpu/drm/panthor/panthor_fw.c +++ b/drivers/gpu/drm/panthor/panthor_fw.c @@ -1405,3 +1405,5 @@ MODULE_FIRMWARE("arm/mali/arch10.8/mali_csffw.bin"); MODULE_FIRMWARE("arm/mali/arch10.10/mali_csffw.bin"); MODULE_FIRMWARE("arm/mali/arch10.12/mali_csffw.bin"); MODULE_FIRMWARE("arm/mali/arch11.8/mali_csffw.bin"); +MODULE_FIRMWARE("arm/mali/arch12.8/mali_csffw.bin"); +MODULE_FIRMWARE("arm/mali/arch13.8/mali_csffw.bin"); diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 5ec9d7f28368..281d86c4715e 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -61,6 +61,24 @@ static char *get_gpu_model_name(struct panthor_device *p= tdev) fallthrough; case GPU_PROD_ID_MAKE(11, 3): return "Mali-G615"; + case GPU_PROD_ID_MAKE(12, 0): + if (shader_core_count >=3D 10 && ray_intersection) + return "Mali-G720-Immortalis"; + else if (shader_core_count >=3D 6) + return "Mali-G720"; + + fallthrough; + case GPU_PROD_ID_MAKE(12, 1): + return "Mali-G620"; + case GPU_PROD_ID_MAKE(13, 0): + if (shader_core_count >=3D 10 && ray_intersection) + return "Mali-G925-Immortalis"; + else if (shader_core_count >=3D 6) + return "Mali-G725"; + + fallthrough; + case GPU_PROD_ID_MAKE(13, 1): + return "Mali-G625"; } =20 return "(Unknown Mali GPU)"; @@ -109,6 +127,18 @@ static struct panthor_hw panthor_hw_devices[] =3D { BIT(PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) }, }, + { + .arch_major =3D 12, + .features =3D { + BIT(PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) + }, + }, + { + .arch_major =3D 13, + .features =3D { + BIT(PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) + }, + }, }; =20 static int init_gpu_id(struct panthor_device *ptdev) diff --git a/drivers/gpu/drm/panthor/panthor_regs.h b/drivers/gpu/drm/panth= or/panthor_regs.h index 4eaa2b612756..8e01440f8743 100644 --- a/drivers/gpu/drm/panthor/panthor_regs.h +++ b/drivers/gpu/drm/panthor/panthor_regs.h @@ -89,6 +89,8 @@ =20 #define GPU_DOORBELL_FEATURES 0xC0 =20 +#define GPU_COMMAND_ARG(n) (0xD0 + ((n) * 8)) + #define GPU_SHADER_PRESENT 0x100 #define GPU_TILER_PRESENT 0x110 #define GPU_L2_PRESENT 0x120 @@ -98,6 +100,8 @@ #define L2_READY 0x160 =20 #define SHADER_PWRON 0x180 +#define SHADER_PWRFEATURES 0x188 +#define SHADER_PWRFEATURES_RAY_TRACING_UNIT BIT(0) #define TILER_PWRON 0x190 #define L2_PWRON 0x1A0 =20 @@ -125,6 +129,13 @@ #define GPU_COHERENCY_ACE 1 #define GPU_COHERENCY_NONE 31 =20 +#define AMBA_FEATURES 0x300 +#define AMBA_FEATURES_ACE_LITE BIT(0) +#define AMBA_FEATURES_ACE BIT(1) +#define AMBA_FEATURES_SHAREABLE_CACHE_SUPPORT BIT(5) + +#define AMBA_ENABLE 0x304 + #define GPU_SYSC_PBHA_OVERRIDE(n) (0x320 + ((n) * 4)) #define GPU_SYSC_ALLOC(n) (0x340 + ((n) * 4)) =20 @@ -138,6 +149,7 @@ #define MCU_STATUS_ENABLED 1 #define MCU_STATUS_HALT 2 #define MCU_STATUS_FATAL 3 +#define MCU_FEATURES 0x708 =20 /* Job Control regs */ #define JOB_INT_RAWSTAT 0x1000 --=20 2.49.0