Message ID | 20250207-ep-msi-v14-2-9671b136f2b8@nxp.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show
Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2054.outbound.protection.outlook.com [40.107.21.54]) (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 095E619CD13 for <imx@lists.linux.dev>; Fri, 7 Feb 2025 19:40:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.21.54 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738957231; cv=fail; b=gFwo8+sWXUTGavCw0Nf87FFP7vvf9dTpT1IShhwyxdcTO1gSNi6ooNGSlxuV3z2+k7ndJ48lDq2Z3OYGPBi/lPGyma9xmIzY/9eNuRS9oaTEvWobE2K31i5DFMMFMb/6h9xcbkRzvNK8DreP9lcVji7jz0eXI8m4QURyaMKoJuA= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1738957231; c=relaxed/simple; bh=BBPZu3vM3DS4Et+u/pFNZeWalbpZcMbz4adBAMaEmPc=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=akEMddjxBMoLZHtY5mWJA9/XwJ4xf1Z9cqxRAxtKZ1iTZ9np7rEDZ95MvFeTSX4iVf7x7MrYUVCOzYLZOy47dpzEA7nNhjqerZ/qoFL/OesUmUHghHzNmvWEBj8aMhkbG7ytcEEz5hPyXZYe66D6RQknu7eLgfy36GSyH48YbLk= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=AZmmFaj8; arc=fail smtp.client-ip=40.107.21.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="AZmmFaj8" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=eL3f5DFWwo0yWl2QYjdcjQC5qCsJq4N/gSgfLtnOOgiJJwSRI3dJ5bVH/nfJzq0N1G8V/UsblgaX8KhH1v9CF/+btroZ9/brj9Mq7zmbrNTaIe1O9eJG/VovgUrBz5ZHbUXDBZRkwM1SvMbBEH3J6fyNcKyDvXH1g3Jw7w100lS0RBU71ExEfPNkM0wzQEsi4dRBzEMYPiYT5QC8vzGNwHMrNxOV55XyxxngJizecLOFKuv8f5JM/6pWB1ZQFkQNxrbv6rxGZO7zOL7iVJFFw/Msh6u/A8z6XOx5l+kIvoytfKmOa0+wzl6cuJ/6ZpN3WEhXvT4op+rpGMPTrQwAWw== 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=lQoMAC92f7OP+cMsgkFVAJZa8Gnf9lnYzg3ZbfrGcQc=; b=hnJ5tEoXkVzl6dTlj/k+wVe+A062kSGndMnA0My0jFx84S6N2AqSGfE0MqiYO5FJFJfSPTQFBEIhEzETbB06UlrDsujeYFU/mu6KrnHY7uxe/5Ou0TL1WnRduahBSSQcS6ZS8sUoAqnlE03WTP0gKaZmZYBE+j46D19jDRV6OGDeEtflOMA6mnbIaFq8jsAV5ioexj19fsRpNiBsjxjS+gUpMGcwGAHyzW2lMInPAqgj6CyUfo5O4+iYSFa0BM12njq8SiFZqtU7CfPALISwAfR0irjEtkOfm9hd3pgmi/U3vCX+VlOSxKmW/HEFPPdyhbpA5I/xPhrNt+DW17VAfg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lQoMAC92f7OP+cMsgkFVAJZa8Gnf9lnYzg3ZbfrGcQc=; b=AZmmFaj8ukfEpJ5CXO6xUI1VbHbzDjVI+2n6132uVlB07yqMpjJuPWod33gfepCugyCmqLBFzsqs5/h1K3TwQEzcv8dSrDqbwmat5A1h4/bZxmyBePRvSeJAUwlUiBo0k/Aw4iyGIc6fDue9OKNBLgnJcOSGP5wGlEYDoaOMviNrz166eW5qkBksGR/73QtGXsw/Bh4u9hjgqNZTheXSm/4QrZgsCHgPLR3TxYbCSyuBS+YTw8cakQmySvOJhVQXYikSOul6B5CWG9nHTdKt3+HZapBVQ5SPIWDnAkeN/NokggCRpIVqPgyqusS/y52FPVmfFAyExgnV6y92BhA4qA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from PAXPR04MB9642.eurprd04.prod.outlook.com (2603:10a6:102:240::14) by VI1PR04MB9787.eurprd04.prod.outlook.com (2603:10a6:800:1d8::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8422.14; Fri, 7 Feb 2025 19:40:26 +0000 Received: from PAXPR04MB9642.eurprd04.prod.outlook.com ([fe80::9126:a61e:341d:4b06]) by PAXPR04MB9642.eurprd04.prod.outlook.com ([fe80::9126:a61e:341d:4b06%6]) with mapi id 15.20.8422.012; Fri, 7 Feb 2025 19:40:26 +0000 From: Frank Li <Frank.Li@nxp.com> Date: Fri, 07 Feb 2025 14:39:44 -0500 Subject: [PATCH v14 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable() Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20250207-ep-msi-v14-2-9671b136f2b8@nxp.com> References: <20250207-ep-msi-v14-0-9671b136f2b8@nxp.com> In-Reply-To: <20250207-ep-msi-v14-0-9671b136f2b8@nxp.com> To: Kishon Vijay Abraham I <kishon@kernel.org>, "Rafael J. Wysocki" <rafael@kernel.org>, Thomas Gleixner <tglx@linutronix.de>, Anup Patel <apatel@ventanamicro.com>, Kishon Vijay Abraham I <kishon@kernel.org>, Marc Zyngier <maz@kernel.org>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, "Rafael J. Wysocki" <rafael@kernel.org>, Danilo Krummrich <dakr@kernel.org>, Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>, =?utf-8?q?Krzysz?= =?utf-8?q?tof_Wilczy=C5=84ski?= <kw@linux.com>, Kishon Vijay Abraham I <kishon@kernel.org>, Bjorn Helgaas <bhelgaas@google.com>, Arnd Bergmann <arnd@arndb.de>, Shuah Khan <shuah@kernel.org>, Richard Zhu <hongxing.zhu@nxp.com>, Lucas Stach <l.stach@pengutronix.de>, Lorenzo Pieralisi <lpieralisi@kernel.org>, Rob Herring <robh@kernel.org>, Shawn Guo <shawnguo@kernel.org>, Sascha Hauer <s.hauer@pengutronix.de>, Pengutronix Kernel Team <kernel@pengutronix.de>, Fabio Estevam <festevam@gmail.com>, Krzysztof Kozlowski <krzk+dt@kernel.org>, Conor Dooley <conor+dt@kernel.org> Cc: Niklas Cassel <cassel@kernel.org>, dlemoal@kernel.org, jdmason@kudzu.us, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, linux-kselftest@vger.kernel.org, imx@lists.linux.dev, devicetree@vger.kernel.org, Frank Li <Frank.Li@nxp.com> X-Mailer: b4 0.13-dev-e586c X-Developer-Signature: v=1; a=ed25519-sha256; t=1738957203; l=1840; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=BBPZu3vM3DS4Et+u/pFNZeWalbpZcMbz4adBAMaEmPc=; b=IUL3FPHhfjFlN1NPgxI2rsrL0VkYbNy3xeeswoRNyi4gaAy2x7mUaqXDepvlDl9ESFZo6CsJr B3SoDzBSCGiAmC/oskogqr1AHDVQFGM+y5aevGKPYoSY5ktSRP3RNCn X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SJ0P220CA0004.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:41b::9) To PAXPR04MB9642.eurprd04.prod.outlook.com (2603:10a6:102:240::14) Precedence: bulk X-Mailing-List: imx@lists.linux.dev List-Id: <imx.lists.linux.dev> List-Subscribe: <mailto:imx+subscribe@lists.linux.dev> List-Unsubscribe: <mailto:imx+unsubscribe@lists.linux.dev> MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB9642:EE_|VI1PR04MB9787:EE_ X-MS-Office365-Filtering-Correlation-Id: b9fb78ec-0b47-432d-f1ae-08dd47af453e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|7416014|366016|376014|52116014|921020|7053199007|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?zyxljy8opDQcwELPhBMz8Grbbw6oc2k?= =?utf-8?q?FtJkW5m2rGqbA9gSUejPx+4c1TGXSkceXywpF9wZKU0ZehffqNFSZ4gGcfRFHn1n6?= =?utf-8?q?YBgudVJsz9IvvXK7wr3B0O+NYtlBQ6ghhLM4z18JhwYiOnjjtv59DUcrhGKg1sW5N?= =?utf-8?q?hIcwZwDNA9qB0Ek8l0VP9K4G49ZmCxsCE11EIlXsG6p0LvvTANKKkwlTrQT82xVCa?= =?utf-8?q?58l1jrZO/AKuwQJkGQf84LQHcCqbmYTE7xglRqE888geNHpryF6xCpYby3S7W1qnQ?= =?utf-8?q?TUhqcnjXbo0kirJJH97v9WI8FmjICBU4HlX91qykhD8043zhcnCYjePYNV7MFxF47?= =?utf-8?q?6M2pCVjmKLzDY20JGo3KCbG0fjJiNk78UKDp5ZctjEZS3R2McYwem/QX+cbtPza4N?= =?utf-8?q?dKBFNCrTcROf8ruRpruoQhkbxKVq3G2CFg0edr4km7EWuCDKucFVkVX2ND1qePd/p?= =?utf-8?q?xmcYErdlDWvUd68gajEjhkwc318mz35D4Avt8I05qubJKcikw+4pF+8h3U8ELPw0N?= =?utf-8?q?r8416Xtb9IvyMCSZdq6tNRB2/Q5XW+JvmFl9+EWV8OEOLYEhZc4FJRSYUGfkC7/C4?= =?utf-8?q?5Ygmgs+VruZC16qlYj3FMKPrfR4/VZhqo1esI6aLGecJASLHQU7EQP/vBsfzBEVqv?= =?utf-8?q?RiFVqwQFpfEEUjz3UGwW1CeSOVbegJui3E6sjNaiQHgu1SWY7TmzaXk/PG5q1bzPb?= =?utf-8?q?BBeGaJ04oKAt+qHlgFe9oN3/jIl+kPZ4GbqAICvWyd1LfsM7w/WrKKB0nNi690NqR?= =?utf-8?q?BNnYLwaSKqpYR5H3EIXmB8ZJcUwCN3TQ8o2FwiX/NraK1pf+vf7FICwXcO+siJJN8?= =?utf-8?q?zDwzaa8PMaLfc4hIfWp/35x3HEs7kwWeb1SYXB3sEWQQY6l72lNw7i8TJtCqBTLIq?= =?utf-8?q?4mgfPBOsRlmpsIdbqGuoSkdvosXe8FDOVTAdiZADytgzcpjrWA5XUUq0UcfB5zEV/?= =?utf-8?q?ZRHZYVTgWaFIacDsOmSflPitJV0yBoCTvHUhYnK8YV0jULkbDugqFk3ZtfjySMQTp?= =?utf-8?q?Iv65QwIS6lTVOcdJyyQKpWF4lzBJllj4jXMPTKGthw7LPTJvx4Tn7GkHOefL2d4Uu?= =?utf-8?q?gmjMPuBWfYDqKhP8iVC41S2dbpCUkSVy9gPzVIhXHxwk2VQ7C8UIY91hsGCLY1BLe?= =?utf-8?q?YddGffjoetQHR1eailXruxeTpDDWCWwEI6QBTMgIoI5/boQP1ogOqv5Pn5T93sFrK?= =?utf-8?q?A5sXeI6oFkpzgrD0XcW++27fo7JATNJVZk3pC4zYIx34Plt60pqqJ8INEpa/XVEEs?= =?utf-8?q?DmhRess2QZBx6z+cFwIe9/9gHCkbtdfiI8x5+5H3yg8D35s4MhlNNoWVbJ50nfUVh?= =?utf-8?q?oEfD1hdQ8i9xb4JPNZUb/udl3e4DOf3eGNVqZevwemR+WIhw+2+3OoiT62F77ym+Y?= =?utf-8?q?ULT0z6TO3ywUthvrIMRXqnAJiZCST2kow=3D=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB9642.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(7416014)(366016)(376014)(52116014)(921020)(7053199007)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?7H7PTh8qzKxrlefLPeLMWMztFmUx?= =?utf-8?q?2sq6dZLxKgmYl5k98R5ERiBkuxeZhB3mbdZu2fhReuP/OsnN+VngFnI7SmipgjODf?= =?utf-8?q?IJvYBiYVUP7riqSqFmeIUHIpsf1qsqa6ziY2eD3bpWfStLflfvolxW2fkE0VgmzCz?= =?utf-8?q?9ZSbaPbRqeEEBEfuIYxAZR7HI4UA3N7jEdl3EqOopAajZmmk/n2kXTakwAHDodNEB?= =?utf-8?q?pG6Q+gptYmErNLU0lTOuykc7tZ2SKKJ/tASWO3+iAc3aj3YctAwUeeMwsKau26JkB?= =?utf-8?q?fGPl7msfWTkd544nSAWA4WQAirEBwPD467x+N10hjnm6ifXrUlDSZuq3m70Jh5ik5?= =?utf-8?q?dRChSKtiYF5nOHpMViQpY+SUSHpFeGPMc2YhStQwDyzXpAWWvYRmEdlVHZFaoLiHl?= =?utf-8?q?eV9uP7Onn6NjANK11GEkQq5ZBIyf4EBRmqCNdtfvhnD+TzWNnfTKQqoGkXq1kXq9J?= =?utf-8?q?PmLvR9aOHSslWz65SaYkNhGxaeanaHKZRkCl+4e9CpuCkoJwuEnzsa4wxfMIzAzvf?= =?utf-8?q?R6TcIq+YP5Oba3NoU93AENsEUvbalPuPtuJhNN2yd4PoUpeW+Yi0aSKe7meq753d7?= =?utf-8?q?YKnGm22Sal+vzP2aFIjNGUVsP+7TuZ9+sT3aaUbVpH5y7BNClOGJLa3QAiZn5sB54?= =?utf-8?q?9qIfJnjsVW4KUZ+d3PdU2TyMDtHim+I4shXtkxlj5WIQM4wlV1fe1DmYNmLzfeCdI?= =?utf-8?q?AGB4hYsQBGQzDjvQTXJjkpReePP6AO67aKmNmT8+BpnemXSlFLr2QOOgsvaePGKoV?= =?utf-8?q?9q5owOQYzSI9c9nODoh1VdQhCdGNRtnY7DgSZKRHPAitKyT4L5cX5C02DdIIcF9XK?= =?utf-8?q?FMdCWACWWIAuE47CW3qsL0lSO4EgZEVPCfJwogvON+v4bE2+AU9y/vtP5e/HUgSEq?= =?utf-8?q?8e0uF6+PokuSlx27flLRl0Hx9InsiY0FK5MWUaFmqs3NxvBjloKTk7v2iy8NHzAi+?= =?utf-8?q?kNiyZtMLQiXaTgPXNOvrJYOgKQd01Tb7zrLhjHzeQnovjBF8c+5Vj7KaTt61e+Cht?= =?utf-8?q?1sQ9TOar4nYqimW8GlnqNWhqXSaFNT5j/xELpoa+9nB37Fo9r4pueHGSA1D185BxX?= =?utf-8?q?EIDecs0f/i8zhNyX8wakRlgjRfRZHlUZ9MZYn98w+zRxp3C6TeXW9NGO1+hAp73uV?= =?utf-8?q?dMyHPb+RHra9p5dx00CkbsdZDvm9GfDmxVYrF0U8oet3xi14pwVAXRg6JkgP+M0l4?= =?utf-8?q?vHyEec+HMra++3EbySepfG+5TlTOke+EPAprvqK20xO68nSyqaNAT4vHKWmFtkchn?= =?utf-8?q?/W9P8W+tFqpxn2c+ljU3ywy9gj9Xn35J+5OiwbOq2fltVSNFHltZeVIUUY15kvGvl?= =?utf-8?q?5+eY3djBpat4+rv9anVkRU16IqMlFhhigeBHKKJlCl0HkOvUo+3DbeRxx2ppEnVr4?= =?utf-8?q?5nNMVLRKeu3xDsB/zZvj9EysOtirz16OyO7sZni5sv+IkxHld2/vlhC/4+fEJ2osM?= =?utf-8?q?L9NxLjpf/7JLA3b9xCPZgOeMUzxgta1FUW8EAxuR853gWfdLJqK0hEdYTFrO/TH0T?= =?utf-8?q?8RE2WF4JNHP/?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: b9fb78ec-0b47-432d-f1ae-08dd47af453e X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9642.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2025 19:40:26.4244 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +cBQ+LAgri4KcMcOZkiglGbWoo+GqYAQzQly2CCZJGjiB/apq6aEeAwVK/l5hRUb0ZN+iqLFYcNmc+jzZWy5Rg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB9787 |
Series |
PCI: EP: Add RC-to-EP doorbell with platform MSI controller
|
expand
|
diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h index e432b6a12a32f..3dbe05d8740e6 100644 --- a/include/linux/irqdomain.h +++ b/include/linux/irqdomain.h @@ -231,6 +231,9 @@ enum { /* Irq domain must destroy generic chips when removed */ IRQ_DOMAIN_FLAG_DESTROY_GC = (1 << 10), + /* Address and data pair is mutable when irq_set_affinity() */ + IRQ_DOMAIN_FLAG_MSI_IMMUTABLE = (1 << 11), + /* * Flags starting from IRQ_DOMAIN_FLAG_NONCORE are reserved * for implementation specific purposes and ignored by the @@ -692,6 +695,10 @@ static inline bool irq_domain_is_msi_device(struct irq_domain *domain) return domain->flags & IRQ_DOMAIN_FLAG_MSI_DEVICE; } +static inline bool irq_domain_is_msi_immutable(struct irq_domain *domain) +{ + return domain->flags & IRQ_DOMAIN_FLAG_MSI_IMMUTABLE; +} #else /* CONFIG_IRQ_DOMAIN_HIERARCHY */ static inline int irq_domain_alloc_irqs(struct irq_domain *domain, unsigned int nr_irqs, int node, void *arg)
Add the flag IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and the API function irq_domain_is_msi_immutable() to check if the MSI controller retains an immutable address/data pair during irq_set_affinity(). Ensure compatibility with MSI users like PCIe Endpoint Doorbell, which require the address/data pair to remain unchanged after setup. Use this function to verify if the MSI controller is immutable. Signed-off-by: Frank Li <Frank.Li@nxp.com> --- change from v13 to v14 - Roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl-maz@kernel.org/ Change from v11 to v12 - change to IRQ_DOMAIN_FLAG_MSI_IMMUTABLE to minimized the code change. --- include/linux/irqdomain.h | 7 +++++++ 1 file changed, 7 insertions(+)