From nobody Mon Oct 6 06:31:20 2025 Received: from MRWPR03CU001.outbound.protection.outlook.com (mail-francesouthazon11011043.outbound.protection.outlook.com [40.107.130.43]) (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 9F17628B7F9 for ; Thu, 24 Jul 2025 09:27:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.130.43 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349237; cv=fail; b=hkmSxBJR/tljaoNpHOtMpc5MyJvzg9/EuP8hj7IOx16G+p+pzAA6aS3jkcyZpt7pDgad5zT0mK6WESOydZVlVUebTBe+hF7eq/36uaNXruIzKgt6v+heDuvKbzNGrc1aaJOOonuhdoY6qOB27hyAPr11OLduP3xNhL+W4EA+D0A= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349237; c=relaxed/simple; bh=I5Z1SWPQ3jVJgvmrb8UI2CLPaMkcZyTZ3WgRFPztkFU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=Ymh/hu9jyW0b4EqjXEyz41SzvseiEFzsPAHjD6QspBJABQbCdnUbYxl8Tryl6peKrMYmoHqjU0PNXgyzwRDkFteeiBoRro/9x7kx3Yv3FK0NHgd5EQE67au3ZKaN9NorJ9qzAooia19okbb5RbxhRFoiEVH+fXLNXPRrcq4BsIg= 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=BgCpm9rm; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=BgCpm9rm; arc=fail smtp.client-ip=40.107.130.43 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="BgCpm9rm"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="BgCpm9rm" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=trO6yFDFmi8nZ8YLVdIuTUD01zMLg3qlgfeNIwkVdFf2It4VnY1JHsMhzx5m5I7w2pWqDYR/FBtHf1C7mvKxNLLlpzW71spUHM2VlG8Gjgt+z4DvEAmkcRlfk3f6Xct4oD3XM/DVg/ZeCld0cqtOw0jPlkvEbiFkd63VNiB+xryrHkDboB5mwl9M2j1u01MdYB/yv/ivnjlQfYUMcuQNNYzhWkB3BgQjRwBhG/OEevihfJPamtE+T+ngDI1MzrfRIyNA1b6vp44a47D8UZwkbf+Ukpbs/FtVH4I6wMEiIiVKFXSeAfAy08ifmoFFZywhJBs1SwDACtGslgvr4mcjlA== 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=u8BK2zgx57pSROC8NA3H/d/RlbTVFTJZ0bTPR2QdmtU=; b=dU4PGiNV0l3jRS5+o7flKVLl1mx34jOW7BKQrAfc1NiXv1pmV1EnEVok596DW9yf8iHQ33r+OyEDUHLd3+g5zjhiP4rqHCbCUaEWzJwQV1W4knhp3rZjfAWCNK+uoK8nxAXMnbdgEbXmGGEAhK5LG9TY5FpX+t2s/VsLSBKzAlm+XOo6SVfJOulBioRqJCQ9AA54dfN3PVfHo8kgr85kJHU2a/mT6wY2pqkZKrSUTzMYlZQ0E4299qbIg/SdRg7NrdW28bBGoMrDGjgqnAzu3UtqPgkKJLA2smGVYRCiMdUQ1oZtHiUfZFosLwW/7N4+vW+K9mtTT1pvjayW4WAQ+g== 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=u8BK2zgx57pSROC8NA3H/d/RlbTVFTJZ0bTPR2QdmtU=; b=BgCpm9rmvZ+ei3NGyFZ6r5RGfuK/jVKJ7k/UjyI/doYTyaD8lv8PJtbrmOmnK2KjXDQHSwMKPE6ozkDVJhUxyhjSYrKTlckwhcGq0+DFxHQ9d+q79dVCQBsAwyJ/wXYjDj0vVHMoCPDZ/6VhPi6PoI95QK74Mi2tKm/hFR5exg4= Received: from PAZP264CA0148.FRAP264.PROD.OUTLOOK.COM (2603:10a6:102:1f9::7) by DBBPR08MB6012.eurprd08.prod.outlook.com (2603:10a6:10:205::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.22; Thu, 24 Jul 2025 09:27:10 +0000 Received: from AMS0EPF000001B7.eurprd05.prod.outlook.com (2603:10a6:102:1f9:cafe::b7) by PAZP264CA0148.outlook.office365.com (2603:10a6:102:1f9::7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 09:27:10 +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 AMS0EPF000001B7.mail.protection.outlook.com (10.167.16.171) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 09:27:09 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=bPXCSNKf+JMJbHKMgKcNInjXVzAs/buTWqyxfhIFzHb6ZUOQS3S1SqNsu8V2hRzV6rl9vBfEOAI840i8LEb/GBo8gAMu32BqhuX5j4BN8xznW/va0ejCQ17jLb0kAmVTXyCN2bam/qSxdQzSTUXmi5MdvoGPWCYZxFlEcF/Fyb14WvIs57++FDI2fNQF8EOoiCz1T5P2xxnbjf2Tr59LC5SqQpRRIcKtmZMCPeDIkGjEi4KlRFl2iabWBBNUDdIafMb4my8KTjcBLj1eyj2HWMQn+l7Ku5Glv0VJaBpWf5H6hVMMva17loh3v277jL0ADX9y6nc1RJ8J1t/QabnQvA== 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=u8BK2zgx57pSROC8NA3H/d/RlbTVFTJZ0bTPR2QdmtU=; b=uQeKEctlBjqGDZzJ4OLWhOTJmSGkO24a/V+542iwLYk4TAefJ1lStaDhw9C9fG6e31KaVdCM1v2THqAhyGX1oeZ1nJq/e9JBX7ok/4mzezXVpRSX1g6v2JH2T7efM+D+akk+4EPUt1gQOmX9kED27jrTORreHdu6fLOEQLnl4Ofmjr4ihP7WwdFUE5qbDZXA3U4nqwqgNqcC0MVHxqj3U3My54wVrfTTqcX0ssXKxY8JZaIu7AzfXW00tIXfaR9OpoJErW8GdTY5kgzuXu7DXTqQvitdlqFvsmIEfVxd1amPcB5LTnQb0Eo0pVjZZpcqr+tSSgwOupCB4CR/GJPblQ== 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=u8BK2zgx57pSROC8NA3H/d/RlbTVFTJZ0bTPR2QdmtU=; b=BgCpm9rmvZ+ei3NGyFZ6r5RGfuK/jVKJ7k/UjyI/doYTyaD8lv8PJtbrmOmnK2KjXDQHSwMKPE6ozkDVJhUxyhjSYrKTlckwhcGq0+DFxHQ9d+q79dVCQBsAwyJ/wXYjDj0vVHMoCPDZ/6VhPi6PoI95QK74Mi2tKm/hFR5exg4= 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 AS4PR08MB7951.eurprd08.prod.outlook.com (2603:10a6:20b:577::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:26:35 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%5]) with mapi id 15.20.8943.029; Thu, 24 Jul 2025 09:26:35 +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, Chia-I Wu Subject: [PATCH v7 1/6] drm/panthor: Add panthor_hw and move gpu_info initialization into it Date: Thu, 24 Jul 2025 10:25:55 +0100 Message-ID: <20250724092600.3225493-2-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250724092600.3225493-1-karunika.choo@arm.com> References: <20250724092600.3225493-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P302CA0033.GBRP302.PROD.OUTLOOK.COM (2603:10a6:600:317::8) 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_|AS4PR08MB7951:EE_|AMS0EPF000001B7:EE_|DBBPR08MB6012:EE_ X-MS-Office365-Filtering-Correlation-Id: 414c4880-4658-432c-4681-08ddca94436b 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|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?JSgPIPYWNgmsZY0xAB0x2oheyPWEZ1A5LAxN9FFEZYxck4gHO20eaXzjL1rv?= =?us-ascii?Q?4xHODc4Pkbg6o4BnDz3nJqUFwJaeeGT6Q4i4TE5bcCGRbXvxzW1T/a3YIHcw?= =?us-ascii?Q?g92Yai0KNL7lSzi5cIE3yaJuTNljYEAlaqYoKoOeqzNS5Uk03ROlZha8U1sP?= =?us-ascii?Q?dYdA0fztJpqm4VnRXS94airCEnUPkRWCFmxyK2ElLyoEZPXuHu5lSwj5X52k?= =?us-ascii?Q?aeEKkUuH+tt71J4MWont6wXQj66B4EnYvATMem7D9OQONlq8K2/nSvXtW7cV?= =?us-ascii?Q?rK7nje2m2ZF++4V61VhPP2AgTnBD7BZJJV4sjtSZc/P13m2j2ZSDsxR5XTZW?= =?us-ascii?Q?IkkNYq/VhZ/amumCT/16AOCFaJ733Dmej1iNIPApStPNXU/dQFF1ccElJ4dC?= =?us-ascii?Q?W2k+i+577eaz89F36IHPVjJaCEGDop++ShAp8FQ3lhjIVU5e9qFFUuX04a1r?= =?us-ascii?Q?z2nF5aceDYynTtNt1dB5Q2SlvbbjSADcTCt+Br1UxClMKVmx8mOlzMc9/866?= =?us-ascii?Q?U0FQmGg8vgUbHws7x++zV0xcjjdIRo0ne8v5QHnE6VCWnsLj9861WP5E/Vcm?= =?us-ascii?Q?5Pi4dgmgc7j6+2omO17VwtdMvKz5+GljpdlNwYqWoTOr7BYAZDd6LLqE14Nw?= =?us-ascii?Q?ynschVNQ262dMpggCZr07kvAes6PWfALlKgs/mSlDyUNwPXil6doXL16SQfK?= =?us-ascii?Q?5qgm9TVWS/zuxLWJSlflTb/llHuE76dvu5faUK2IVP7nTk+Vb+qtyaehhZSR?= =?us-ascii?Q?Cj/euLlcJL+wu3q4qA78Xlae9E1MP4yR9GfzbLLRAUFwtbrQsSYa1yJshyRl?= =?us-ascii?Q?Wenc+2KUE4hoE7r9H3M5CXha9XX7k0jXdxkV3rm0QugvN02twnGV8qda1HaB?= =?us-ascii?Q?rlcIvs5LrlRpotbGpdWvGxiGnPgxSmsTx9lEVuThB1JsDyI6vec1l2107acc?= =?us-ascii?Q?BZVvvkYTNdIR7twcbYJKiIX4O0J4YFmfhzgPRcL3nwDZ4kBIZT8GEolOJDN9?= =?us-ascii?Q?Ef2tH+MbeEx+HjoDjw9oR1XeiUlR849i8Hucd0yjsWq5jqQVgQEnFZvNuVnZ?= =?us-ascii?Q?RzrbEgLo9zyGHt3XHzpa8MtMkZGhqudqhgjwf6ypiU/zBiVR7DUT3ySrgTMV?= =?us-ascii?Q?8ZvhTyqbBdZI8lhAo4k+fXk675DLuN0MvuS4pqaxC7NQofTTdSll7v54rmfX?= =?us-ascii?Q?m+Y2tyKNz88oFbvwQ6yI+V5qHTc7LEPVy7Juk+eQkEDMJ7mI79tlZiqwGp3O?= =?us-ascii?Q?qJdpCgwJNPHrQQchZ0Nlgd8z6zvXOH/Z1LtbjBYB12bihgT46sFeObCn+eCU?= =?us-ascii?Q?LX5P0yCj4RZbOsyr4Fzhz3pe7qgDDy4X+JhUj9tE6NC/ze1alRyw2DSspagt?= =?us-ascii?Q?gxMDyq1+ujpsxAXM1pe0FR+mmtw5A6G5VqwTMcDAqrVR+FsWHvFIUtsCTt7P?= =?us-ascii?Q?c6q/we8p59k=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)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7951 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS0EPF000001B7.eurprd05.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 57c1a882-3646-45e5-618f-08ddca942f4c X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|82310400026|35042699022|376014|14060799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?dpYCKEkS3Cjl9JjnhF7vTlwTVkBDu3fT6JceLh5E6Vf3ci+RBlBfrB3/d1S2?= =?us-ascii?Q?QY6HrED1aJVVfjQAHUlUUYE3hIpSd/7jjrTGJzWaVSUejjLUV7G0ovBOSXHP?= =?us-ascii?Q?rWfCZ3B3MzGiCxNFV7tMzWusyYinKX0qxpCIDV/BukXZz59ihd6K0DJ5tShg?= =?us-ascii?Q?Ra9VIhHaQjRiWLGQZOR1WGHtRjsBa3zlHJo3GOShZrks4teAg9ji2onDV7ik?= =?us-ascii?Q?LP2FuDM92WL6DQC+DxRfr4uTITczz2ZMqqd/G4QC1av0yl4YzO/zkXT47oSD?= =?us-ascii?Q?AtAWlDu8Nj+6+LL2JnFh7f0OhqWlOihD0x5UfY8IB+uu0DPYN87FIN3JAkNb?= =?us-ascii?Q?zhKfpTNI9HyDLyDWtksjXf6YNcTI8NjaxHy2rn0tXKC3Yu8rMSqqxtEO9aTj?= =?us-ascii?Q?VonvTMTn/fngnxOeWOhlwX9W3sHuJR4Wwqp1h9AbLzPQck5X1KC+TvghR8jv?= =?us-ascii?Q?RKgNDaqyNp/IBq2jxCCghVVbjNbner3o8K6AAhHkUifQNYxqu3pXOGIkxvDC?= =?us-ascii?Q?qqSHTuVHoqAEQJfiy174z1MZ0+AphfZlu35wNOa/UtYRRS4enUnfxUVJ1XT+?= =?us-ascii?Q?0pTo5Mlr7RMeZBdnASj8NGC4+18HXSn69nhBE927nh/H5/QKWwUldr6rNyV9?= =?us-ascii?Q?cDEUOs8X9Zj1z7j3s9uyjvqxoqDnoNXMVlvOlP+FijK6HvyXaq+9hFQqB8kD?= =?us-ascii?Q?YDgq8DIzmR0YHrsuZif9sHCgwmNzcK941NMku8HVfw+bhbEVj/og9WEo6mVc?= =?us-ascii?Q?tgqyO8HwX+ESSq0QlZnuhvKOlAg26p+zWPF7cx9iatG6ViJLNgC/yCYZIyjp?= =?us-ascii?Q?LRWVft+e0yLO7YOHwO360jsomzLfQfH+x7TC47fojx1Xq5xGW/8q/j2VrLpM?= =?us-ascii?Q?0PithHNRroez9BSnzLJibaVFsBRIxjMgL6L3/dd3WMnUWOpuYiOfpDFnXQ1V?= =?us-ascii?Q?v9FJLThBqCzsx/R1i+QtZ/JqalMbj+qdru28s/pluD+dPxi6L2I1UB3NriUY?= =?us-ascii?Q?9kVfDsxbUu0ZWVtBCh2hqiG7gU2A8zPrITNl9yplKtyySVZgWWcpu9aMAkT6?= =?us-ascii?Q?0xEo2Gvhw1WrVnjZ8W4saOuJ0liXwkZ9LQ5EvNRvSAF3fQAMgd6JJsHaLvEn?= =?us-ascii?Q?YjXd2SEWLGv9lb132yFjTJgtPsuuCdhIoClg72N6kd9W5OcZineqOa+F7mei?= =?us-ascii?Q?vDQElJGipQqkLSQ+4Fefxn9Z51UItM4Ec72upVRiHa0TG4WCOtTZ68aNbQE7?= =?us-ascii?Q?cCafbYxbzANI8BRtjuBGkWxsQ1nVJIpEfNIg1XZD1nX4n5YWPoZaw4PHWr4X?= =?us-ascii?Q?U/K0xM35ooPRVt+DGiDCuZ4YTh0TEgfeEHAyVr/jnFAaR5mOiol9C7wsxdaX?= =?us-ascii?Q?vyR6LAawBygJaZpmu6qQYC/cHAV3L/WbK6NZO9J0ivsMREvitsS/XBT1PufI?= =?us-ascii?Q?bALPx3p681EeKS3MwaJNYjtVDf/JzFShinfwgUuYHUVEqP2s6I6uQEiz18WE?= =?us-ascii?Q?3SOpFiqm9UUBFPkFSu1c2cevJXMwkZd739QP?= 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)(1800799024)(36860700013)(82310400026)(35042699022)(376014)(14060799003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 09:27:09.0478 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 414c4880-4658-432c-4681-08ddca94436b 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: AMS0EPF000001B7.eurprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB6012 Content-Type: text/plain; charset="utf-8" This patch introduces panthor_hw and moves the initialization of the gpu_info struct into panthor_hw.c in preparation of handling future GPU register and naming changes. Future GPU support can be added by extending panthor_gpu_info_init() 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 the appropriate function will need to be called based on the GPU architecture version. Reviewed-by: Chia-I Wu Reviewed-by: Liviu Dudau Signed-off-by: Karunika Choo Reviewed-by: Steven Price Tested-by: Mary Guillemard --- drivers/gpu/drm/panthor/Makefile | 1 + drivers/gpu/drm/panthor/panthor_device.c | 5 + drivers/gpu/drm/panthor/panthor_gpu.c | 95 ------------------- drivers/gpu/drm/panthor/panthor_hw.c | 113 +++++++++++++++++++++++ drivers/gpu/drm/panthor/panthor_hw.h | 11 +++ 5 files changed, 130 insertions(+), 95 deletions(-) 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_gpu.c b/drivers/gpu/drm/pantho= r/panthor_gpu.c index cb7a335e07d7..5e2c3173ae27 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 new file mode 100644 index 000000000000..3f7175cb0ab4 --- /dev/null +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -0,0 +1,113 @@ +// 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" + +/** + * 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.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); +} + +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); +} + +int panthor_hw_init(struct panthor_device *ptdev) +{ + panthor_hw_info_init(ptdev); + + return 0; +} \ No newline at end of file diff --git a/drivers/gpu/drm/panthor/panthor_hw.h b/drivers/gpu/drm/panthor= /panthor_hw.h new file mode 100644 index 000000000000..0af6acc6aa6a --- /dev/null +++ b/drivers/gpu/drm/panthor/panthor_hw.h @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: GPL-2.0 or MIT */ +/* Copyright 2025 ARM Limited. All rights reserved. */ + +#ifndef __PANTHOR_HW_H__ +#define __PANTHOR_HW_H__ + +struct panthor_device; + +int panthor_hw_init(struct panthor_device *ptdev); + +#endif /* __PANTHOR_HW_H__ */ --=20 2.49.0 From nobody Mon Oct 6 06:31:20 2025 Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11010031.outbound.protection.outlook.com [52.101.69.31]) (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 3140C28C2B9 for ; Thu, 24 Jul 2025 09:27:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.69.31 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349240; cv=fail; b=g25F/+4+C/ELYUXXIEZWvkp8YxFPRJRRGqB+VVI3U2QUr9FH9j9gnd7Te2qozd8arebX5BNJ3QUNRAdbO1QO0iy0B8IYZhCvO1bDrbiXk3TUocTO9+5LXWx/BPh6GcC+2j2pbfrhgKvzVLm+LlHTqJe0XZDFcciRCv4gMKHg/iQ= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349240; c=relaxed/simple; bh=yqJ1fZSJoU11zRTcqG8El/CdosTtlZ67dyiUo9hSAgo=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=qk68kZgvUvu3F57nE8WROEHHW52msksLiIikkwxA7snUvWDVlvfr+IyhqtOiCEn2Kuro3WC6t1T5QCi7+mmWXi1Mdq2lgqw5hcR1fXwQVpZmppaQhSXzgS9lk+QhPf78JWd5/slmwqvVh3zECdVHhrGIXQxGli4kUw+h4hms6Xg= 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=CwQR2sXM; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=CwQR2sXM; arc=fail smtp.client-ip=52.101.69.31 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="CwQR2sXM"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="CwQR2sXM" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=om6/135OfwVV885/Ek4AuxPG/tC6lu2kEedMLmpn/2EVjbY2/qLC1brBHFfnZCi98RdyZNWtONanBDm2YZlpLikrLd30A+Jj8w9AL4CmmrVenGQhL7Vs1EnujrfU8GbntXgwQNtj2RNKb/aJHN1S6eXhRZ+gnywwej1xV3efbMB/I5SMEJ/CZHAGr7eOWX3KY09GYBHnWZTgftPUZ2tPTHEZmSCcRZ23vFBbsYZnIe+4Zs3jf25ceojhPJtFBiBAb/gPrHqZ6C1bHjlzTOlUvyF193m2SA3fCyhLXt+9TwBjH6nsaLI/3KM2jzA+umKpjRHY7nIOTirIVlL/axPKBA== 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=l6w4NmSCY0O02ZcmBXxClmrkRf+IUmCfbsHVAaXx0MI=; b=M84NrEbSGaImP+UuEbC8VyO6lxESnRqfNFzZQFRUyXocL+uj9fx4FVZcAMPRioctCCZ7btUVxCzq2OQpr94liPbvdAMtcJn+BkN34Vf2rh8wojDg5NpYQCtRQU0iMIElJL9gHxryisXL4DrAOa/9wWZJcl4LBAe2UJgqbr+xUZ+B5cA9a4tsvILYj9xbymT5uo1FBJ+neMKKrR9XV8C7xJ/RwCXRZGc5iF99M3IDtPLoDLe/Hu+e4AYPOQg10sBg1rbmefLm/y8WujgOuVzS+TVaoZvGUlxntmVXeNItAkZfucyafdNc9ClDQ4k2O/gU+iLmdNC7Z4sN+akt/yrnxA== 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=l6w4NmSCY0O02ZcmBXxClmrkRf+IUmCfbsHVAaXx0MI=; b=CwQR2sXMUpB8EBrn4/m9qoZ8/lZ4c7NKD8E9lxNl1kaTXXYN1bGxwXFJ4pb3KhkMjHxbHW5TuKdfAXFwqE6widlDfEogBNuMrj5c0kG7JoXkJ1I6nJSc0lF3T9Cdsa/+vogXJUigGsZEDcE6nGF0tE1PipXLcsq3MSYY/1uc8JI= Received: from DB7PR05CA0058.eurprd05.prod.outlook.com (2603:10a6:10:2e::35) by AS2PR08MB9449.eurprd08.prod.outlook.com (2603:10a6:20b:5eb::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:27:12 +0000 Received: from DU6PEPF0000B61D.eurprd02.prod.outlook.com (2603:10a6:10:2e:cafe::f9) by DB7PR05CA0058.outlook.office365.com (2603:10a6:10:2e::35) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 09:27:12 +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 DU6PEPF0000B61D.mail.protection.outlook.com (10.167.8.137) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 09:27:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vRrxswgr88Ry0iqoTfqah1P8Da8CX0UkiUaWpVBsZYzoCti6S3XFNpXOc9407KCR9yfe2JCWu/D80qo07pZbCSr3LCSAOS0gAnhpuoWNyhI8HmOje2H4SbV2PmDSB/2qYiQ9KoAdXkCe/1P4X7+ja9SB8D//YzdN9rDqc0jIntTr9WXOMH6/FXvjdiGJhDp27QFX2Av+U5ri0xfVqGvE5e8QxL6ajvkQ2MnhQOKz+jB7ToG06kNFOpCMdnT/jewquxvQMbDMuBfKCj44h3J8QHS9UNKLLc1z+Otqhq2T5MqTjJ5x3tqiseWUPU3wTNS92LgOhdhafS06rvCTbDHCfg== 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=l6w4NmSCY0O02ZcmBXxClmrkRf+IUmCfbsHVAaXx0MI=; b=PADCE4r9UC3k+2Jn95Y6kVSx+k+QTr4FLQDJLIali3hw+lkVp8wFyIBa2VZdB542VCPtgTlq+fHpZxyTDSyXHaP+K1Zc329k+c8LgGqffHT/7aDEsFqzVg3CrDCmicU4wGINRUxhQgQcKDv0pEIy9WXKvnAZZauFOMm1zZIXwI8KxTAFKXYfR4drytHuSLdzG0twuRfCsdMRGcc5Ukl9ULNfM3tTRSP0cm+cipmjQ0ABxe9lFvaXvuZXlSt8xUImHV3rfkHcKD6ubqNHN6zwZajlcKnSP6Kj1ArzPUrGKiLBGDq3+bHYv1vqI0Rd7AaTT4KguyREZBi5FhJ9TWfI/A== 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=l6w4NmSCY0O02ZcmBXxClmrkRf+IUmCfbsHVAaXx0MI=; b=CwQR2sXMUpB8EBrn4/m9qoZ8/lZ4c7NKD8E9lxNl1kaTXXYN1bGxwXFJ4pb3KhkMjHxbHW5TuKdfAXFwqE6widlDfEogBNuMrj5c0kG7JoXkJ1I6nJSc0lF3T9Cdsa/+vogXJUigGsZEDcE6nGF0tE1PipXLcsq3MSYY/1uc8JI= 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 AS4PR08MB7951.eurprd08.prod.outlook.com (2603:10a6:20b:577::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:26:39 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%5]) with mapi id 15.20.8943.029; Thu, 24 Jul 2025 09:26:39 +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, Chia-I Wu Subject: [PATCH v7 2/6] drm/panthor: Simplify getting the GPU model name Date: Thu, 24 Jul 2025 10:25:56 +0100 Message-ID: <20250724092600.3225493-3-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250724092600.3225493-1-karunika.choo@arm.com> References: <20250724092600.3225493-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P265CA0305.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:391::9) 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_|AS4PR08MB7951:EE_|DU6PEPF0000B61D:EE_|AS2PR08MB9449:EE_ X-MS-Office365-Filtering-Correlation-Id: a1d34ffb-332e-445d-1f36-08ddca944524 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|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?/GcOSCHUWNY6BqOwhVyTwuN+z5O0gZarwAKcddOcKhhkak+7wOzMezbNORDd?= =?us-ascii?Q?P+ZtjcXZ+62+sZCUUodTSvTv84+jTSBwhDJf4gNaERYEoBw2YMECGchKEdtk?= =?us-ascii?Q?4FxqVg4ca0S/WEhg+MMWP3VSYiOqSNudEm1Y2Lgk+80zQz65zS38dCXk5rQt?= =?us-ascii?Q?peVyf0opt8DRGQzl+RGIGSutUD9sk9a8ic1tYuL1ESigdbvj1vME4sj7ud5B?= =?us-ascii?Q?RUBf57NWzuCZO3YZoKyiddFqT98A8kQ1zc6XpxAXhNt9q2n8pIGrPSMg/Ttl?= =?us-ascii?Q?nivF+w0iY32oRKEL0ro0dVirM1x0v1MQOPOguii4bqKgfXqBSlkkwRA/XueS?= =?us-ascii?Q?Qx2JsrtC0dJ7kOTo2BO8MRXOyhYIUMeb6cU4FGazeo/hSuhljqnNSW9e6iAA?= =?us-ascii?Q?Yo4DKtALUXFsbZoMT6knU8SEcBDCLw08zDNS9+mXCb9SsDjoKuFEmrG6qYDv?= =?us-ascii?Q?9z1KxtWnSAdgg5109VqtF4jo4CZ265/RAB1Vi7LL74TEQijGAhQOuZn9AjME?= =?us-ascii?Q?wzJiU4CSv3MuXCzwLnImBwhcE8STBOlrpJlhkbdjocgUHu9Cgje/oG9GERUt?= =?us-ascii?Q?c4qi4KgwbRHvAMlLs64uYTYKiR8SuAHF2grVyMCUuPjGLQMbMztZvK6wfG4G?= =?us-ascii?Q?N4SdbeAoFUgLX2PnzgvGeNGMNuTo/Oi2/+XZ6IVXv2vEqgOMKLu4+CMLnm8Q?= =?us-ascii?Q?LWwgYDJL7y0FuOe7Q/U/454Y6kmR5MkVpUa7bwop6SXsghF+AzxG7ukO34Pk?= =?us-ascii?Q?6ik/LD1P9aFV1Y4/jyOzoe3HhgN+XwOWtlR0GVHihomx/7/33vmZQXVnzISw?= =?us-ascii?Q?mz0q1ajK7fKXDmZh32k1WDCOd6wEvDVzN/3+ajBc9k+TyjGlWixB/gIJm7zd?= =?us-ascii?Q?7XQz+LeO4XQkRHO0dcFEwfXTcoe0lmFWyTI7NEd6ptDxKW3UeXBaDnaVzRoV?= =?us-ascii?Q?NyeWnmlAG5udZjSOr/9tjDMJ6vXFhBEDBgKKgIt6Vp16rx/5GWUoNiem0Yd+?= =?us-ascii?Q?nFldwUZKATUYEsh0iZl3PZbIhomqWTnaj+vf2aNoGDjdJHmS9X2cjyNQ7VYR?= =?us-ascii?Q?mdvNk5LRRVrKECttxqHk1zNunz06GUL/xMEsk6SO5qHl4IG/RGTVDp5Yev0n?= =?us-ascii?Q?2Div7ItcLp9LtyGIkJxmzteA059EjwHoO6f7wnN7iv5oy9IN63iJHtkhtuVB?= =?us-ascii?Q?EzBzB+aKhGeSJM8v/HUaCnTJCIIhs+EskUZyyDVy+MiCwM5FReKDg5YoOaRt?= =?us-ascii?Q?kROhN6z67HwD+MAgfXqsUGU3rM/m36oJqgsVyO973MNwUwfxYQBZU0cKYsty?= =?us-ascii?Q?nuBMNuMhpF4vLFyVrbN5v22cSVXAfnHwBC8I4eYdO7PaqkYGIlzXolZN1pzf?= =?us-ascii?Q?OWHeJeAgbmt9sBsSBYK+Q1Pvx7BkXdRx9gUskPkqoO6OC4hzRQ=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)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7951 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU6PEPF0000B61D.eurprd02.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 37b8ff05-8273-47f1-7b59-08ddca94318d X-Microsoft-Antispam: BCL:0;ARA:13230040|14060799003|35042699022|1800799024|82310400026|36860700013|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?WvmuyuvmMcTaIZgSa70VfvIYoC07Ucp5C/2q4hAQognKO0zn5LzvD0ky6I/i?= =?us-ascii?Q?L3BoNrrYCAcarceJQTQgO09TXVtr+CogJd9j3svtXUog9RHOr6CVJzT4d+oj?= =?us-ascii?Q?wRzjmd2OpDnzMJZsX94k7pXHdXZCrPoLX1+e9/edXFhoE2zzTDJsWKPGFwbz?= =?us-ascii?Q?oMj9XNdT98VL4WCAco8rxSo78/cKwDOxfwgwuJzbCNfWu4phW84OYki7Y/xV?= =?us-ascii?Q?p8pN0FVSIN5aqVgBXzRTLniK/ZkFNi/jLoHrejdcwyn5dR758yJRjpSteLli?= =?us-ascii?Q?/mWmpIve+yDd90BqIqb254VmJrAnaqKqtzqTwJZYRrv8TiuLt/I2pP8NvvPr?= =?us-ascii?Q?scMf8IFni1c5bDGgIJIOjsMtKzoj+ZPTKM913l4+T6uEHLH6aRfkSV0QjoBb?= =?us-ascii?Q?ditBJVIFVTzpySFN0QksNzYUzUMnG1UiFA2OEmT5K8Jhe2V6YR+FCAti6KBO?= =?us-ascii?Q?WiPxDgjXuWMqA6kvd6kBz13QtCHdVCW0ojHdpIt54M1sI3pV+CJxEniiILOb?= =?us-ascii?Q?yKEIcNRYk6MgcsQZ+3PbCjhCo8VlkDh4c0Pu20AVD3uSDmeKoQ4eY+6yKLLh?= =?us-ascii?Q?DLPz1crTCVRuxm8xnwuwDwF4DJlslcBK2PVxj0PRvf9rrBairXfXlL+p3H9W?= =?us-ascii?Q?QBHSAkmEJGezi6FIG3yq2IMD+km5wkV20VJVaIsirz07JCQvTXZafKggvrVj?= =?us-ascii?Q?lpOS/dr217gS5MXgKdo+br/g3NqBBN1fIQSIKQb8xWhx1zDtxK0m2OMvz1Y3?= =?us-ascii?Q?Ki1mJwvLfGA123b6oOJLeqS4yTRlsH0hvHIjUMbbbAv5rR92iI/W7iE1FEGT?= =?us-ascii?Q?JKHubsnkM7pby8EEqFDdZjfYBkjp/pkptu+LlVm9NXGwfn7XkV6su1IIoBp+?= =?us-ascii?Q?Xs7gkYHZFqjFI0jCnMrU5L3d8Lz2TcGW6eKCQxMHVcA0oKKl8XvsMlLMcMS5?= =?us-ascii?Q?dQCkI5JBl3EE9wTS7M+lYDcim/oLdDHTT5oX6cYeQXtvivYjExw3m25NFs5B?= =?us-ascii?Q?astrt8+GVbTx0nsP3tzNr7aKuLVFE420qXv6rFgwkCz8EFj74t9d/1E4CucC?= =?us-ascii?Q?6fhbdnKadHETYswK8k2verCniAIOpyNnQLExwXJYo1jPU8Gm/J/WMyAo5Zaj?= =?us-ascii?Q?YNLqcUc3kvpmdNB3g0gmLt1GlBSxYtydslWmcOLTFVWdeEI8V0f75g7FBm1d?= =?us-ascii?Q?cO0fwMP4i+ziAQNPrnc61wt28vCKSSOsmN6UqOEKH9lujrCBUPCIyykH/eRy?= =?us-ascii?Q?KZaX+wrntfAid4tEP2+J2df37HC0zCo+FL1+jrIwzVoRwgrgobtgOO2vo3Ag?= =?us-ascii?Q?C1ad1bLycZcxTtMHLToAU3y9tQQdcQS8GH3+jXv6if7xxUdhbxM9GxByti/T?= =?us-ascii?Q?NeybR7obWnDw0yeYcaQq0VyotGM9kfwFCeLAk/9tHsK0k5tdDqHKVsJvOa9X?= =?us-ascii?Q?aOscrIPaG6CCC1+y1f7mYwKZUOCKScMJDC5+0THvNgMRh4hXnGYbkX+dlqsE?= =?us-ascii?Q?WSwdOVY9rBXqFX9Bub3C7e3jPy60lLyMCLxQ?= 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)(35042699022)(1800799024)(82310400026)(36860700013)(376014);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 09:27:11.9452 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a1d34ffb-332e-445d-1f36-08ddca944524 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: DU6PEPF0000B61D.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB9449 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. Reviewed-by: Chia-I Wu Reviewed-by: Liviu Dudau Signed-off-by: Karunika Choo Reviewed-by: Steven Price Tested-by: Mary Guillemard --- drivers/gpu/drm/panthor/panthor_hw.c | 61 ++++++++-------------------- 1 file changed, 17 insertions(+), 44 deletions(-) diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 3f7175cb0ab4..f39010c0ca86 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -5,39 +5,22 @@ #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, \ -} +#define GPU_PROD_ID_MAKE(arch_major, prod_major) \ + (((arch_major) << 24) | (prod_major)) + +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"; + } =20 -static const struct panthor_model gpu_models[] =3D { - GPU_MODEL(g610, 10, 7), - {}, -}; + return "(Unknown Mali GPU)"; +} =20 static void panthor_gpu_info_init(struct panthor_device *ptdev) { @@ -68,27 +51,17 @@ static void panthor_gpu_info_init(struct panthor_device= *ptdev) =20 static void panthor_hw_info_init(struct panthor_device *ptdev) { - const struct panthor_model *model; - u32 arch_major, product_major; 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", + get_gpu_model_name(ptdev), ptdev->gpu_info.gpu_id >> 16, major, minor, status); =20 drm_info(&ptdev->base, --=20 2.49.0 From nobody Mon Oct 6 06:31:20 2025 Received: from AS8PR03CU001.outbound.protection.outlook.com (mail-westeuropeazon11012030.outbound.protection.outlook.com [52.101.71.30]) (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 1825628DB7F for ; Thu, 24 Jul 2025 09:27:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.71.30 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349244; cv=fail; b=P8ahYCByoxVVJvn81Qi9tK4ayJDPjfB7c2dRdVY+GLcmd/F2kLFVIeMsCiGh50+afFeLuS3H9a1Vwy/yVXZ4ZqvC8FnK9yaemOlQclKd30eviyTiSQGSSFOqfbCChqXWj0BQrxlfliis6O4oTG6jVVtucjGINGnioQevyEhnxrQ= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349244; c=relaxed/simple; bh=85uK0Ko7Y+Eyxvjm684uSZ0FMl4hfSSrWFU8nCBbiWQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=GsjCbBNyDT30Smh0/Ci+3wEVmJKhwCPIZwNgzKuy2DDOT7YJMeJoUHVu1Av4W/H35BB2hPxia0HVaCyR72UJC+jo1Yqpj27oaJJfa8Cwq+uZZoJzYouGtCiZZSA6+jzU+MY4z5rwYg3TbYnnUUvcUUD1Oy7mD0xuHV88iZ0BMZU= 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=AzY5ceL+; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=AzY5ceL+; arc=fail smtp.client-ip=52.101.71.30 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="AzY5ceL+"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="AzY5ceL+" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=bm/7UBymKn5TmaVLdQEcG9c1D/v8BTMBmvkHzPFeN6Lkhp5BKah/s2jUluNO6q1iPvewJAxYYgLOlzwMDkKz/wUGbK1jzF0P79z+VUWEgUndIYGb3/gZwIOALlI98n0uhQl0UwAdw3nIp5pyek+SvLPKBek2ay+j/Nxf8mB8A0Xb4vXHn4obY95QVIEZpPoKjd/9zjXty39ox+E6pvxwSIDHI/tN7H5AgD4nJabE3Rsi95zL26JvyJm6hLm8U8kHhVFmjxM0QvFTgz9nYV5MFtDDycWBIJlCl9aOMdn0dHTO2jjjn4gaUtCRUdyHHwI6JwIjHsv3mdDi/aKI5A3J7w== 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=g6IcXoG+Eb1wXVLOrZQ2v3H5Vyxtj5WK1jPnoYuUzAg=; b=FAYUfp308bFBlYx5pwHbrwEkbEQIyvx15WTC3A/58ChkYf9bKopCU6npVFEWpgQVTPRzNfCN+RmOZ54r5bCNXtGILJ6cY5/aJEpaAczoTD2vjmUabCbstJLPzsuW3ceyrJUF/br6pPrmUTzwpo0o8PqgwZdH9sQ2O1u6nreM+Zc83yPf4PQtJrlyJOBSTeSmkIFXKRCLrqDeW3ineluen4grIiM7Ec9yGlV7XsrAgNMJPuce3WLKM1rYA7wExwTnHbKd6qDzWEC1RnEw2inPccrX4gYt4VETn9TF/UK04qnKjQvtOMNWwH6ix267ZTLYchUB1dgkXADx88msvP45HA== 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=g6IcXoG+Eb1wXVLOrZQ2v3H5Vyxtj5WK1jPnoYuUzAg=; b=AzY5ceL+qTL6GUIoG6UjNUGSWDg2H9KxkuKLmcvAeN8hFc1lfEoXWOESe46GE/DXNS03t8ehcWVn7j87dcIPD/27w4dtPqX/5cRMmgsMJV5xnGjpD5SVYwnD0AKGWI2aw4e8W/qy/1YucnXUnQ9I2tiS49+JMYuo6EAQIDGE/og= Received: from DU2PR04CA0257.eurprd04.prod.outlook.com (2603:10a6:10:28e::22) by PAVPR08MB10337.eurprd08.prod.outlook.com (2603:10a6:102:30e::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8901.35; Thu, 24 Jul 2025 09:27:16 +0000 Received: from DU2PEPF00028D0B.eurprd03.prod.outlook.com (2603:10a6:10:28e:cafe::53) by DU2PR04CA0257.outlook.office365.com (2603:10a6:10:28e::22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 09:27:16 +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 DU2PEPF00028D0B.mail.protection.outlook.com (10.167.242.171) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 09:27:14 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=AHZ1j3CmmFLuiRy0Xs3rQAk2781rANAoQE/SIHMhVCZpDIUwA5IqXHqp6F37KBaNFm+lpivYFsMFLkskGtY2fqiyl1UGIGMpaCowi4JUH35uCHwB8RW+sHVStFaehXODDH9/2itX084fiQ8vYghOVR1uojMQcvBQ7KgPl8Gmo33eHbGse6IVSrjtkdGtCdUMZ3a1frkFqOCW+6E91N2lddFOd4pfngkrsqOrmok/7xu25n8oxQcuJb4ocKGSMhtjTFTCpu9/rh3yjY+owcAeRQsr5n/1XJTh3i2wzB+DL54J2lb6npb3wlqs4efPbsF3yXyRoy3Grf2QSNoSWz3+nQ== 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=g6IcXoG+Eb1wXVLOrZQ2v3H5Vyxtj5WK1jPnoYuUzAg=; b=dakqn0t206RIC6n7EkD5hKeOKHTcIoYTWaLRK2AlWg0GHtNVRb5iBgGw7Zfm0uqRlthMLcoIAfyKHxnSjwU3VKJ5YQlbgpBv1ioL/i9Kg/e7WJM9FQFU8dLLZdHQ5GpGOasC6mq7v4b2misueWXH+Bdw+wfKE0uKhg/bySUswaaWo/GnRmZk7yPID5Sf5N8l71tCePCoLQJr+6j/ftpAH3UmuSoo1ziu7uFplC+0YJhuyM9PPMt1tozsA6ENCtiF1zV5tKUFemV+GBzvhzWps1K/Iq2ks4caXCgj/mmSmxDQylL8p82TJBf7XkK8fOa4HxRexlsj64DtNMTa+li0gQ== 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=g6IcXoG+Eb1wXVLOrZQ2v3H5Vyxtj5WK1jPnoYuUzAg=; b=AzY5ceL+qTL6GUIoG6UjNUGSWDg2H9KxkuKLmcvAeN8hFc1lfEoXWOESe46GE/DXNS03t8ehcWVn7j87dcIPD/27w4dtPqX/5cRMmgsMJV5xnGjpD5SVYwnD0AKGWI2aw4e8W/qy/1YucnXUnQ9I2tiS49+JMYuo6EAQIDGE/og= 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 AS4PR08MB7951.eurprd08.prod.outlook.com (2603:10a6:20b:577::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:26:42 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%5]) with mapi id 15.20.8943.029; Thu, 24 Jul 2025 09:26:42 +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, Chia-I Wu Subject: [PATCH v7 3/6] drm/panthor: Add support for Mali-G710, Mali-G510 and Mali-G310 Date: Thu, 24 Jul 2025 10:25:57 +0100 Message-ID: <20250724092600.3225493-4-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250724092600.3225493-1-karunika.choo@arm.com> References: <20250724092600.3225493-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO3P123CA0029.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:388::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_|AS4PR08MB7951:EE_|DU2PEPF00028D0B:EE_|PAVPR08MB10337:EE_ X-MS-Office365-Filtering-Correlation-Id: cd739d8f-b9d1-4307-8e7a-08ddca94469d 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|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?WRgj/COjWN/D16d4BBtC77G97ekmHVHs4dGR4YWoDrmLGTWIAOfCzzkgKujC?= =?us-ascii?Q?WTplKIa3SDCQpnT3OA00u4KSF/hYcjVx4bFLQjEHZglbvbWclzGGud1IyqBb?= =?us-ascii?Q?qkGAzE1sz6nSW9LNIUgK32v2obw1tAORftH6mV4Z8abZUP2BHmZGV4K53iri?= =?us-ascii?Q?HVNtEhq6oSEBDYuDcenBad8vrSEcFlwgJD4ZjZB0sqE7sHx4hEVmne5bXfzu?= =?us-ascii?Q?w8WTH1o+h97X4xwxg5gN+3zNvZ6fCDk9e62lSTqH7yw4xS2aeJUy1WzyrNv3?= =?us-ascii?Q?Mn+EBET+EHG+AI2sD6ZbVT+Yau7KFploHkahNz9hRKzM0KdvsXOOGEKV9fbp?= =?us-ascii?Q?DeICsb7B9dhhQEVf5UpshpC4SjkYMOuPLWUjpnY+TSpeeW9xRZiugdhgzWkl?= =?us-ascii?Q?8jyKxB/Iq9aoK3Seco8wOCZoqum3+Nlqkq+S+Cn8RLf47jMxzQV2FU4p5oIh?= =?us-ascii?Q?DHvaG3ZOrhEFw7GkAe0ooxPlwnmhy7ukAbU3BLzeHG1aGMv2kb2t1PX/0tZS?= =?us-ascii?Q?zCX99+sSelzjiN5c3mxO976RcnIL8Se0hC62sYwMKqCT0iDDr8n1Qzjy7+xe?= =?us-ascii?Q?F5GFtsrucOet6Q9egGct8iDPBpP1sdB7aDocbjBXnxHZHrSYd90bJH2CgfP6?= =?us-ascii?Q?7h4uJuy3d0V7e52jHrh561OJJVjXCM38W0iwCiwtB50gJQzEmqQm4FCffpWH?= =?us-ascii?Q?VHN4zGPPxJ/sBznj6jF4JZBmku/i7xhZWMDW5DEItOhEufcMqRbNMQUw2aaD?= =?us-ascii?Q?w3agOhs7kkToHUjZ02in8lw/BO9z5xhSAFCzsLxNFOzbGjkHELICM0rJapyi?= =?us-ascii?Q?vJErH3IRrgqCi1pnehuadlIe/LWC0AUdQ5Xe07GyqdGtQ67hNvaeB32fW/3O?= =?us-ascii?Q?ESthxh7lNujt7YAUsHh/E8PEiyU1d7wAfUElmLFbUH2BvITJzhoqitO0H+6B?= =?us-ascii?Q?dkSyNEjDbyJ0c/BSEUDBjmnHn+sAjCgMqjM1BhRExwy2szQA9D+rczCEWwot?= =?us-ascii?Q?iI5OoLx6/yW2nVGndD2JZ13sgmz+Dr9ykwezVZzIS6CWr+JoXbVxhPx88hWH?= =?us-ascii?Q?fCAsz1AU8Rm5I3fanELylpouqFDuf0Nlq7CuKW68Z+OOdb67ixYsXWT+hsLc?= =?us-ascii?Q?aXoW+PD6krTSv4XVLErqUyDUaa/Cay19DpN+5CvjTddamlY7/bWPL2XDfH6a?= =?us-ascii?Q?04Vc25iv/xor0J0OKQZQ6gQVGoLQXAxe5TTOFWQAvDxgvftc5cDNNygKBtGb?= =?us-ascii?Q?GgUxsc31zJ78ie4WRXLvtpfxqgVHWQ5AylS1kbe3ZY3pnxUjbA9rWM1/tzfu?= =?us-ascii?Q?+zTy8bvROeu2qXq3WM3DX00tM1dKG5rEA6NzXXrWmeCAFVrktuFVtvDisu5E?= =?us-ascii?Q?7aLFGcNUhBUI/tMpDjXX19JV8684lmKlqDGXY2IkOdfWp5IFM7oP7LV6QViP?= =?us-ascii?Q?MMOQSkavMlw=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)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7951 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU2PEPF00028D0B.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 5810ae9e-cde3-430e-d607-08ddca94330e X-Microsoft-Antispam: BCL:0;ARA:13230040|36860700013|14060799003|376014|1800799024|82310400026|35042699022; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?VxdMIKqfTPQfZ5EzU/PJXFLVcnRVQowCJmkxtK8jYDbd9Kl1U4rltnQzivOv?= =?us-ascii?Q?3RyNmYqmS16hUCr0paSkoCmilsoPxWaZoENQ9jehtDOcH+2oQky2BZK6sIvO?= =?us-ascii?Q?gMLn0rWBpfyHmSw4ih2vEmoCB6ijkhLZUk/ROqHfiAjPUL8bCy2hVit4uUfL?= =?us-ascii?Q?Ho0IcrTTprhit+ePeTnfhJRTrp7h2cbUSQOQLVCDVJcyABYgTwdvaUV/7vSA?= =?us-ascii?Q?G8wOEne1nPk0BQvrXVDAWuiWwwLYoJbYrO315elxSvj/Q5grnBN0/4bbXtgT?= =?us-ascii?Q?okjyc8S5A4rHPGb8uQ5u3JZiTZbT/FYDT+EKW+BWbRsCaq3zByyEmWBuTSZv?= =?us-ascii?Q?NINPMyXcenlyS+Z07mUfuCNHkWtWdPi7VCpgPhb61jNHd0Dv1cvFjMVM8stc?= =?us-ascii?Q?FvsHv4r+6036IpIILThN49PJ6/i0IC6n3ha2sO6J8ZnWs6SbvTjIPvNf+Yk9?= =?us-ascii?Q?F5uzcVdyTEJWCHxA9fKNVNjUeWVZglrysvEm2oJeoXE5SsE7VluNmeDebfZ+?= =?us-ascii?Q?M5BqeVTeRu7Q1mzXNJ71nNM+1o5hErYp6YX4t7NDhxFzrkLP25Dp5xd3I4A7?= =?us-ascii?Q?mnr2uGqtU9OpjTue7xGZ+QtdgvFEp9CjHUzozh7T+82JTcYhgK51z3GQGsd0?= =?us-ascii?Q?b0BIZbYwdWPdlL/s/TNgk0tX4SOWDfejKAC5lr8kcLd7ziRmXZt+E3BDzGXW?= =?us-ascii?Q?5YpyGuK9LKGuVXvhixEgXHasNvpwududT/C2QQNXLl/AWhoM+TkHZ2YuSYSR?= =?us-ascii?Q?cvME9VoAQnoVbhKvsgcuFxgsHC5OU6OWHxDOIyDeh9jut6EIElA4ew/74HRc?= =?us-ascii?Q?MDyeODqiz/+gYlLr0CbgVFwQTQpb11D3ILT4vI5YxYlgpxDALTnVZ3HmyaQ9?= =?us-ascii?Q?f9Y4yvi3W31sn7ANc0+UlXK93wesCLX9CuopCbRwfH1BzKnwOQYb7F8jD9Bw?= =?us-ascii?Q?nQ6zR65DFNpk26BeENIFMePLp4epzSQOYLZEs6E50+5R1snIU6zJlZtWWeE+?= =?us-ascii?Q?uLj4ngiK6Kg3An2A7bmV2hS4thbawpMA4oRcfRQKEejjxDrysXQXX/lIp47F?= =?us-ascii?Q?G+/85JEGGOQTGzYbNjzVlkZqfiV5J48/zTJovOPiC4w1T7D89H9xItQFffYR?= =?us-ascii?Q?7m5Zk/mtciCO8j71/7B1ea8keWduwwaG09imr6VKKd5e82PvH67l+AB/cLT3?= =?us-ascii?Q?QXw+8kHG0dj0lccxe7mNJOCVRUxTYd0ShmFYbY+7kYMMmUE+LEUbIZMEc0Gn?= =?us-ascii?Q?MibfIZr3R31Uc/BvSIPpYWeFPJ5cRO8E7PNyVwi7x61Avy7A49pnhQa0WXCT?= =?us-ascii?Q?797PTmzMJdhPDTuPcoMwQ1NjL9p16Ia9XGzQwuPvwA0zRLcZ3+YRkPcbC4aX?= =?us-ascii?Q?sBQ6SRiB8ui6B8xbMsJQsitYCGya0akBKk1UwFsSBZGNcL2p96P/KKj0DYdm?= =?us-ascii?Q?za7s5jXojsVguVsNw4Fx9isbQ8CuPFZhO/t1kpAGHgBjFkXlZNhrYl9i9aua?= =?us-ascii?Q?Ls8gsDYEtaQ5LGDaa33VTzi2KR/bWU90olEa?= 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)(376014)(1800799024)(82310400026)(35042699022);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 09:27:14.4191 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: cd739d8f-b9d1-4307-8e7a-08ddca94469d 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: DU2PEPF00028D0B.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAVPR08MB10337 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. Reviewed-by: Chia-I Wu Reviewed-by: Liviu Dudau Signed-off-by: Karunika Choo Reviewed-by: Steven Price Tested-by: Mary Guillemard --- 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 f39010c0ca86..7f138974d43b 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -15,8 +15,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 Mon Oct 6 06:31:20 2025 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013057.outbound.protection.outlook.com [40.107.162.57]) (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 8E1C928D829 for ; Thu, 24 Jul 2025 09:27:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.57 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349254; cv=fail; b=AyQ3hArcN+g6F5sxtXmi3wm4khVx5A1wqCxqZymwvG1KckmmOgO9OuL7gROTFwn8fCjk9QUvvGM5ttYJj5kzHNBQ/6xdtO1HH+JykeZIfmKp5J3SJms+FrwcJwpkovPSBSF2OAfbTpesyN5PscmHeWMaVa2fv0E7Df9ltzpLlY0= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349254; c=relaxed/simple; bh=IoOpsTC0EMn+HrvHtaxqxYu67YjbhO56Jgr8Ys7JLbs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=DmsGPiEXG8VsxbcHPKd7dwozgCFHJm2lOlHHMOjNSexLXXTn4O3mevMSKzrzVqgxz0QrSVJwkgz7Jv3jx75jcma+GKkfEeJxcVtXNHtqx69Et99T/+CoHWSilng8phpzw2TdEeiX8OCSB2blCiu/NnoanuFY+ONFgH91vnHTfJs= 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=KlbQeYhC; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=KlbQeYhC; arc=fail smtp.client-ip=40.107.162.57 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="KlbQeYhC"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="KlbQeYhC" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=H4cupwyUo+UV4UzTOfGHQZYbZvforFquByAWbwTwbgAn7N7N61l3JXz+mmlLP/Sbyas2jfYvSFjndm/SSrf8zKKjk0oDmj1JC0ywbuQmhZBQND+7z+1owN5VVc8iBpLwvTfBs9uxyr8zD3yAcOodUYTWy/u+24Oy+LHu4+xCsUSW4g2JXWhxVUQBNnyufvgkJ/cY0VQoG2Ph9rF5yGsK4kTKDIN7MmDA9f/wBjmja0nS/OQxh6BI8DenqFHNHGuyGBf8VRmzpWHiaD75lpf9zMfFmfLIHB83uLK1Bv22u2/2AB8FKUJWZjPPIhZL3gzy25YdSPzvBhW+WgRnskrtkA== 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=5AWHMCYucFoi7FnrnNz97+Rs++SFBNhGj7vOrY/sowM=; b=P/pBHtXAp405DvrYmYNvdaglnWL/tArtUckZoDmJpb+pnI7/7TRNMX1kQyoTtIy4T3txHNc9oVu4GKdsxd3CybALzSiRh1NyTMGr0qp35lZlENb1IOLUqJc9lpEVC+zyJsCiD+ahp4N3BCHJBvXPn2967NLS9Z1E5PBg5oumGGJ/Bj0+FbZU5Igry2NFL43VOadoe3l9Jd4Q7Ph6tgIXiToKG4U5+p7R9fj4RWYlQvLUT8DZl6bVGSrIRjK5CDtQK6ixxQkiTrmtKvp1ocs48seV6bgRCn0u5ri3BqqciCYkihWO5m4QDZfXWcKx5QAc4r3hGyPZNE7t1jsTsiorHA== 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=5AWHMCYucFoi7FnrnNz97+Rs++SFBNhGj7vOrY/sowM=; b=KlbQeYhChO6T33kUQmZJSiTAeoVGSxt0fCsmW4wGPJj1gSQzp9FITM4+/pGB2ApBHHK42mNLT86GKXoOexYJcjLCv3XR0Pj61DSjz5gfFfA3fHya0ml/WdoJ0HEw8+bR5Bba0ADQvt+O5aMmmYevKyYzp1DlmD+j+iARBM/bM8c= Received: from DUZPR01CA0298.eurprd01.prod.exchangelabs.com (2603:10a6:10:4b7::15) by GV1PR08MB7378.eurprd08.prod.outlook.com (2603:10a6:150:22::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.22; Thu, 24 Jul 2025 09:27:20 +0000 Received: from DB1PEPF000509E3.eurprd03.prod.outlook.com (2603:10a6:10:4b7:cafe::b9) by DUZPR01CA0298.outlook.office365.com (2603:10a6:10:4b7::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.23 via Frontend Transport; Thu, 24 Jul 2025 09:27:41 +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 DB1PEPF000509E3.mail.protection.outlook.com (10.167.242.53) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 09:27:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=LLrVwsgPM572gd+k4Rj8boEsBfelCg+ozwsalwS5NZ9OPXEXZiL7GFtXt7/vVpsexXHNwuTfsXr7oTISCP1V34LjxjR7HkDfPykmofx0SWOBAUFw0SXk8bsL2z3KUyJXO6bGb3j7+FNfwvYvHGZQoJ91YTq6JSJy12bo93oItj4IobiIOHIL+jnXYCilJJD+pr34TWLrTbCsw45LSoH44Xy5yWIMpDUxVkx/AxQ7GvIE1CX5jil+b0Z/6TI4gvRYqcRUEwN+E7wBWhjJhRVSHXlpfnMowxkzzj38QOyvMnYMTg57HGfrCjl5WRhH1zlAM1hSoJJgDtK4EiLxeMIQmg== 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=5AWHMCYucFoi7FnrnNz97+Rs++SFBNhGj7vOrY/sowM=; b=U/1vntDio8FRt9/yPM9tUw5UEsqtHwvH1iumo/sZomp5UkYQgXAVJYiqSb2b7bBtBJjB8NP2VtvN+INL8Hz9WRjd1KQUU18AVJm+0SwfI0X4DeH5qq+I9NoFjf7TQM/spox6Xv6LLVtOsdh/rsAfsLMsJVViW92vciP0+VQTbX2ftxqjrRipH4Q4wwS0hJt4QPGRw77PU+GyfU64s1C8QaOO9wLky0D8/V3I++ut849+l9C6keHQT1WiXyGDRGhTds5Pd01cc0rHcbowWlmUEia+nugQz6LS58WTHdlMbtmiCbdAQcEKJG7UrDaNFdDxAR40Dfc/4UAf4RMXorqXBg== 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=5AWHMCYucFoi7FnrnNz97+Rs++SFBNhGj7vOrY/sowM=; b=KlbQeYhChO6T33kUQmZJSiTAeoVGSxt0fCsmW4wGPJj1gSQzp9FITM4+/pGB2ApBHHK42mNLT86GKXoOexYJcjLCv3XR0Pj61DSjz5gfFfA3fHya0ml/WdoJ0HEw8+bR5Bba0ADQvt+O5aMmmYevKyYzp1DlmD+j+iARBM/bM8c= 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 AS8PR08MB8418.eurprd08.prod.outlook.com (2603:10a6:20b:568::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.30; Thu, 24 Jul 2025 09:26:45 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%5]) with mapi id 15.20.8943.029; Thu, 24 Jul 2025 09:26:45 +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, Chia-I Wu Subject: [PATCH v7 4/6] drm/panthor: Add support for Mali-Gx15 family of GPUs Date: Thu, 24 Jul 2025 10:25:58 +0100 Message-ID: <20250724092600.3225493-5-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250724092600.3225493-1-karunika.choo@arm.com> References: <20250724092600.3225493-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO0P123CA0007.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:354::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_|AS8PR08MB8418:EE_|DB1PEPF000509E3:EE_|GV1PR08MB7378:EE_ X-MS-Office365-Filtering-Correlation-Id: 58e2e13e-4493-430c-d464-08ddca9448fa 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|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?gzg9LJfEnAZEyiKM5HnQbytrgzR9VEw/70lb8MTAkHVobVHzzB538m0FOSRZ?= =?us-ascii?Q?pK+D/9vtTai+t25S3hIlqlFWRkWnL6LTfJUU/8iplwAiZZ/exJ6WhXHcv0lT?= =?us-ascii?Q?aTcDT1WaEnWomwb0qAu6HI+pmB0SI4QdLLPs2DVXOU78M/YEDqWOMsDe+CKX?= =?us-ascii?Q?GWIanIiaHyaqvmqs7wvnWJPaFoYIWrLk75tc1zOA5eFNtHYknrAhFPQtl3xY?= =?us-ascii?Q?7gwsisxnt7OEYSU8O+sRAmbNlvGnYg92fZI9IGOH37RPWonxYoNXvUUYy4GK?= =?us-ascii?Q?HK9bigAcJKHmM3R3/sFNVPAiuMjERcH4a1Fywlku1DcZ1/cBEbRKLAZYQu0l?= =?us-ascii?Q?WnY8yojMyZYjks4zAuqj6ciUm09oMc+spZsiaoUikAHDUyQGQqq/7lPV859U?= =?us-ascii?Q?cVYs5ZZBVRZgc5y9EVUJpXj+7fkKaRV4QVgn55oIzOQM8AyNrGr9936MEtvA?= =?us-ascii?Q?gxI2kkxuvagb359hvr2z9s87GvfSuyPiSAWlSt59MrTyYN4YwY4z4gjn6IoR?= =?us-ascii?Q?HFm2fFc/6Y/wnQ6RbBY8+UHyok28VCt3s3P4cfaPH1FirfhhPMMzEAMV4hHw?= =?us-ascii?Q?HQGaGsJwYoq0IaM+k/3/PZ7mZe+7mx4HmY2DdKQAkDhda5ANUccir7hHdJMm?= =?us-ascii?Q?g8lRbL7+s8Y3KNqTi811RgJyG8N4Qni9+THRPx5Ux3nHV0pkHtzn8zyZ1fjU?= =?us-ascii?Q?eqZGMQ4KsE5BfXnMiGmvQCl0p9xJRA/sil9ok0GVnUklpo3uNX4K/BiY0/mk?= =?us-ascii?Q?CLs1qYD9Qi1ka8med3rhebDyBLVMO1ciw/dSjLlugkeg4f6/UgoRXC3gxKws?= =?us-ascii?Q?1y5M2MO3w8WBQGM1AymhZl2IC1JviBhKZqdRYFIpFarErVJ1wvex8yBPcU0w?= =?us-ascii?Q?ls+yLmFTlAQpaVqZHVFSavxmsfqbrJqi+dCgkH8qh1T8UIYsRmM3iaiBThd5?= =?us-ascii?Q?Cz8nTP8KT5WZTP4Mnm4P0yXySpSqKwrAhpmku3w/ZUmepeYCTHY2QQDG9lqE?= =?us-ascii?Q?8Xp1ETXzQUlqw/pXgqktBMh0LhXIklVoVTVwZliDwFbI/HUpr3Mt4lP7WYZz?= =?us-ascii?Q?cLv5h4Wb+ruxgaoTRF2RW6eIQZNb5kSQYJF9hooE+L6yqbM9ca8XKUbQaY9e?= =?us-ascii?Q?+/S06ptjNuRTZ/0f5gqOrn3h4ZyjBoYMscho8DQfJLLLEvf0LKxG/CSKaCV5?= =?us-ascii?Q?AU8+CzssJLLo3gXxEtq/nbhl9Tlppt+w6J0rg9ngNAGhIgDDCUXZ32jUSh2g?= =?us-ascii?Q?VrnlC4r8JVj7g4rRKokB8VMYBFK1qp0VR7JQ7THpiMAbvJWMkvz3xmTGwBkA?= =?us-ascii?Q?qbbQ5rpcUWVLk/VoypKAu9dKMXgtioA8/gH7RxxAdMdAvBBS5YLZXfOSAoEK?= =?us-ascii?Q?M9JgmRRIgPU2T/tI+aBq/ok0Os/bL8/2Qv660q7tYf7nZiImYg=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)(376014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8418 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB1PEPF000509E3.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: a32e5b25-1eeb-46ca-12fc-08ddca943547 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|35042699022|376014|82310400026|36860700013|14060799003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?hXbBPmHPC3uwP7JQMjnW++Ny773+P0vIotfILDxgQwMOhZRKLkQrrkdWFciB?= =?us-ascii?Q?L3o5ot/cWQ2nkK9PljREPS5mQ9hVZ0d5IYu6SyDplTdvA4YMle8GIQUBkjFo?= =?us-ascii?Q?DUA3tofVJiuTB1uKNfVeCZ8cdpgcmd8ZSdBxIDU/kr2vo1aPQOeb8Z4i+sud?= =?us-ascii?Q?GxyQo1/UzdAvt1XXBCtSMDAm1hNkbNeJgBag/ImjbmrCZXF0YbWQ5+jvr4iq?= =?us-ascii?Q?YLXqvTLu+yDAEnqrSNApVb/lGv6pp5cAcjhEjy6Yl9IlsbjAsulmIYUL20Id?= =?us-ascii?Q?rANLXoWzTeD8LUCPtHTgtpWwMX/fryWk4FkWBkytfb1YpdkBAUd/fou7GtRS?= =?us-ascii?Q?5w7t/V3GRcZjlOmc3/7iQDA9gemZjXkhO9RJjFzXwHMy9y+C732aJWQWUCap?= =?us-ascii?Q?g9Rk1FX/sepTPYbyxeEfoH7wsR6oWaZYI8fPkPZxA4aGbq6yt7lS2vCdA5CQ?= =?us-ascii?Q?H0ZxHQaXn9hDryhPBlYdyppbuGD5yF+zQiJE7qv6uiBvmMc5Dnt/imF3L3QO?= =?us-ascii?Q?wJXt8lo1kuPgvbD5WK7nuikKa4caWmHQLYPAq22TqMDcP0mMdRXlrwpq+9AG?= =?us-ascii?Q?s7i6wlvY7lR7bKK9zRC5bPlEr2NiUlkUiJ/TKYJkYJY01zletqMq3j1+glkP?= =?us-ascii?Q?5KUygz2Ap1mIY/9Vgoi3x2dMBm/TgnMvj6cXVXfT32SDpUPN8JW+2iaO0pul?= =?us-ascii?Q?dt8zDtNS2sAy0d+/7BpIuIZbKZczjDr5aeiGYva/P/cTFEZ7KF6M+dcb7ntZ?= =?us-ascii?Q?GXsdAtyVhXb0kRkfLg5hjAIEwsz47wyNjyyPuN5Os71kRb08XQuPetl7q/Wc?= =?us-ascii?Q?qvLHOTDr3ohpLLMesUf4jrO8kZjyHpZ8iuM+313z7F8MHeUtO4cEyzTpp/Z1?= =?us-ascii?Q?UrHEvayr27PLAYdBic73nPoGj3VQwJzHFre1I7ZHrFfF8vkrrhIOyqvejfvC?= =?us-ascii?Q?O3mzxDLQj8L4O9eaMLnMCoU3uv0xty+E9lJAaE2Ul+/AU7s7fAu+pArIqcf3?= =?us-ascii?Q?4Oy5t1bETc7ooyEHkkIk0ogut0ZbuK+nKm25hht40ku6/bgLPvwQFBp4LH35?= =?us-ascii?Q?XNxKASDPl+ToL6DuQkqlIMxz9QheOeZqJHDPC8h3No7LF+ZnJhZ8UIWSQRyL?= =?us-ascii?Q?iteGsBPH8XwS3Tdas/dXrN/lROygsxwca0KUUmd6R2JJJWmXFlYgCfZ2yJcT?= =?us-ascii?Q?Eq+O7b0Bf8/S8niT7+Uz265jDiC4q+ZEYqeZo67e2UP0865tI2TeW4oChBCG?= =?us-ascii?Q?2CYUEG9i621nyRfkPZ44Z7To3HJvrK7zjlUDby+8D9QEA9NUZQ6DpErhVDUh?= =?us-ascii?Q?vjIcBZR1cBqMnQG2kZa4bMMxd4uw/U9iqPrBHAejg2py8naPlt/6OlMPDhLR?= =?us-ascii?Q?ZidBhTdcVLnqi2Nr2K/3e7Q8FcOL8iPDU1hqRzIQcONKzxXVdGjDgq3E45KY?= =?us-ascii?Q?fOzzJ9msyjqpuY+ORjqIH3hvjWz0SHwzM7cVw4kXBRZ2Ooe7DkBJy+QfPF/V?= =?us-ascii?Q?5C+prHz4nS8erqKQPA8HpnmnGA9MFgrjIPTp?= 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)(1800799024)(35042699022)(376014)(82310400026)(36860700013)(14060799003);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 09:27:18.3833 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 58e2e13e-4493-430c-d464-08ddca9448fa 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: DB1PEPF000509E3.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB7378 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. 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 Reviewed-by: Chia-I Wu Reviewed-by: Liviu Dudau Signed-off-by: Karunika Choo Reviewed-by: Steven Price Tested-by: Mary Guillemard --- drivers/gpu/drm/panthor/panthor_fw.c | 1 + drivers/gpu/drm/panthor/panthor_hw.c | 15 +++++++++++++++ drivers/gpu/drm/panthor/panthor_regs.h | 3 +++ include/uapi/drm/panthor_drm.h | 3 +++ 4 files changed, 22 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 7f138974d43b..a7583342d797 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -13,6 +13,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): @@ -23,6 +26,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)"; @@ -53,6 +65,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 void panthor_hw_info_init(struct panthor_device *ptdev) diff --git a/drivers/gpu/drm/panthor/panthor_regs.h b/drivers/gpu/drm/panth= or/panthor_regs.h index 48bbfd40138c..8bee76d01bf8 100644 --- a/drivers/gpu/drm/panthor/panthor_regs.h +++ b/drivers/gpu/drm/panthor/panthor_regs.h @@ -70,6 +70,9 @@ #define GPU_PWR_OVERRIDE0 0x54 #define GPU_PWR_OVERRIDE1 0x58 =20 +#define GPU_FEATURES 0x60 +#define GPU_FEATURES_RAY_INTERSECTION BIT(2) + #define GPU_TIMESTAMP_OFFSET 0x88 #define GPU_CYCLE_COUNT 0x90 #define GPU_TIMESTAMP 0x98 diff --git a/include/uapi/drm/panthor_drm.h b/include/uapi/drm/panthor_drm.h index e1f43deb7eca..467d365ed7ba 100644 --- a/include/uapi/drm/panthor_drm.h +++ b/include/uapi/drm/panthor_drm.h @@ -327,6 +327,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 Mon Oct 6 06:31:20 2025 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011026.outbound.protection.outlook.com [52.101.65.26]) (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 B497F2D239A for ; Thu, 24 Jul 2025 09:27:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.26 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349248; cv=fail; b=XOPvwVC91g9kezE/wd8ZR/RWGix6XojsA6+qNpruSLtQuzH5QGMyWrmSGP9xSu33BeQLpbXa3TxX/7596yazjZ3Tf4kA/iG5oBSU3dEQNwyhLW6nqWDBmT8pMZSBU1e/5EPamGHH7uMr7+KNUIPPICKWYuO6/0LXy7t6wHdj8WA= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349248; c=relaxed/simple; bh=bNbbTQg3TlsFHEf/K4kAF9E/lKEOt7CNVZAPOnkkjFk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=G93DLKnepa5gYVFWLsyZqEBKDYBiBOl2FWqWAlyTfKUhygyPBT4M372+ZJiUvr/u+xsb/VB+u7/zCWkoZ5AYT6Qy5YI+473dFbqmcR7O8p7NFIrT/XifsszfWCfAIsTrpCXeP9fCS2WMZOHww1KF3NzksekI/Y2zt8YGsJTAzOM= 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=Dd+5hlW2; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=Dd+5hlW2; arc=fail smtp.client-ip=52.101.65.26 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="Dd+5hlW2"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="Dd+5hlW2" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=HiQ0ZMc4U1WpNcI8RAvdM2+fW2jF0AOKeOFTiZNAdVGHIZQmhMXdBlkkwZmdEGML2d30lfh1mcxzc4y+1NJmeIARCv8uXs+2wLtlfAClMPpmHNLZTlLYG+6nEdi9YjWi82swJrX3/ye2s1Zm7xCw9/h13f2hqSnElyGpJKwBWAsc63raMt3cKUtp/5pofApmDeRJZ/2HthUO97MvVBmAr2qdBECHd+udsDWg0qpR71WBTUI6qJYl9bGN1XRp9d3UJyMUtzf3nquiZbDOX2WsPU0hwhPXgXyEwEVyX4v4BZ79KtSxaSxQfMMIdjESK/OlPjbIIs+pjDbfySVL89CFDA== 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=7zGkU7u+kkxBDhC2MB5WVm8/okfaBVYFo3ojlSsu0bc=; b=sMhf+Osu7y8Nm163lC6CEpaLvKTFfwJJWWKMOwy7p+UyoIyeqUSh4spdg2p4YnwPOz87gydnoOXXtORevpSZDf2VJe/kFtxaeoGSloFWTpPBFeF/S0+KN0r4eA77ieDrrdgAdJ4L8EITcR6kWy6UrsR74PFaF7jxb30DzzQHST7vBKE1o+uhJOjT5oJFMDYfzq8wEDHidxDT7Zk0l9Xq9f0whLtj/MKxUVUf4IPPkW122TtCpdx+GtPTuhFv2uzROmY9KJsnRI0WaR/CO5ACgOUA3/QT/vDdd+Uwz9MF7mrkMUrQbZ0/RFjMfS6YPq26tuxINpFc9B8Z7/hQrb7MYA== 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=7zGkU7u+kkxBDhC2MB5WVm8/okfaBVYFo3ojlSsu0bc=; b=Dd+5hlW2zOLh1cfiiEkd3jtGkdW+kyFl9zIo92m1dpQFuobT5xIwRjQZJT78tNhoobumOWyYZgHqoZmSX5FOYijdYsZpa+KydqElI/VvMEwEsS8CWgUa9Zj1Zksj7dvIaZwWz0VPeZd/aeF1KnqvnEsLFPa7hZe02fkQ3ebbqbI= Received: from DU2PR04CA0349.eurprd04.prod.outlook.com (2603:10a6:10:2b4::6) by AS2PR08MB8431.eurprd08.prod.outlook.com (2603:10a6:20b:55a::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:27:23 +0000 Received: from DU2PEPF00028D04.eurprd03.prod.outlook.com (2603:10a6:10:2b4:cafe::4a) by DU2PR04CA0349.outlook.office365.com (2603:10a6:10:2b4::6) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 09:27:22 +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 DU2PEPF00028D04.mail.protection.outlook.com (10.167.242.164) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 09:27:20 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qfHlUb9zRy3OOoYsNDuFCzUR7Jo1Sh/ikQlBAroCE3xcuSa+co3fA9tJgCfHzSk6/VlVzR6Pb93ruZ+wIInojCjQomJTDvrpZH+U7XW3dgwUYaThyGFwi/Y3NNzErO/PRsaM4CrwT0YuvUiDnMSa/sx4/WDXbNGGLFf5vGbI0iOSKsMN2JFYqrh9EyvRUkS0/MjLfZR85R5I8E59r11D2GxpDrylXPFmVYaqwNUPetDZSWSR6DGN+vsmPblXhaS7S+HXGKMGpzDgb68UUUHDf9ySA6+oMdnExMfE/DKz1F/5ylLc3L6yNs7K9hv0GiiUN8MHNEXI0DxBTizWKrOk6g== 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=7zGkU7u+kkxBDhC2MB5WVm8/okfaBVYFo3ojlSsu0bc=; b=CqFZQ+QtIe1aL5PsO5ZwBNoR6CDqBMNGiRHin2YpFKL1LrHrvEUfLfy08NcoFMlGimQOXEB3iLzF5ZEWII11spFgTFv5DNhSdny/+OMdwWaDgcLzwM/nYnWqt/cSDPaDjQnjnOX62wXi7R/iUec4614v8ygYZV6kPRCkEGj+Z4av9gEdzDNEiKonPrzJJ7P2c5MsG3C9SA6hOfz+G3whb/Mi1eFfMDB++35f6FYoMx9ftXNz1gNZadii3eZNMt7BrQGJyk7OQvlBcXOy+XngDFOAAnP6OjGrGEJEoiJKZDhLbOA8jk4DxsTq9u6IcixWA3831IO8UWmYkqbHDXz7Dw== 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=7zGkU7u+kkxBDhC2MB5WVm8/okfaBVYFo3ojlSsu0bc=; b=Dd+5hlW2zOLh1cfiiEkd3jtGkdW+kyFl9zIo92m1dpQFuobT5xIwRjQZJT78tNhoobumOWyYZgHqoZmSX5FOYijdYsZpa+KydqElI/VvMEwEsS8CWgUa9Zj1Zksj7dvIaZwWz0VPeZd/aeF1KnqvnEsLFPa7hZe02fkQ3ebbqbI= 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 AS4PR08MB7951.eurprd08.prod.outlook.com (2603:10a6:20b:577::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:26:48 +0000 Received: from VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74]) by VI0PR08MB11200.eurprd08.prod.outlook.com ([fe80::d594:64a:dfc:db74%5]) with mapi id 15.20.8943.029; Thu, 24 Jul 2025 09:26:48 +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, Chia-I Wu Subject: [PATCH v7 5/6] drm/panthor: Make MMU cache maintenance use FLUSH_CACHES command Date: Thu, 24 Jul 2025 10:25:59 +0100 Message-ID: <20250724092600.3225493-6-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250724092600.3225493-1-karunika.choo@arm.com> References: <20250724092600.3225493-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P123CA0561.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:33b::10) 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_|AS4PR08MB7951:EE_|DU2PEPF00028D04:EE_|AS2PR08MB8431:EE_ X-MS-Office365-Filtering-Correlation-Id: 43cc2a56-a40b-4287-4cc4-08ddca944a83 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|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?yGBmzXRLKLrphM6cyJW/zSpvX4UoaC4+1pmacJbLgSH30AbgG62kiKPMn5Xh?= =?us-ascii?Q?CpRjxRwjhDwohKAhb++h+7tgAQKBccvpwVljqKEmM5Ckq5T6SieR9W1/S5ak?= =?us-ascii?Q?EMMondVz2rFs4R1RFczW8TvylaAGDJzeDjTfro1g9nGzv0y4VzMxruJmmDvn?= =?us-ascii?Q?bbW2WRTaFxEEQeav1WJ/bfK4Vbu8SfCT3m168YSDqrsi6qmfWgA5aZgwNtjx?= =?us-ascii?Q?fhijCb2hcBCU1k8CkGSqhj4fHBT5I+/Y0YuMxiwVPZUaXDr1KKcNrIOhqIiG?= =?us-ascii?Q?ryJOlEACgQS/gSIAauiOHvovbj8jsBoss5+/b41SXcy3+3DHrJsVN2ZJb05J?= =?us-ascii?Q?UjM2/BjvmuiMJTU8fshqkShKZdE4JpRzVeAtJPrgIiu5yit7Y8ovhZ4wGP90?= =?us-ascii?Q?YAWglFYc+oKVlTk3d9j3tMCpDl8m2j65vUBqag0GrVcXvPMs9QDn6SnLlC1w?= =?us-ascii?Q?dB14ojYhhu7CZbymJNhDI6V/wvxNpfFeVUPOuLQz10ggVUuCvXTsn0yiLUVx?= =?us-ascii?Q?HCn5W7Hzaux9QmxnIN8VEk7DpPk5fYoDpLTxUbYmq2CQMalZo4l9p/V4pEDg?= =?us-ascii?Q?cI3wrW6NAksDm97y76ecjjH5IQ1vZod2yXaLhky3eYH2YSz7W8YAgIaPSKW1?= =?us-ascii?Q?DDxThapREjcplrXGwHxL81ghiZxQmp+H8wMEQiuPpGX3JI9VM/b1na4sHcga?= =?us-ascii?Q?zsLcChaUlwjqr+nWvm4hv8u6NDK+qVGmXS3VRyU/haihT3cFxR57zDZofOuh?= =?us-ascii?Q?rCvgmyqnkHtONSUE7ll/1aflF5loYKQAEhHUqEqLLZKbu93Rw8yOa18Gvx0J?= =?us-ascii?Q?2SSjNHz57HgRPO8+Lv9DF9HZxewGjZdFHKx/7mHW4jqubJK++IYyerAoCjEv?= =?us-ascii?Q?PkEY9MrzaHCT3wg7g/v2V1ayyyWWZss/hkr1mZIMHu+dFrDyC5Ni1KjUSQuv?= =?us-ascii?Q?Ml7SbTBEPgcg8nqMhTRWqj5VcQDOCVQ4CjV5x3F38IZfZbIJQ7wfs9I9VQiM?= =?us-ascii?Q?7zn2hyGEzKP9ncUGKXMuxkPW5jTzZyZjBzNFWq2hxEZFzoTyXdJ7q7zoo9c1?= =?us-ascii?Q?C+tyxfFqsBtkiS+VBWI37XLvJwI013e1hOMYjZlxYdxOOVFHyoInReat0wMx?= =?us-ascii?Q?HMwkzT3ZuNQqtODwc2uI7GK1AKPj6VDR7hMkroPaMAt+ygCkX1MRbYtPT/ZH?= =?us-ascii?Q?Mb0dAG8bhR/fUsuXOUE9OuVo2CoCry/Lz8mXvoxXO6PizD1RlxcxGtA93LFN?= =?us-ascii?Q?Q9yuP1bHXf9CiALr36x199A60UfrQPDr6Hzfg4PDYVRR3IT0YE+3D/OhwC+R?= =?us-ascii?Q?T/N/t60IW+q9KtjsqW7/rwgkPGssYWXLXZNp5+sXvu9RcQMjoN67GLmrfR43?= =?us-ascii?Q?tjoinnIBrIe9H99TWLLVCq7JiUoJo86He9lq8X188Gf2Fd/aDg=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)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7951 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DU2PEPF00028D04.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b239179d-7b31-46e3-5e3b-08ddca943727 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|14060799003|36860700013|82310400026|35042699022; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?DbYhvprSZUGT9IVrWKOYGVK1vh1JfRVza/LfQGehvXiJR3+hJEsgRL3NpTuG?= =?us-ascii?Q?VdR5h+UvnSORTZ0rWvXvspi6x89olWLnYDptcWS7KJPmwhbqd+FauAX7Jall?= =?us-ascii?Q?jT3++88rinsUaqFq4zendK7AMt1Zmvx0i3Ras1BB3IJJ7wYOr0qQS54GBwBs?= =?us-ascii?Q?+FllUGROL404QTnVF+3mYMzEc4H8m9ohOnQ5upiAhVlmRnWpxF+lMi3JklUB?= =?us-ascii?Q?wsVzJnCJXC9zRZ/zBZVMgycMrGGW9wja/6r1F3oJ/32+uEctfudchw0eif07?= =?us-ascii?Q?cGJt03Cieu77oosWMXikd2bDQt052J8hom2yX8e+KAQ5Yw75+KHk4Qi097ay?= =?us-ascii?Q?U0ppeBUNAwYapLrqqeC814Kj4cQYQmWzpJ2FQOoMV5rziZ2asfZtej5gBGG2?= =?us-ascii?Q?W7r7yMm06sAXNfihVWM6L4MHmZNA5WxBdznWjj5PQmKFtSgJ7dkgInwEjpSU?= =?us-ascii?Q?t++Es87VOB/sPsGibMIYmQHpfckVyQ3pLdUxiWXzYiYKV6p02dZamZaDhfK/?= =?us-ascii?Q?G20Xu9kteEGs9MMMW0XnN8DDNman2SFAPXDOLsvB8j9sssJ+mthA2KOC29Kn?= =?us-ascii?Q?m194Mw4sAGq3O01IzARGn1BQyi7ef/js7tM2gkUD76bRUKAdIj6c7JjAVwC8?= =?us-ascii?Q?eM1lYaFxAF9pet26rd4JHoFfvoh69Kb8HEhPY9FSSsl4+y4jF/9qLbXJc1m9?= =?us-ascii?Q?n6lzZ/x27CPhniwW0rMUJLCBLw+ELW6yDXUWKPviChci5c7rUQQkOWmauy5f?= =?us-ascii?Q?RLXFq00f4T6/v4vjIjHoDAr6chqk/WnLOme2+YC6f+CUObWS4GznARqTR6Nz?= =?us-ascii?Q?waesnxrRj1oaHIAGKt7zxHrz10DP8jBI9dOVoE0lmuGAD92OKvanlzXTmH6a?= =?us-ascii?Q?RUhFOAM3aKhEPyp0jldlp2BEYXED5q18ZSss5QJ5yc6c7y89PKFLbfeh+JjP?= =?us-ascii?Q?wmee48hDcBagTC0wbCnkfNCuvJ+zjWTm3uq871mQDhQuFqnka/i0iGvF0ayi?= =?us-ascii?Q?1d4hz/bNhRgb4QMVSca6t8Ch8jqdPtJo7boyxlp6g9Pjp2kuJVew2dJm+0Tl?= =?us-ascii?Q?tNEtVpzTerQcKDicq/SVFTMh62iZjpAVeTvXYIRppWCMm52P+NBO/Ah49SRb?= =?us-ascii?Q?XIIUPvnxb6OTZbf40LjsD4CoDzTKLBAXxvInwerCpRpg21hWMwx715A3bPCK?= =?us-ascii?Q?tkiI5bVs3DOMow/BlHKhxiArnd5quic1awKbzU45ckC1QNgE2w2Tq5vFgAVY?= =?us-ascii?Q?p6jR6eOCd19ACYusutEiaHckyAMEugJuNmKGsDPIhNt+gwF1zNlNWRfyUpvB?= =?us-ascii?Q?+p0LAjh+KrWZx9EKhkjJba3WHjg8p5d1TPJsCLthlDXgJ6zo2RMkR6e+INXM?= =?us-ascii?Q?OEYQF3OHUfGF6sHC2yLDIlQe2/Um14ekz1CDbdzv3vNnNWhDr4UOeYCtQSkV?= =?us-ascii?Q?4/0XXchZ8HXToQmH07M89R5aOG3CzC5pkJw5B3fX3ZcIl3KRiZIhZIcvvRGL?= =?us-ascii?Q?IbQ9eF1BiJb/csJbaPuj6Ji2eVc9+o4m/1TF?= 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)(1800799024)(376014)(14060799003)(36860700013)(82310400026)(35042699022);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 09:27:20.9562 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 43cc2a56-a40b-4287-4cc4-08ddca944a83 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: DU2PEPF00028D04.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR08MB8431 Content-Type: text/plain; charset="utf-8" As the FLUSH_MEM and FLUSH_PT MMU_AS commands are deprecated in GPUs from Mali-Gx20 onwards, this patch adds support for performing cache maintenance via the FLUSH_CACHES command in GPU_COMMAND in place of FLUSH_MEM and FLUSH_PT commands. Mali-Gx10 and Mali-Gx15 GPUs also has support for the FLUSH_CACHES command and will also use this by default going forward. Reviewed-by: Chia-I Wu Reviewed-by: Liviu Dudau Signed-off-by: Karunika Choo Reviewed-by: Steven Price Tested-by: Mary Guillemard --- drivers/gpu/drm/panthor/panthor_mmu.c | 33 +++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/drivers/gpu/drm/panthor/panthor_mmu.c b/drivers/gpu/drm/pantho= r/panthor_mmu.c index 4140f697ba5a..367c89aca558 100644 --- a/drivers/gpu/drm/panthor/panthor_mmu.c +++ b/drivers/gpu/drm/panthor/panthor_mmu.c @@ -29,6 +29,7 @@ =20 #include "panthor_device.h" #include "panthor_gem.h" +#include "panthor_gpu.h" #include "panthor_heap.h" #include "panthor_mmu.h" #include "panthor_regs.h" @@ -568,6 +569,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 +615,9 @@ static int mmu_hw_do_operation_locked(struct panthor_de= vice *ptdev, int as_nr, if (op !=3D AS_COMMAND_UNLOCK) lock_region(ptdev, as_nr, iova, size); =20 + 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 Mon Oct 6 06:31:20 2025 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013020.outbound.protection.outlook.com [40.107.162.20]) (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 755282D29AB for ; Thu, 24 Jul 2025 09:27:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.20 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349251; cv=fail; b=M0tpAb6WVDwaCbM2Dqnua13/RE0D7LHFzVPGcFFQegwgrl69WzLMlaoaMoiTuNZicvN4gmj07xCepw4UgUI8egSchI2edMmFNuQ20Oro1/5YbZnDHV6mfIpgke9E9eQr8QRIVMgwmjPxBt48rM/7prprSwzKGZCaw3k+f23y0KE= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1753349251; c=relaxed/simple; bh=WsiVA04ksjpa1Bo2cVjnmw4HJbqACjZd2Lj2Vy+LlPY=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=JKbIpArTGLZCifblGrqniZPZn2/Q7puqD5P3HVBseuheNJtokT4l3unhVezPAWj0dTckySA39daSl+Gn81auD2G1P5SIWYis494apKC9uzpj+krBktWOyvffDeR1FIxFCezp8fG3OsmbkeIIngbV56kUTkm0MA/MgLc7+vdoI8Q= 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=R5D0+rCH; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=R5D0+rCH; arc=fail smtp.client-ip=40.107.162.20 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="R5D0+rCH"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="R5D0+rCH" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=HMzZb4MbbO0jOq2czXBqJFJzaru1wGAmYYuswPM8p+brTFPDmUanSMoF8sdffutaIfY53foLKvCTVOxIxMxbyBqcaQdZV2M7Ne5aHxB0QSkd0rj2ovkZ+0I/vN9xgnOjdDLEXXX4Tqso/12RZh/794tcTnp4c9x4HvtuqEKlb4KcnacNmPQ8mPfIKFnFrAnsoSWhop31SCC2jNRK5gZ0p4dNJ3Tp9Cb6IXwNk3fJMdt1KFMF12Hk6JKK6p3Pn7BhC5kbseewP6B6nNiZpPcpFiN1tTs4dhmBNE0+rqAKozr0Y3m2FogUGEQDH4eI813cdpPI3YrlQB/rAxjocl974w== 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=l1zTlqMLo+VyMVTLYpkjk07VyQbxEaFlguBlIVAlwf8=; b=hRXFCl4zmiklpJEJDV5ylVl4kehbx9EhX20G8Oz4QP4+B7a8grjs6gqprW1rpc1wRBaJhQwzp6F5BXhqJfunKTSP2zfadXJJ9al9Ea0FpXRB2AgnYBPkQu0X5RwKyUyo9vxidiYks3CaUXx7ZjU1zyL2S04wtpM1ronXvbMfYLe1A8mXGh9Ayew5cAMMHvELNTCmHKASPn6hKKWu3aqcPSlAayTulVxP99uC6+k5xbeWaqjKnI/33kj9VCfY62zP6BtL9ezrs9gKCoMAjWcFVooKqdQ0Y/uOhYQuqG+aZUMKDrjnvnloN7lyL7VulnFH+b5VdKNyLLX0dLDWuPUppA== 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=l1zTlqMLo+VyMVTLYpkjk07VyQbxEaFlguBlIVAlwf8=; b=R5D0+rCHBnedOyfIfkPBwpuyYODTAzrjEuW7gdHV4tjo8rED9g5285w44+ZM2Tl0M50A6F4HbkECKSvvXKuIdXMBMXaLCM4nKhrA3pU1reHD5gsxyjDg1rYjY4m8tmPV73exJRFZGgRmK4sxvP+l2FqCJdXhKwqvmJLLa1GtHXw= Received: from AS4P250CA0025.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:5e3::15) by DBAPR08MB5720.eurprd08.prod.outlook.com (2603:10a6:10:1a1::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 09:27:25 +0000 Received: from AMS1EPF00000045.eurprd04.prod.outlook.com (2603:10a6:20b:5e3:cafe::e0) by AS4P250CA0025.outlook.office365.com (2603:10a6:20b:5e3::15) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 09:27:25 +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 AMS1EPF00000045.mail.protection.outlook.com (10.167.16.42) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 09:27:24 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gs2oe5kXIT0MeQIitNv2d1I8H+hig5KsL6hOl25lwjOfm3nLPyCs7jWcQClpYIzi/l98o8FWWc1kshautejRWC+nz8vjZaLSuB72DUluL/QMxKwqeM0CNdKCwD0+Bzvf36MGXJKulqrrtCU2n2u/XMty1NUF6sPyps/10yjGD51aDboYlk0Q4u9OtcFWmwfW8qy5cr06zhs0BTwVnK+tUHkh3ok6+8DrR8IzYvoBab6gZzcqYWQPbuKR/fLjRt2ShawKs0S6hITEUqLqbsIJkZ5hTA57x7C0PrTg2gAgb0qXbpU4UwL3w42PgxEPOqQuqo956cAnv3zoRutnzqgJow== 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=l1zTlqMLo+VyMVTLYpkjk07VyQbxEaFlguBlIVAlwf8=; b=TO9I5dFs6ycJ0+mKevVd0/alM/aLDjhsTx+3VgMT2gZF7WWGVPjXkNgoHb75Ml8SFM9loEP1GxMtFTTANfThZmQb91uwoq/zX32w/nBQXR5tCfgo3RI81RG/b77vBC39vWXFPpRVe29GEBYOsJMwXFLxXTJh3CRFgIyCm+b5jWubSL1WKJhrSpyZMt0zGjtrNSPCgKgQgjrB1mWK4fkY/4UdssNRct1LomFQfZbLp1CC2aZHYjb9FkKDWkjNjDxN1XtGDt8B5qHW1GCjeaaqTIj+rybDhvHf1cukgerW7OiFVeFeupNAKUWxCaYgJLb8k+XSgVPwNpfYPKpcl2QlJw== 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=l1zTlqMLo+VyMVTLYpkjk07VyQbxEaFlguBlIVAlwf8=; b=R5D0+rCHBnedOyfIfkPBwpuyYODTAzrjEuW7gdHV4tjo8rED9g5285w44+ZM2Tl0M50A6F4HbkECKSvvXKuIdXMBMXaLCM4nKhrA3pU1reHD5gsxyjDg1rYjY4m8tmPV73exJRFZGgRmK4sxvP+l2FqCJdXhKwqvmJLLa1GtHXw= 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 AS8PR08MB8418.eurprd08.prod.outlook.com (2603:10a6:20b:568::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.30; Thu, 24 Jul 2025 09:26: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%5]) with mapi id 15.20.8943.029; Thu, 24 Jul 2025 09:26:51 +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, Chia-I Wu Subject: [PATCH v7 6/6] drm/panthor: Add support for Mali-Gx20 and Mali-Gx25 GPUs Date: Thu, 24 Jul 2025 10:26:00 +0100 Message-ID: <20250724092600.3225493-7-karunika.choo@arm.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250724092600.3225493-1-karunika.choo@arm.com> References: <20250724092600.3225493-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P265CA0023.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2ae::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_|AS8PR08MB8418:EE_|AMS1EPF00000045:EE_|DBAPR08MB5720:EE_ X-MS-Office365-Filtering-Correlation-Id: c6d2cdfc-ede2-4909-aae5-08ddca944ce9 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|1800799024|376014; X-Microsoft-Antispam-Message-Info-Original: =?us-ascii?Q?flkLFmgwqH7e3SxkSt4yhl3FGENnQpkUWPeZ49r5zdiDr1nKgHEutTeRaz6I?= =?us-ascii?Q?gAA1nl915juxuMiny+sFQry4ExpscBU+Q/CPcvIWl/2NZOqvPa3bLkvCFCLy?= =?us-ascii?Q?XVHZw3DPiMTqt4l6XfpfwPJ7ajiE2gBWO68sTgZc70OpkIZpABLNWfBZqeZx?= =?us-ascii?Q?I10gA+x+ls2ePPvfBM2K2f/a0EZYDI2A34AwMQUInZklEGBjen+Q0yr4vJlt?= =?us-ascii?Q?lsO+BKGlHyVoH2P7VmZMEHV71jQi23PpHDNI/FhLh+Bqww4uAxOovzmjDBXn?= =?us-ascii?Q?TSIf5mrPX0mr7C1E9zqy42YLJgGtn9rN53auRAxM6d2xK3H346wmHGjTJt2+?= =?us-ascii?Q?+JR5Dk69y5X4GRDkSXOi7x0rhpcBK2JuTf4ol7re2pXdToOKEnwBl8BIbmj3?= =?us-ascii?Q?DUE2ROto10djWBd+mcsShOpBUDV9lWVpkAxGsg8IVPCH5CXAItCeMsvxHfrg?= =?us-ascii?Q?usOb0CUkd3VlIytOL/HdL/cNvh2TX2r3A89z1mYamq5eR+chTzL9X4ukEdoi?= =?us-ascii?Q?uWO3gKVEG0zCz20RopY0kS6swsuhR9hD4gOe27CvikHfNC+MqSlK2GBQXU+3?= =?us-ascii?Q?GKLtfkEar7ezV5QxCZ0lbRJIgENnDHqZGuJXvaciv5py2DcN0HadKjvp+vBD?= =?us-ascii?Q?DWJuPN7lGAYCfrfy5M81+B8DXQ75f/RCphq3X0jkhCJYSssb8w4PCjj7GYzQ?= =?us-ascii?Q?uP9/IH5VBzoqF7G5ZSw8q/YmmD+l5b0YZoSTDde5XcQwz2g3oKndsuc4l/0J?= =?us-ascii?Q?t0JgoT9nNBLX3OSDXvIlAt03aFx9aw+wvbKVPEQi/evQ6WHUdOTTAeCOpep5?= =?us-ascii?Q?JkPJ6I2PEnxS6jVHucylvEC5HubwBAb0TYyW6LnyHMy9B9gZyuV01frFKh+a?= =?us-ascii?Q?ygDKtH1ResF8UNxauCVqnaWyOe+nYUcwmwVmFmyAjSs6ELemV12FI5CP0W+Y?= =?us-ascii?Q?3ul6F5IO0WB2l9qJX3J+k11kmv8FY1avEijc0ES3ldCFa4yZjmXhXaNU9+e2?= =?us-ascii?Q?Egc8tYXKrnoMxhoFHIvikoPyZ3KnOxY7jyHuDnQTelR/yvCOpaK1okMe9Mkg?= =?us-ascii?Q?zwL1K3vu+Rj4r/yJjvX1tZnb2xCRqC1O1OAoQoYIzWTvj9s+L68J8os3Cucp?= =?us-ascii?Q?lxTJQTG0OZJiPEMnQKx+eLy2D+7PhKgkgJ++4Q4qR6JTTyAg4bLqHExsgsHH?= =?us-ascii?Q?9CKNB3qk4m90iXaEqClNXfUIZrd1KmbI9id9nWSH2wS9K6flP15Kx8utwXhy?= =?us-ascii?Q?iqPtpXFYTnDKx88XhsZsxklqKAGaGGiDiK9KYLWoZTJLivHH7+sOHhsauQ5f?= =?us-ascii?Q?OYZGNFV+5GxFduMJ+OXJkYfYdjVBJOP4n6jU+EcRaEEgfomi50m/9Ri7df78?= =?us-ascii?Q?/xWERpHwDs7HnJaVcaRpgJ7wXqIZ0U/92G05u+tKylCdIyTz3sAQrYgnfU54?= =?us-ascii?Q?q9QBFlWoUh4=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)(1800799024)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8418 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AMS1EPF00000045.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9b0d2cea-e127-4496-5a5d-08ddca9438f3 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700013|35042699022|14060799003|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?+CdVE3nlntyNNWPu4QYNe+9Ss3s1PP3sZpj0CZ660SuQ0e7BOBw0nlJDElVu?= =?us-ascii?Q?cZmXg9pPJ1SlKS35ElbBScIhvCFloBWnuExtmFr/bcCumRYo8l+lpp70koVB?= =?us-ascii?Q?wQ/fPHHI71rxLunnLoNsFSq4IaXcWEAydrZ6EKt9fDb97VamyyaUvi7Fh3FE?= =?us-ascii?Q?CdG+txJupUbn9NHAKX7jIC3zzT9tKhtWh7SoT3Cxnanvija0qmjNethECrJC?= =?us-ascii?Q?wWP86TOFBoTvp3yYxnv5B7RJ5ZFpFGStFKjW92IPe9ktchZXziAgcAno6w3M?= =?us-ascii?Q?zmULE21ypH5y/5t5taNCfneXkKotifVmK7opiV1g1V53LROV5iqQTTYZAIhO?= =?us-ascii?Q?MPNILXhYEP94G16bGiPjWEMsGhmAgYHc48fAJsVTSXhFexQ4TrxSOaN4hYNR?= =?us-ascii?Q?LbU6o6I3adI3rX/wZhE2n8Wxu3ILRcRx3No8IVyFlOz5sKXrf8hiLFtilvxW?= =?us-ascii?Q?kxEBqOvuG2uJplL9Z89Rnz5eCeZwjgqlXa4q2b7x7tTUiobrcr+0ZhIIybzs?= =?us-ascii?Q?pr58G7XT9C44kGBkCLWV1MMEezFVHyG0WK7DJoMKXFSADhFAnhoWwnmY4s1Q?= =?us-ascii?Q?8LgTt7n0wXkG8bi2ZTo7dtgwElAQ+O2VSfHizEtK81z0WWDVfSmDdEMofroa?= =?us-ascii?Q?IyWrA6F0NM001u4lk0TcJQ1vgNMBfq/muNzFKgEM/MGxaSmgdcpY481ucoIP?= =?us-ascii?Q?tR3ov0g7EPD81OL3m+rL8Ir5X6/7th1pHB28dPwBXIOlpEhG7anqQjkPec/g?= =?us-ascii?Q?9W1Atxm7dw0MtUsusSPv/OXy6Q7FPBPLK2oGGbFnqluzdUcVvtDCVv6RnyCm?= =?us-ascii?Q?1va5FbEHIoKT+x2WUFPyIsoo9WCktUSyPKdmwBO5/2BnNHaCFWX+w+hBT7HA?= =?us-ascii?Q?3ERwLSUKNAysip1fYO8IWSHJ23Bp0uL4mUF79JwBGc6hvvdK4t1Hx7WB09pf?= =?us-ascii?Q?4l8qKKNRBq9tQAtNRlYY+RmyyyPYMcXE/eqRqam513oPADb/ug9Mkaae5JZj?= =?us-ascii?Q?nx0vEb9QVY+pe6Jqn1PU2axQsDof4GnLbfCF3q2TbSTNlSR68F2GaqPu7Yg5?= =?us-ascii?Q?jJx4n9YW+f84zsyt6crIlcjtvuWYuw332ffD1R/zDiGA3E2H4g9X2hYcRJat?= =?us-ascii?Q?F8HYYcb26bStC5TxoLPdqmEe1YDPUNIp9cJWAamh55mj/KeVJphynnafgfAZ?= =?us-ascii?Q?utoLk3MY8LYzniniKNCEjMEjEArWdrXf3CyuW3+2kTn3sPQjeDq25fuyAxyN?= =?us-ascii?Q?pM58iFJuhbCCdwBYKxQio//exW4bOH1rPYC2gB1c+yVzBJokPjuG+ez6kSy+?= =?us-ascii?Q?GMub7RTLgWvOLMZcYFesTT6oviaybEIeSi6PYvp/06KKZUsdVAmJA7+o0Ihd?= =?us-ascii?Q?+ZD7KBupsisE+6cWFbJQDGFLJyQ2eFOz9gAzcjM+LqM/oI38QFnqlpavZ2YB?= =?us-ascii?Q?ZYK8LXiwqMaF0obRFoKcuK3DgSdYk+uHdW2cUAj0Y/aOJFIk7qMPGkI67Def?= =?us-ascii?Q?kT8pM+swG9d7lcia/z52tqp3FMES/xHgLDQi?= 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)(1800799024)(36860700013)(35042699022)(14060799003)(376014)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 09:27:24.9838 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c6d2cdfc-ede2-4909-aae5-08ddca944ce9 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: AMS1EPF00000045.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBAPR08MB5720 Content-Type: text/plain; charset="utf-8" This patch adds firmware binary and GPU model naming support for Mali-Gx20 and Mali-Gx25 GPUs. The GPU_COHERENCY_FEATURES macros are slightly reworked as the assumption that FEATURE =3D BIT(PROTOCOL) no longer holds with the introduction of the SHAREABLE_CACHE_SUPPORT, which is BIT(5) on the GPU_COHERENCY_PROTOCOL register. As such, the feature bits are now individually defined. Further changes were also made to enable SHAREABLE_CACHE_SUPPORT if coherency is enabled and the feature is supported. This patch also fixes a minor bug that incorrectly writes ACE instead of ACE_LITE to GPU_COHERENCY_PROTOCOL if coherency is enabled. Reviewed-by: Chia-I Wu Reviewed-by: Liviu Dudau Signed-off-by: Karunika Choo Tested-by: Mary Guillemard --- drivers/gpu/drm/panthor/panthor_device.c | 3 +-- drivers/gpu/drm/panthor/panthor_fw.c | 2 ++ drivers/gpu/drm/panthor/panthor_gpu.c | 14 ++++++++++++-- drivers/gpu/drm/panthor/panthor_hw.c | 18 ++++++++++++++++++ drivers/gpu/drm/panthor/panthor_regs.h | 5 ++++- 5 files changed, 37 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/panthor/panthor_device.c b/drivers/gpu/drm/pan= thor/panthor_device.c index 81df49880bd8..b85a744d99f8 100644 --- a/drivers/gpu/drm/panthor/panthor_device.c +++ b/drivers/gpu/drm/panthor/panthor_device.c @@ -33,8 +33,7 @@ static int panthor_gpu_coherency_init(struct panthor_devi= ce *ptdev) /* Check if the ACE-Lite coherency protocol is actually supported by the = GPU. * ACE protocol has never been supported for command stream frontend GPUs. */ - if ((gpu_read(ptdev, GPU_COHERENCY_FEATURES) & - GPU_COHERENCY_PROT_BIT(ACE_LITE))) + if (ptdev->gpu_info.coherency_features & GPU_COHERENCY_FEATURE_ACE_LITE) return 0; =20 drm_err(&ptdev->base, "Coherency not supported by the device"); 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_gpu.c b/drivers/gpu/drm/pantho= r/panthor_gpu.c index 5e2c3173ae27..e8d8dbeefac7 100644 --- a/drivers/gpu/drm/panthor/panthor_gpu.c +++ b/drivers/gpu/drm/panthor/panthor_gpu.c @@ -45,8 +45,18 @@ struct panthor_gpu { =20 static void panthor_gpu_coherency_set(struct panthor_device *ptdev) { - gpu_write(ptdev, GPU_COHERENCY_PROTOCOL, - ptdev->coherent ? GPU_COHERENCY_PROT_BIT(ACE_LITE) : GPU_COHERENCY_NONE); + u32 coherency_protocol =3D GPU_COHERENCY_NONE; + + if (ptdev->coherent) { + coherency_protocol =3D GPU_COHERENCY_ACE_LITE; + + if (ptdev->gpu_info.coherency_features & + GPU_COHERENCY_FEATURE_SHAREABLE_CACHE_SUPPORT) + coherency_protocol |=3D + GPU_COHERENCY_SHAREABLE_CACHE_SUPPORT; + } + + gpu_write(ptdev, GPU_COHERENCY_PROTOCOL, coherency_protocol); } =20 static void panthor_gpu_irq_handler(struct panthor_device *ptdev, u32 stat= us) diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index a7583342d797..3fcb69a6f959 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -35,6 +35,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)"; diff --git a/drivers/gpu/drm/panthor/panthor_regs.h b/drivers/gpu/drm/panth= or/panthor_regs.h index 8bee76d01bf8..1beb365c0fec 100644 --- a/drivers/gpu/drm/panthor/panthor_regs.h +++ b/drivers/gpu/drm/panthor/panthor_regs.h @@ -111,12 +111,15 @@ #define GPU_REVID 0x280 =20 #define GPU_COHERENCY_FEATURES 0x300 -#define GPU_COHERENCY_PROT_BIT(name) BIT(GPU_COHERENCY_ ## name) +#define GPU_COHERENCY_FEATURE_ACE_LITE BIT(0) +#define GPU_COHERENCY_FEATURE_ACE BIT(1) +#define GPU_COHERENCY_FEATURE_SHAREABLE_CACHE_SUPPORT BIT(5) =20 #define GPU_COHERENCY_PROTOCOL 0x304 #define GPU_COHERENCY_ACE_LITE 0 #define GPU_COHERENCY_ACE 1 #define GPU_COHERENCY_NONE 31 +#define GPU_COHERENCY_SHAREABLE_CACHE_SUPPORT BIT(5) =20 #define MCU_CONTROL 0x700 #define MCU_CONTROL_ENABLE 1 --=20 2.49.0