Message ID | 20250414-ep-msi-v18-2-f69b49917464@nxp.com (mailing list archive) |
---|---|
State | New |
Headers | show
Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11012011.outbound.protection.outlook.com [52.101.66.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4F32028E5E8; Mon, 14 Apr 2025 18:31:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.11 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744655489; cv=fail; b=khNUbgx0hnqUELklh7I25MSMF6lYRz+++e6ZCDLN8L3lHRnBfWxN55e1JI0bXamw5pYPjMSmr7TaPAIhDZz02q3rtZa+kVsbvOpuHX+16I0+vQJ6zg1TEJEC2UpGiBbHwEZs9f42Hw4X//X94R5pPfSa1ZMGghDKICT6kBahYVE= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744655489; c=relaxed/simple; bh=p7gntWoxGh4gHuQtzBxv9euNYS3wHZIeRIkw2TEkLdk=; h=From:Date:Subject:Content-Type:Message-Id:References:In-Reply-To: To:Cc:MIME-Version; b=EcgoDhIufFKknKF4iYBwGVYpVIokwE+PG4Ta7B9J0V1yqMYXOkMvZuT9O9tEm0DLfrBbeeu4SwOXeMIUTMqYtGP+Csaw/N0jZ3nl1aloYs81ak1QvlIGj3FDo3W+GM8lIFE5V+4/eDmlU689sKXoaK9arSjfKdANQu/jrBeDCwc= 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=UpxvSlVU; arc=fail smtp.client-ip=52.101.66.11 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="UpxvSlVU" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uKwZfQgY+ieqsCQHiF5K33YN1SRhO4NJ5m/edG2chW4oTy8oiwL9leuU1vXrhx8qUCTXnogxq8+V/IWaSWpD+/bbdjf8nZRdA3H/9lYbKEEhii4aZ2swxwAklSg6uHKU2lcbSHpHH9C9WiE9b2NlLHKhetLZouidLugMk5YaUXwL4q7HHZbIQHL5vxhps/77d7LaTI/ofqTAWlq2inBXZzEcguUIAjpoc9+uurK7foFNghkMuoFKGY5eNx/S9iBAGYgvvuW83C6gfz2ioIk8CNBJyFoq5SuEAYeil5S/jOqnYinoKvLdAa+e37DDeQKLwQB6+qQmpBm0c8UPiTj28w== 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=GR0Z1iTOQebA6NDkRDEaFkcBL+OLXn2bv7Llb/KWBuc=; b=Bq7nA7MiFeLDS16k9ozv11HofapcU4CK9PoOWKqMKDxRWzC9tYyf/CxXN/M65h0c39BEDWdlaZJyFPAZmjvupwk5qyWtDuWN1SEN1qeYXr3+YaK5DPfz3z64Xbfd8zkwotIXk/mXmpgS8VAzRK1gTO4KDxwjPOZvM+nxD+aODKerH50xJcUunXaW26kPFnBNQnabFSCjoqS8LNhJa+zRM/BVObi9HaS1r2BH7vj/yrkumuPJJdCoBhr//UEOgrwwHRUmy/2r0jzlbId4h5J7qOUJtRISHTe2f37Cue/NnM9tEEw+Qv4acW6SgLXapsNGZgSA73g0nfFimfyeDz/JGQ== 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=GR0Z1iTOQebA6NDkRDEaFkcBL+OLXn2bv7Llb/KWBuc=; b=UpxvSlVUHjEkscH9D+La8hWIZeXZd/N6xgB56RMA+tsuJ5f/2zmGtjnPc716QAAku7qH44ZeKezPjyITuTmwj7X563AxnV1OPLIbMC69TeR0K2Up3UrYLNuIbJz9FkinKDcHB/Oge7unkzNSvs1CjmSU2YWQ/PD/f5DZHC+5AHK6QQSkFy7uomaB7Vpl9V/BE5SuqX6pKaVsyOWuaQLgoU1KdF4xvLrgvbxv18Dw61miyKT3P5e3z9Ltfousua8xQtOQwnHKoWveswtvWzvvMJ+yhOTC2bSoa3vYZ6VSYbzsZZ/tKEbvGP5jBOFpxaHOc/MN788og4yPXZhjhbB0hQ== 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 GVXPR04MB10245.eurprd04.prod.outlook.com (2603:10a6:150:1bb::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8632.33; Mon, 14 Apr 2025 18:31:24 +0000 Received: from PAXPR04MB9642.eurprd04.prod.outlook.com ([fe80::9126:a61e:341d:4b06]) by PAXPR04MB9642.eurprd04.prod.outlook.com ([fe80::9126:a61e:341d:4b06%2]) with mapi id 15.20.8632.030; Mon, 14 Apr 2025 18:31:24 +0000 From: Frank Li <Frank.Li@nxp.com> Date: Mon, 14 Apr 2025 14:30:56 -0400 Subject: [PATCH v18 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: <20250414-ep-msi-v18-2-f69b49917464@nxp.com> References: <20250414-ep-msi-v18-0-f69b49917464@nxp.com> In-Reply-To: <20250414-ep-msi-v18-0-f69b49917464@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=1744655465; l=1874; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=p7gntWoxGh4gHuQtzBxv9euNYS3wHZIeRIkw2TEkLdk=; b=t87vp/iAJ5+ZTIxg7gTHu5pYJEUnSrZuJ9oWaxM3zOmy/1v7XWE1vGROL331Er1Z7obs7OWWC LWwJtZ0VOkkBJWZ972IZ7dSMY8QI1fVGhRzg2gTN6OnvOg8XL3HZWy+ X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: PH7PR17CA0021.namprd17.prod.outlook.com (2603:10b6:510:324::27) To PAXPR04MB9642.eurprd04.prod.outlook.com (2603:10a6:102:240::14) Precedence: bulk X-Mailing-List: linux-kselftest@vger.kernel.org List-Id: <linux-kselftest.vger.kernel.org> List-Subscribe: <mailto:linux-kselftest+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kselftest+unsubscribe@vger.kernel.org> MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PAXPR04MB9642:EE_|GVXPR04MB10245:EE_ X-MS-Office365-Filtering-Correlation-Id: 0ebd285f-6204-4dcb-03ff-08dd7b828fb3 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|52116014|1800799024|366016|38350700014|921020; X-Microsoft-Antispam-Message-Info: =?utf-8?q?95D0hoeis4BDCaunInV5XN31wen4+xA?= =?utf-8?q?h1qD83hr8zrfmzNkU+9GldFcK5NFSHZPbDbHHs/A320CEsSzFweWCHSRcQqzGhcoL?= =?utf-8?q?A2oQNbUtIslVNHnfONx1aYCbES80fOyZXwuEakXJLMJMr+2FP+v5ZxaT7yMIJ4VqJ?= =?utf-8?q?zOKnLBCHVnmKKLD776DjvEs4qYe/NIyo41dFOu7OY8zUNj0Tfn0mRvC30PuC+de4F?= =?utf-8?q?EVZjS9IS2Lzjl4d36HmNRgsOcMtPM1FroCs31dzFMe6MRoRvuMuq2vU6N9eNLj9ww?= =?utf-8?q?xb8xOB7yWEVshfU3T902np3Ah2RCTiynoet/IKqxUaegnrWiuCQVEr2qZ3PHc+ORX?= =?utf-8?q?Ji6cc7hz1PobqNkHZewfo97Yg+4cGB4XrR+GVJDZ/jbD2JuPG50lopu4sYnbJVkr/?= =?utf-8?q?IW9sOAcj8IckpQoHxtQzLNvAT3bw2aB7Iz8vMUi/Qo9ia3YAYxM1x1bOJC6CMJXNk?= =?utf-8?q?Nqz1ylEN2O7Gd96HZsWLA7kneU6a6sfbNN29+R2WUjmS0+npIgJXpl6Q2nUKLDub2?= =?utf-8?q?5PYojt1YwDL63EN9XUJqJQpRA4/1nkqfluMv1FL1Nfhfp8cG0fWXxe2b8R0lT/lfO?= =?utf-8?q?SiSpgUiPx3HudHvZ//L5haRpOVEUFbf7zBuHyVeAnF5ZU0Bt8XS/943wAW8zTrUJ0?= =?utf-8?q?FSjnJ6D6iknuvRDKi9wYqLlOvisEXfZnRgAGkW/FYQ4BlXhZA0tUgki62kllsb2ok?= =?utf-8?q?Ft8Xyh0bBqPXutoauU30Bk0y/kXErbWLbUbf55cP0qd0AWWZVWw6mGhJO6hO7GptW?= =?utf-8?q?Ejev7yZnV3EeNI1hTvvbZefmcgNDbPu8JNZzs4I0R7zzqC6uQ7/r/yvQSp2eKmFij?= =?utf-8?q?wiCx+1RSOByVXNXHKrXA33ICQtXqFkDDFS1LKs3gXfBaQgkW7GPChGpr/81CTzn/r?= =?utf-8?q?Y0FfNAllhnm/pecp940IUtkfXO3iSlYV9g1qqkJeH5oYtLuXRoQxpeJJOlFHgSLSC?= =?utf-8?q?UceTX5l1lPl6OcB49kKLgCObjFP9L9wqNLD6oGdbdb0xSpcNcwC3/hQ0OIt2cpade?= =?utf-8?q?/v/LQvs4v9BmYKfpgkK2sYKhu9V3ZyLc5VfUnjNU+zZZ+MYpi97kI/4wH2ZmC7r5V?= =?utf-8?q?zAMupcaCmEoy7UyYKvuxtn7bwCA/uske00D0TIIFkIRft4JD52t46fdR5DD+nLlF3?= =?utf-8?q?ol4fxs4mKT6BjyS4yWbwqBLYE+LdBwfieLcFy310FDYhhLHT4JmcHudDovz/rTRU7?= =?utf-8?q?RO1Qdt//NkxTo05zwKla3Txy8wdQd8Kqklm/+Xb+J5XupB3E27iqiEirnoMXoo0rV?= =?utf-8?q?V7LgiOo0IEPNC5tpA7hrsAUE+MTbUD5op3Cvtx8PO7bJAYhwIGWonvCMgUeXCiFOC?= =?utf-8?q?fAv7agmrHwUeuJZX6osSWShFgAZG7FZqbfem6q/bEfq3CYSZ3LWvXLiJhG7J9NNx2?= =?utf-8?q?sXGQCleQ7xJyP1fKNonR9tCYxqFXm1zFMQh6nngqwLv0BrhFH0GeW1DdVLiYYUIwp?= =?utf-8?q?85sBYOPqtz?= 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)(7416014)(376014)(52116014)(1800799024)(366016)(38350700014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?qYaOxCuGia4ohMrHN0yUpFeph3Fn?= =?utf-8?q?wdvCdFFfDa3S/XIGpgDCWs2svz2q2qniRxzoqt/BJNVQN9MOq+nLbjaqNeo/PGvLu?= =?utf-8?q?8QPsNoVAyF6badKHlWUMZyhYZDUrn3eq2RDjBCUG4JTSg3ICq/PeZBU7Zzx2JtdqN?= =?utf-8?q?Jz5xFjWlx5Sq1GMAGU29SSVrOjcyTb/2Ks7/XaAZGFKazo86TXaYcunb9viMQ/c7b?= =?utf-8?q?vcxKz3FQrQJD3OHHLvAfw1pfPDhKwM6Y8nkDDb6eN0fJ9mUzd1Ri6zR/0UWk6uhJv?= =?utf-8?q?gZlEhlFZc88xXuFyJBMzEzQAIWvN80Jtvs9DFGzXqqyUYmYG7BfFDSAXEeHQFK/k2?= =?utf-8?q?4qxujs6RQNusvDC7akEl87p5Ffw7G6BXcqve/IkLRrC2lzst6HaP3bLaK18JTtVsY?= =?utf-8?q?nV/62C48PyZFP4XfiI7aNdAKjoxHH5M/2PXs8T68Aoc1bHkYwNTz6AVsOxfPcgyvc?= =?utf-8?q?hmq7/R5TmVXBwFKku7cNSWNnlPDK2p7EJfy/w5e8NKQeBpdOEcRnLq1gKEkKanR/3?= =?utf-8?q?GqCsAz+8Yrk04ENwer6Ipoevy1s9+Mr0B1O+rbb8H3seZDh73cQLS2ZieyyvKzLzp?= =?utf-8?q?FE9ZoGsfKNORDH8WYkezgseg9X+heB3NoQHh5v+J3XB8OIThZOYsXsCBOaOrtzJHh?= =?utf-8?q?xzMcRitWJm0eduwYAL0I4iP0KAXsBM/25T/PgJEJG64/p6wdGuIzeLd82vmh9GfFg?= =?utf-8?q?sjbcqG/s+ribdhslZMUydWz5QIxAp7UF5shP4umPjwFP/MwuCjIDRqo4s3s/Um6ZT?= =?utf-8?q?sMEn95gH0tZOX4rpt4/mdmEmvV2McpBYzlNUtTgTNs9yPnk0ow63tqIjSqSFVkjq+?= =?utf-8?q?i2Po3xDkB55NlaRL5sMEES66uSLvPWwoqcEEiI0bmF5Zt2+YIUnUHB0ElCLrqa4MC?= =?utf-8?q?xkzT1gUyr+nrIXldk/MNlDF20vyxyhlC6Ws1VlRcKRtOAetYyum/PcN0PBs48ZrQu?= =?utf-8?q?etkagLlHalPXYGz3xKEVU/nHVcIp6UeI70T72LXc3mUHuULGJ23/9OCh+DpIZYFIc?= =?utf-8?q?no1D9h5/FvJhnkKJtJ5GgM+hSX8PENogVkIXCgfWZ6a+LZDnNZ5enlrQ2q0hsyFp8?= =?utf-8?q?GoRMbuduwLWYkMcP7Rw9HUdZ14cuNaMnEwa+a/6JsRT5lrHS7eb+WQ67/HR3TzSuS?= =?utf-8?q?EFFYZxEn+OXSZ6RtIGjzuycVvsbeSX6MWvyLvVW53EP+5hz4GhiOon/dm634e0fkE?= =?utf-8?q?08vMFp6peA72aWIROba98A7H46YXAHuW5rJ6N79vsPY8i987zovoWfLiAGW0qGj6U?= =?utf-8?q?dFXkklvXZp+e2h0coBDhBhQwHn/XGykX5EBkt3O8Hz63l5zzUhHCVpe+84x0li8WF?= =?utf-8?q?QZgWf6Lcl5xOca9yOUAC++lBPAQYg3cfnWCydJp4HOIasS2+fZ5tdHD3YuBNClSrY?= =?utf-8?q?R4Tv6y/R8z7G44jEiaVq938Kd8aaHJlltCbKEicHfd6eh9LcRvv5n49cLuVYasesO?= =?utf-8?q?1sU9MccWxFFpSU2OpLpwt5W+VMPxApPKVE3im+OXg+9Bincc98FSTIPo=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0ebd285f-6204-4dcb-03ff-08dd7b828fb3 X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9642.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2025 18:31:24.4893 (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: cBTu83cs+T58p/eJT6yBU0lh3qVWgvWxa63XaeAttS7q4Z1nW1iN3boMkK3z9SHEYuGDFWFbqOGrwoH8bi30Pg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10245 |
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 33ff41eef8f73..86222602744e9 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 @@ -691,6 +694,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 v14 to v16 - none 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(+)