From nobody Sat Feb 7 09:17:31 2026 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11013035.outbound.protection.outlook.com [40.107.159.35]) (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 A8CDB1A0B15 for ; Thu, 19 Dec 2024 17:05:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.35 ARC-Seal: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734627961; cv=fail; b=EUsTBQRuxKRZNVQkCeZp6aorgKVDStJS+rroDUi4eUNR8gsOLpJl2IqQX0LVhBt9XR9lpDy6oQU8/fHjLT3vzZ6ny110Zfjlq1YvCDCRqDdpO2mSCgAd+eWp3tHJV/TqLzcFy6RiSuPUx/+S1wcTVv83HWQmeFrcoiDy89Mtg0E= ARC-Message-Signature: i=3; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1734627961; c=relaxed/simple; bh=IafS435fzBsWeE3V3QoXVdavHXCqS5Q5K541LVuqLRk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=sTEbkuYHzlhdcm6tD/zDzomBx82TWddxT3CwcdZvdsnbtr5oD3bkJSOFDKkcUPQITau3nEBGMDAnI77dRhYtzgujRiehmqhgTQ2Ejpwos3sLilNyRHv3lnb2ANCbg8n/Rpoiyn9AAqLu/OF5SJv0TI/urKTG8YJBQHKXlS8utSM= 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=GUppDtJE; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=GUppDtJE; arc=fail smtp.client-ip=40.107.159.35 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="GUppDtJE"; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="GUppDtJE" ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=xridoLhz19AP/wbp7nCbF0bzt1BSANUv+lOqHrbqNcJyfcEg2L8NYDa6kI169COtY8nwD+nUIJqMIWa79S6cI3bbtgW1BQC9N2pbtpqIhNxoH3wLPRinHa1FL+qcfIbL9ZN9UiS8m8F1YKbxzqYXijsAjC+/eONQyZJDPRloGuL3mFep15bbQ9aAK4kkJdOWwPEl4n+kLkEtuu2eKqx31spN/7DRLceBtW1kjDKXAg6YDWoTqj17FSDmsBD/blmBR7mktNJrBASf6mGydJZpHaqhsHbYgO/z67wyXaCCU+3DbnLWDhCD8rH5sxKiL6MmqXVbGLlBbIYTk8qQqPctNQ== 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=1KRb1kdRZkuAUgZIgOPaKqJu0T1jE1SayCCbcz6EoCA=; b=IBmpWzaCxMtZebJ5UmajZJzYBIDwKPKliZWRssTm1riE2hQ+DGUCZ72RpCWFWFZ3+TnwFme/cFiF0toxNPdK0+lLUB4hhz7ujRMA8qzwRagdKRdA5Wt6jpxSStBhQevdZnLd5U0R2P68n//Z9wEBZJj5YMhs2jvbEKy7j8NESUICaKXtt0qWVAU7A0emoSmytDo7dgF4MwHF3a1qErNct7gS94NDuwkv7KUguDMvEC44hlehsc10gF065l+jWb1FYjUE5SIH89ESlG3mxgjoH8mGIs237yHfZ/PDUM+BXp8HhpWmDsssDqriy4p27jsHHLYJiOYvb0+gSfkn2ASm8A== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=vger.kernel.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=1KRb1kdRZkuAUgZIgOPaKqJu0T1jE1SayCCbcz6EoCA=; b=GUppDtJECHLHtYUU6hfqFUBtLELBcvHYutLH54J9BsCGhb0x3zDxcFYlEOkYAIUOuLUQ/0ucs1eHeyrRyc64BpnVm/gO4aaftWWCgDAfCvUOM12elJAaLYnHMAyjA2q10v5rb94e2Zme1BEpjkieqx0LFQiGH3WzaV/V7s0JUTs= Received: from PR0P264CA0244.FRAP264.PROD.OUTLOOK.COM (2603:10a6:100::16) by AS4PR08MB7507.eurprd08.prod.outlook.com (2603:10a6:20b:4fe::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8272.13; Thu, 19 Dec 2024 17:05:53 +0000 Received: from AM1PEPF000252DC.eurprd07.prod.outlook.com (2603:10a6:100:0:cafe::9d) by PR0P264CA0244.outlook.office365.com (2603:10a6:100::16) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8251.23 via Frontend Transport; Thu, 19 Dec 2024 17:05:53 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) 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 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM1PEPF000252DC.mail.protection.outlook.com (10.167.16.54) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8251.15 via Frontend Transport; Thu, 19 Dec 2024 17:05:52 +0000 Received: ("Tessian outbound 7d3f896333d7:v528"); Thu, 19 Dec 2024 17:05:52 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 514af59853b584b2 X-TessianGatewayMetadata: MbwjAM8DJobSbopDPnPIrAqnkKczhp16ddCAIKJgubwTkBCExn0h8zYmdFhTgCJeEoglJVxNeAW781VZjBRb/R+X7SQlRYiTAfxRKm+N7beOvl3Q6q1UI2CnKw4fbC20govZGKXPOrGfOycVi5Ir1oUu74G1+HLMwF9yXrhEGd8= X-CR-MTA-TID: 64aa7808 Received: from L41680f1e6029.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 6C7E72F8-6902-4E0D-882F-BEB8AB53B25F.1; Thu, 19 Dec 2024 17:05:40 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id L41680f1e6029.2 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384); Thu, 19 Dec 2024 17:05:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ETlkuENbDfvp5lQuwENBM0AKe/GGY/iThCcmmFG9l5slXErLc397yuDapb0Cf8dA0jrXIoQUqtJrsmEuvdIckbnGoF3NIvROjwXpi+8OxvxOSClKUfPxBAW2zfOTlO2qnbQclJOJ4l7zuNmbkdJFDln4qJt6JNxQ/cTI4boXJGLUjRRrTl2+rv/L2ey9YiJZzhswRTa0dIH1LCSRvYsiW9VRS0Q9YqEPmx3qvu6qRAVPTCGSaPP4TP3sTtn0c7HwOcF0wQ1mLR8m0tSPFEU1F//xzAgkSQ+f68sZ0Vpn+KMUM7lUeGmPZTd++Il0cfs+F1fLytJdJSp0/9WIev0xWw== 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=1KRb1kdRZkuAUgZIgOPaKqJu0T1jE1SayCCbcz6EoCA=; b=m5/rwmOyW42haXBiMVzzF6UBKmsx0zrf1DPZoWjBgmbf6WuAe98+y+HWygmc+1kT8EAhQJPGeKUoX3lj4YjAQUA1ubwwCM9cMebQRhe09UTV2py6eHu14XmSweClgydsoms3nI9ul467Q49BK+cNpKHtFLyIZdD7cwcxBaHmNgMJvEC0aNnOkOcoFNe5p/Sxx4lwL3EihPh3Y7UFyj9jL2mR7ynsDsLz0+Lw4tvCU5jj+LmkK3tsAAuzHRIOQHvsCZgWWu8UPpn6XcvTuoY8eVmp4TNTMN5HET4EMeLYaWVTXASJiF5rKEPwpf5ESCynPs7kHj3EuFGou3+Cxc+Z4g== 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=1KRb1kdRZkuAUgZIgOPaKqJu0T1jE1SayCCbcz6EoCA=; b=GUppDtJECHLHtYUU6hfqFUBtLELBcvHYutLH54J9BsCGhb0x3zDxcFYlEOkYAIUOuLUQ/0ucs1eHeyrRyc64BpnVm/gO4aaftWWCgDAfCvUOM12elJAaLYnHMAyjA2q10v5rb94e2Zme1BEpjkieqx0LFQiGH3WzaV/V7s0JUTs= 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 PA4PR08MB6238.eurprd08.prod.outlook.com (2603:10a6:102:e8::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8251.21; Thu, 19 Dec 2024 17:05:38 +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.8251.015; Thu, 19 Dec 2024 17:05:37 +0000 From: Karunika Choo To: dri-devel@lists.freedesktop.org Cc: nd@arm.com, Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [RFC PATCH 4/4] drm/panthor: Use GPU_COMMAND.FLUSH_CACHES for cache maintenance Date: Thu, 19 Dec 2024 17:05:21 +0000 Message-ID: <20241219170521.64879-5-karunika.choo@arm.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20241219170521.64879-1-karunika.choo@arm.com> References: <20241219170521.64879-1-karunika.choo@arm.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P123CA0626.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:294::11) 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_|PA4PR08MB6238:EE_|AM1PEPF000252DC:EE_|AS4PR08MB7507:EE_ X-MS-Office365-Filtering-Correlation-Id: a934a428-fdf6-4161-4986-08dd204f6538 X-LD-Processed: f34e5979-57d9-4aaa-ad4d-b122a662184d,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?pXa8XREZhaUBFTBbvGHZmISTxCnlbBvbVAaAb+22b7M9wlpUxYYDi6X/f3DH?= =?us-ascii?Q?Qs84kgGgOvMG779VOLwyse+oYd8uusinJ5KSvHmE9k8Ll0Z62B9eBo5z5Bg7?= =?us-ascii?Q?p8AAfPjULJnZRS4SWZs8PO2TF+8ZYp42msKACB+W0sk51xAxE2gPNK0D/sLQ?= =?us-ascii?Q?Ktq4F95v1CiNm2H7DpaID0gM+0wY8QxNqvi2iYnHUeqOdmRG0QTT8AuUHJy0?= =?us-ascii?Q?Xe0nCGxBcqKzJ/q7TKQioVis6fM+lsSysdlA6Xyihaxeo7inO9LfWgNboG4w?= =?us-ascii?Q?vPBdnnMNiR4WgBrtY9a6m+9jPSpR9GG/iEtEKexm0SrlcVTj4rLE813B3M+K?= =?us-ascii?Q?YL0WuiCCSaKF2CrlWyBIszinRKij2FApZEB3eT85YeXVmh/ZPGWm6HB1CHuy?= =?us-ascii?Q?yL1UjYpoEpjrM+CyzI8/0cPKBSGztOdT3ia/xLGrvUySntbeseOAGY4HrVkd?= =?us-ascii?Q?YUN1pE0hfIBajtptYKPM4LLhN/bApHpSUA/0V4auSuWmq4iyab0sGgNlK/MZ?= =?us-ascii?Q?Dkr6QHqD5Waob0u1yBoQm6+PiaCfofKoZDb0r9imHvU3Egqm0PaZPqyv0aeh?= =?us-ascii?Q?/nfzE6dZuAMO5Lm3GJpagXSvVHGAxi/iGnDVlD1TQOfyY0mvAvdqahBODjXH?= =?us-ascii?Q?aXFGYVJWC66ZJHwiSKsWdEEZu56xoSJrstKk3IqjgoiIEHwaqggKCKXYVsV7?= =?us-ascii?Q?n1xye5Fgj1lcw5JSsi8WTOwtShvF6ayjS7vci61hnfA91MYOgrx9KORv+Mc9?= =?us-ascii?Q?4GOaUt3GK++rlTg1UGvVHBMHaBYRBeoE0PvaoqvowlnR9s65igmxvuJ6VkxD?= =?us-ascii?Q?UisY+kiyA+4QAwBmRQYdHN6MPXXUwYHCDzeJrMKunpSxIN2JRFN3lt4LZ2uX?= =?us-ascii?Q?/GrZ5lIU9FGID8GDV8demu7dTELdUSZBk00fDXdZPXaWbIz7R0Qh+DFqTtba?= =?us-ascii?Q?0EKlt/4g3epIhHd6KM8ssdYQeAq7bwu0MpuzwX7IWAP6yExjtP65xNyp1C1y?= =?us-ascii?Q?xRYj5qwvGFlXv9LYvDILo9Ig4vOgh1PtCGIKuUx9qDdEuty80jwQqlHjObwB?= =?us-ascii?Q?4eguEf6stX7QMse6ip5RPAN1Q/2DJ+mP4+qnw0c5bWtxIQHtO0NSUhfSClgQ?= =?us-ascii?Q?7dOTWYjszBQr2+aKOsklZf93cGG3NeiezNtuCiXQyiqP01pPj031BLLQam5m?= =?us-ascii?Q?rwfvsnQwQGru3mtFSMsHaUtqEnZIGiPuV1LHY5XJUNVrV1rTdbCbCckKJ77f?= =?us-ascii?Q?EBcQGcO5V30ik8uT9cgpqR4EVWlnciFn1S4zhUpGZ2RclqEkonRPpz4yySyR?= =?us-ascii?Q?i+gqWKeJv2h0Sg+ABX0HiMj4udS3cSzJoRzv+hBeBluxE+O9KuWeOSx8qQoY?= =?us-ascii?Q?ORQj6xLQxd14Z18FxM3RcOtMFi58?= 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: PA4PR08MB6238 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:800:257::18];domain=VI0PR08MB11200.eurprd08.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM1PEPF000252DC.eurprd07.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 1871cf15-bb89-46c5-5f76-08dd204f5b1d X-Microsoft-Antispam: BCL:0;ARA:13230040|14060799003|1800799024|376014|36860700013|35042699022|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?S1GN7H4z1eJkIF0/Fzm6um/xuYuVKxvJxxVL1naobaB5U/NhRUDdgvM5DkWH?= =?us-ascii?Q?940G2f8rSYBkuvGI90AERWDk3Zpp136YKixxWxPIO2MmE8Dg3xbsJixlOobI?= =?us-ascii?Q?G6aW7J6TMj0qtwubhgas/fWVYsx3dmjS2FfXQe6Qvjdyk6EQTIQ0eocdNrH9?= =?us-ascii?Q?gR0jVgJC13Wz0flijzUzTiKpTXlusSCGi5110jr7gUzg9bv4wr50sXn7GxH9?= =?us-ascii?Q?QXNt0sQQXcAJRFRuPcAluiaN/Tf5Ct07ohywBHbzcRiPTMyJAK411IvgHr2f?= =?us-ascii?Q?MOhTpY7Lzc/iiADmdwQSnkgoDVCV++gKTZWSvMRpRy/VNxsdSC47UmUSxMHs?= =?us-ascii?Q?ipyghOjROmY7GB62RMQvH5mrAkxXgmQVl8JTn+AsGIqc8EIdzxtvvgKhMepC?= =?us-ascii?Q?dj5QmlVBESUdaKq95E1fS3KoPoayCbhnLs7jzdyWqofXHqCZk1kLKrrqI9Oz?= =?us-ascii?Q?ksHgskuSCWaXqtgXhs1shIfi76C+3AVOBhcqbrLQ3G2Wl8j6KbzSGILNXUyZ?= =?us-ascii?Q?mmkUu9KjE3gChKHv/W7kZdOxtB0Vqn5TDTexlabpJzlcxTkA7o4V16RezyA7?= =?us-ascii?Q?gK+pZ99M/5WAo8hc2OgmfwcC5Yh2wAcpGEEwXFSjcU4juSi/CBezQLWLqDPv?= =?us-ascii?Q?s61BoYjUN3/+IljGIGRJdgQqba+j1WbXYgBhtVv5rycPcSws2psIVS6Cxs8j?= =?us-ascii?Q?NYN+MtzdjHlPy8QCLgvlBogj0ksTSoKQbsdyFhwIA2jSJZODJ8VHeXBMpmI2?= =?us-ascii?Q?b0FSj74JcReMk2s6JXg9zMRzTh6c/ykZITcUDCYDuyL+gy8z3zSnzmpwGxcZ?= =?us-ascii?Q?ocsrQZauwXyyR1qCSpYkRduIphayyO63LOGxIOjD5U6IA4iZhESSbBJRolLo?= =?us-ascii?Q?JuwBEW7nL8u0lU/f8NGmyT3LJKezrTJUkir69NIggzF8sxnWnarBmxPHw1ow?= =?us-ascii?Q?5O3vn2Dh3V5ELku+KZkFxpU67KIVbiIW2X0/JS0QgQqpeoDzADvkXlvXkxBS?= =?us-ascii?Q?mcVrmp4cActoajtth0t63Sd/QpkN/7Gz0vHmsXH/DNqX/+ybC0C6NtPPL2TX?= =?us-ascii?Q?+4UXaanPYn63EyLEr9zThO/3MkhRteDg31xOOCU7esv65Oj4q8gFMgsVMwgI?= =?us-ascii?Q?M2XCqQFUaloaxNc2A21Z4HuZPvCLjiPczHFTTI4U9sQoN1t3sxaSgoAev6ID?= =?us-ascii?Q?h4jjGEjuqiZ22apZ/1PvAXZVrCS2ZmhDh1lu+F0KPVwZFdn+b5gdtC6DCKtb?= =?us-ascii?Q?5sQnhuc8dy+P3w5O34yPm1hXbW0GfjdvxuL8EFGlI5+bnoB/7XF1G3i1euY4?= =?us-ascii?Q?DnXgERTzNXpCk42I9dJ9vM1kr3ZjZqhAOmOHTPgeitfIRGun3YM9UN3lIdUC?= =?us-ascii?Q?S1kqY73EEksOf/BJnxleP9U3UbuvmIEfc/DvnptKJISn3wIXUoRtANTEyDCw?= =?us-ascii?Q?E87/pccbUOgChRMW4Eu0A+PEaxfKKHG1S+znuHfsYod21dh2T5jUcSt/9EJH?= =?us-ascii?Q?mRoNxnjGCPTtOsk=3D?= X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:64aa7808-outbound-1.mta.getcheckrecipient.com;CAT:NONE;SFS:(13230040)(14060799003)(1800799024)(376014)(36860700013)(35042699022)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Dec 2024 17:05:52.7765 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a934a428-fdf6-4161-4986-08dd204f6538 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM1PEPF000252DC.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS4PR08MB7507 Content-Type: text/plain; charset="utf-8" This patch adds support for performing cache maintenance operations via the GPU_CONTROL.GPU_COMMAND register instead of using FLUSH_PT or FLUSH_MEM commands from the AS_COMMAND register. This feature is enabled when the HW feature bit (PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) is set. Signed-off-by: Karunika Choo --- drivers/gpu/drm/panthor/panthor_gpu.c | 2 +- drivers/gpu/drm/panthor/panthor_hw.c | 3 ++ drivers/gpu/drm/panthor/panthor_hw.h | 4 +++ drivers/gpu/drm/panthor/panthor_mmu.c | 46 +++++++++++++++++++++++++-- 4 files changed, 52 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/panthor/panthor_gpu.c b/drivers/gpu/drm/pantho= r/panthor_gpu.c index 9dadcea67a39..30dcb50409dd 100644 --- a/drivers/gpu/drm/panthor/panthor_gpu.c +++ b/drivers/gpu/drm/panthor/panthor_gpu.c @@ -276,7 +276,7 @@ int panthor_gpu_flush_caches(struct panthor_device *ptd= ev, =20 if (!wait_event_timeout(ptdev->gpu->reqs_acked, !(ptdev->gpu->pending_reqs & GPU_IRQ_CLEAN_CACHES_COMPLETED), - msecs_to_jiffies(100))) { + msecs_to_jiffies(1000))) { spin_lock_irqsave(&ptdev->gpu->reqs_lock, flags); if ((ptdev->gpu->pending_reqs & GPU_IRQ_CLEAN_CACHES_COMPLETED) !=3D 0 && diff --git a/drivers/gpu/drm/panthor/panthor_hw.c b/drivers/gpu/drm/panthor= /panthor_hw.c index 0fb3adc093bc..3738f7fd106e 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.c +++ b/drivers/gpu/drm/panthor/panthor_hw.c @@ -20,6 +20,9 @@ static struct panthor_hw panthor_hw_devices[] =3D { [PANTHOR_ARCH_10_8] =3D { .arch_id =3D GPU_ARCH_ID_MAKE(10, 8, 0), .arch_mask =3D GPU_ARCH_ID_MAKE(0xFF, 0, 0), + .features =3D { + BIT(PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) + }, .map =3D { .mmu_as_base =3D ARCH_10_8_MMU_AS_BASE, .mmu_as_stride =3D ARCH_10_8_MMU_AS_STRIDE, diff --git a/drivers/gpu/drm/panthor/panthor_hw.h b/drivers/gpu/drm/panthor= /panthor_hw.h index 3409083d09d0..69fa8f51a8c9 100644 --- a/drivers/gpu/drm/panthor/panthor_hw.h +++ b/drivers/gpu/drm/panthor/panthor_hw.h @@ -13,6 +13,10 @@ struct panthor_device; * New feature flags will be added with support for newer GPU architecture= s. */ enum panthor_hw_feature { + /** @PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH: Cache maintenance via GPU_C= ONTROL*/ + PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH, + + /** @PANTHOR_HW_FEATURES_END: Number of HW feature bits */ PANTHOR_HW_FEATURES_END }; =20 diff --git a/drivers/gpu/drm/panthor/panthor_mmu.c b/drivers/gpu/drm/pantho= r/panthor_mmu.c index 8a190dd2e06c..91c420538e02 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_hw.h" #include "panthor_mmu.h" @@ -533,12 +534,19 @@ static int write_cmd(struct panthor_device *ptdev, u3= 2 as_nr, u32 cmd) =20 /* write AS_COMMAND when MMU is ready to accept another command */ status =3D wait_ready(ptdev, as_nr); - if (!status) - gpu_write(ptdev, MMU_AS(ptdev, as_nr) + AS_COMMAND, cmd); + if (status) + return status; + + gpu_write(ptdev, MMU_AS(ptdev, as_nr) + AS_COMMAND, cmd); =20 return status; } =20 +static int unlock_region(struct panthor_device *ptdev, u32 as_nr) +{ + return write_cmd(ptdev, as_nr, AS_COMMAND_UNLOCK); +} + static void lock_region(struct panthor_device *ptdev, u32 as_nr, u64 region_start, u64 size) { @@ -573,6 +581,36 @@ 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 =3D CACHE_CLEAN | CACHE_INV; + u32 lsc_flush =3D 0; + int ret; + + if (op =3D=3D AS_COMMAND_FLUSH_MEM) + lsc_flush =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, lsc_flush, 0); + if (ret) + return ret; + + /* + * Explicitly unlock the region as the AS is not unlocked + * automatically at the end of the operation, unlike FLUSH_MEM + * or FLUSH_PT. + */ + ret =3D unlock_region(ptdev, as_nr); + if (ret) + return ret; + + 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) { @@ -590,6 +628,10 @@ static int mmu_hw_do_operation_locked(struct panthor_d= evice *ptdev, int as_nr, if (op !=3D AS_COMMAND_UNLOCK) lock_region(ptdev, as_nr, iova, size); =20 + if (panthor_hw_supports(ptdev, PANTHOR_HW_FEATURE_GPU_CTRL_CACHE_FLUSH) && + (op =3D=3D AS_COMMAND_FLUSH_PT || op =3D=3D AS_COMMAND_FLUSH_MEM)) + 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.47.1