Message ID | 20241116-ep-msi-v8-0-6f1f68ffd1bb@nxp.com (mailing list archive) |
---|---|
Headers | show
Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013004.outbound.protection.outlook.com [40.107.162.4]) (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 30CC516426 for <imx@lists.linux.dev>; Sat, 16 Nov 2024 14:41:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.4 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731768067; cv=fail; b=NPYahROUB2NKuGfjVOHm+apZasZphIUiwkGUFzDgHoBAPf8LlKpTGHXyZ0AI8Y4Sy5V51E34FVaMbPRXIRCuDm+0jbVtS7iLuW4Yy9cOupyZmn/OqycTzeAuahLSUfqGXUNY4LLoBCEiZ++cTbwevmo06cJ2RTsX8CEPB8Z7yuQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1731768067; c=relaxed/simple; bh=yquequOPIQiT6wZB6qhSoTflK/T87agYnvYLNWlTFQM=; h=From:Subject:Date:Message-Id:Content-Type:To:Cc:MIME-Version; b=b5FQMuoKzw5XuBnXzF0fjYI6sqXphzvSQtC85VMGBVpZlXbaoY+bHeWFPecoYKssnkzzRokUL9Q8/AOu8ceb01ir4wuNrBwZqsF/OWJIX/rVhzOofYsUqK7ixW5j7VU5/qvqvm3Jinl1BlD7FW4QDe/bM7Wq85RJjWw0dDNqW9Y= 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=SaVTuKzk; arc=fail smtp.client-ip=40.107.162.4 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="SaVTuKzk" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=No3X6IsVduHkt32Xqe+DXlCFtHvWBlfOBR8AzNxdNhXgaTVV2GXJOyEVxa/fRccseS2e0f3vZ68XH7o3sYsLmZQsAipE8YmFcDq2pGroOU0ke/GElxmOG4Yq0soCJXfGwAYHrRQ5IioZkGAe/SQA3jZSs4m5B9gN+hjrNUk9PPvI3NYLa7BE0IxkvefgNAmqXI5FPCOBq70FoB/zFm8mWLxYD6OYlUZtuuLP1PXe7F7MgmFBH8fyEXZ9mj6vIHdD6E9aqnnwsoqn42X5NraZEQzTLmmJyWtaPMQJ80xLXHbcCad6GGOfMAMejbyKzngQ3pcPJmsu9Obx3TEY7rg34A== 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=WWKDVRAZ+KU4/SVDF3SlXfqMf4fm1awq9iKWr/YrbrU=; b=a8kw+F+1ZrhoAiftz/Hw0OPl0rsTDS/Jc5+8CY0b6lQcwzArvuXKUqZYDaiwcliHCZKqBHMEkww7A7GdyOweeMhNm72Cf5r2/tQGkEJa1iY6OAScrLavWDREWfP19rd+HLgdQXfTyE0X0pQ8fJ/dB1X6xms9YHvivIAauemjYUuBWRWpFjyBPqulpUEfnajWw2kg71A9STRjK207cQdpmlVGIp5ZE1eTrSAmIfaJOcEAJDG/4f5PUMxlKKxmViMoVFF940koUvFE8edfPGyVg4I14gdOnmHBzWo7e0Gt4KsN56N7P78HpAM1G/KYvyt5fv1JIMwBtYuvKbkb94HZ1w== 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=WWKDVRAZ+KU4/SVDF3SlXfqMf4fm1awq9iKWr/YrbrU=; b=SaVTuKzk7289dNmowJ3aaN+rGgnwHOw35Vnu3E1UnAc8St4xpZcw4MqUQR6Z4Gyp+mflrLG06JGcwOxDRLirrlLkxmeDdzClWvl6UQdSxVUv5diBptRVgGM2oDzob/9aTDj8xXg5awxMWcb0WVHYKYbi6Yt8uF/0OnPZtZFOWlixy/RrpoHjdvKFh56hSo+o8mxuyi4ba+41Hq8mLBAUsUChUCdyHxOmYU7SNJLFNO6MIdKk7+ssgN+baEk6rLvuuW8KjQXLJBbFLWMk3hjz8zAUXZW10ocx/d0J/32bx+y7NuAWfjoCu1FhpjU1Nu2cen1/rTkou9fKDKKRnrmmSQ== 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 AM8PR04MB7265.eurprd04.prod.outlook.com (2603:10a6:20b:1d8::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8158.21; Sat, 16 Nov 2024 14:41:01 +0000 Received: from PAXPR04MB9642.eurprd04.prod.outlook.com ([fe80::9126:a61e:341d:4b06]) by PAXPR04MB9642.eurprd04.prod.outlook.com ([fe80::9126:a61e:341d:4b06%4]) with mapi id 15.20.8158.017; Sat, 16 Nov 2024 14:41:01 +0000 From: Frank Li <Frank.Li@nxp.com> Subject: [PATCH v8 0/6] PCI: EP: Add RC-to-EP doorbell with platform MSI controller Date: Sat, 16 Nov 2024 09:40:40 -0500 Message-Id: <20241116-ep-msi-v8-0-6f1f68ffd1bb@nxp.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit X-B4-Tracking: v=1; b=H4sIAOiuOGcC/13OQW7DIBCF4atErEvFDGAgq96j6gKGccMitmUqK 1Xku5dEiuN0+UZ8v7iKynPhKo6Hq5h5KbWMQxv+7SDoFIdvliW3LVChAQVK8iTPtUifDMWkdYL Eoj2eZu7L5R76/Gr7VOrPOP/eu4u+XR8J+0gsWipJnMmHCB1B/Bgu0zuNZ3ELLGaHNGzINOTA5 Yg5hIT+FdknAuU3ZBuKYIIFUlkp94q6HQLcUNeQsX1wiKwJ/33P7ZHZkGsom0guxj5lpCda1/U PktqD4W4BAAA= To: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>, =?utf-8?q?Krzy?= =?utf-8?q?sztof_Wilczy=C5=84ski?= <kw@linux.com>, Kishon Vijay Abraham I <kishon@kernel.org>, Bjorn Helgaas <bhelgaas@google.com>, Arnd Bergmann <arnd@arndb.de>, Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, imx@lists.linux.dev, Niklas Cassel <cassel@kernel.org>, dlemoal@kernel.org, maz@kernel.org, tglx@linutronix.de, jdmason@kudzu.us, Frank Li <Frank.Li@nxp.com> X-Mailer: b4 0.13-dev-e586c X-Developer-Signature: v=1; a=ed25519-sha256; t=1731768057; l=6926; i=Frank.Li@nxp.com; s=20240130; h=from:subject:message-id; bh=yquequOPIQiT6wZB6qhSoTflK/T87agYnvYLNWlTFQM=; b=QtDknoF/JUY7Wd4engzEBugHvy1P7YBFbWgNouZL+wFL2NuRC1wG/mXtoYTyXr4oswoWfCcok UOfm5+NvxDoAgO6+xFeEx9NfOepIOgJdHcCkqrkauL7Yp9PaKcTLaju X-Developer-Key: i=Frank.Li@nxp.com; a=ed25519; pk=I0L1sDUfPxpAkRvPKy7MdauTuSENRq+DnA+G4qcS94Q= X-ClientProxiedBy: SJ0PR13CA0210.namprd13.prod.outlook.com (2603:10b6:a03:2c3::35) 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_|AM8PR04MB7265:EE_ X-MS-Office365-Filtering-Correlation-Id: 48cb12e5-8b80-4cda-fbc3-08dd064cb0cf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|52116014|7416014|376014|366016|38350700014; X-Microsoft-Antispam-Message-Info: =?utf-8?q?LS42zDGGj06ZJkZ1arBm4G57lrC+8wQ?= =?utf-8?q?BxT50dsmW69cU3+eAd2Xm7JWjJKM2762KxK1K1XJ+Gy9vLAXAKUrOZ7tw4AsB4GXl?= =?utf-8?q?kWQRbRWwnxSB/vxdEEzKoeuFZNIveDeQvf7NkJtn1yZdOzHHrzOVvUH9qI55YqcqZ?= =?utf-8?q?1ucPGzZuyGMpyizMpYHXsP5xkb7gfWabVUPA9VuQNDcHviDneAH4BPXvbo08uffxH?= =?utf-8?q?7uW+x7N7Sefo3KpGmrsTP4BeDdGur3sT23tREKrzd6bVmrVbj5jl0hO7U0Ai0rCOt?= =?utf-8?q?URF0LQNV08wAf3NlFFBXAQN4S9OhCNkZfMxRxGKmFQdLC5Lrs98TquwpvBofx+UjF?= =?utf-8?q?jc4VbxA3T06ueXaE8l14gxKFMhMVL+AmkMBsGMCA78vckojKqca5SJD/cvU2auH3r?= =?utf-8?q?ThDqJy8OQVYywMXTz2xB16BQsmMbqyrvOD9zQ6y7dIASPo51uNjFFOdp3Sk8esWrU?= =?utf-8?q?/L9UMArSYzWAcB6NycVS75rJBBQ2FLo1Yq4Fk4gpFJv5zWxvwxVP0hT1ZlVS3fRwd?= =?utf-8?q?SLu6Wyh2OuUCscLIR5QadHid/zXDau9c8vIss74svR1YMsjEQWOP9q4GgdWsU3BGP?= =?utf-8?q?ssv+VGWgutj8L4tx1NunnZWYQM3F4NKdfjIxSlVfCE5bwgv0dHGVlRtRTdX4qJkmV?= =?utf-8?q?GG8FUfJcW+gVO1m+KbFOpUoi/VdU5liVY2aSBO4GR6RJdCquuw3p0P9owdyiDOUUe?= =?utf-8?q?c5RzpFgiEuThVdv4supRgskiUfjkwVoaWbBT70hx9aLUY8NtgKCNrEYCMhdEeWSv1?= =?utf-8?q?FiyEu10rsffeIuNsUn+8aL26QKKB/X/FPvFUZHjmbLz/WE1ll2pCMeExqfSp5dtsZ?= =?utf-8?q?vNZ9jNP7K9kfLbVgNXi3AvA2oM1u/iAWA6/DnMD6TUekP19tHUg8xHHC8r3WNP5iF?= =?utf-8?q?rSJG0CZ4mrdpISDAz+BFSgLRfacFyGrDj/QACqgy6+MyIQM5d3rbwjnIC42PYFhxp?= =?utf-8?q?Fbe4adYQlCRdid4/bTOrUMzyFmrElnPaA9yv3kX1GWIpVQelzq0uwtB9/uiuKPz/L?= =?utf-8?q?un2NbVBXO/7as1QiG4VvH9Bn3/L3Y3EMct9hB3SmvTEevOHfdqlzYX1jUegn0VpX4?= =?utf-8?q?GYWWQJAhhuyFssm9pVjPfQz/OGfu8wV9J1UyGLT7JviG6pF/QPJH66pQnD1HP2aq3?= =?utf-8?q?KSbJFelUsWk/s4hOQxMufsMKCnNSe2B7dWTHIDIR2BIRoAXr+UEsvT+EWiyqXDled?= =?utf-8?q?Mxt35REDCtGrfrS9fAP7Am1JOoUy5kpm16UNeB55klD4dt911+WQ2Hc5dguRysfOl?= =?utf-8?q?JOEshvH4OlvEhJzXoUIal5S4WMgzM14VqVOGPuZ9Sc0+XYzZfi3yQ6V0jKFHAQvFE?= =?utf-8?q?wwFj8Rdrji9U?= 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)(52116014)(7416014)(376014)(366016)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?ELdjd8LKTzW7Agb7MAiUJiO2/w8J?= =?utf-8?q?R18A0g00F8rPwGzhmRwsiLcLsKWqht379u9xxIzdRZZMjQbDSIgzrB4OBP4mI1yxy?= =?utf-8?q?Y/FnJHQpTHaXP7Dta9UzlW0B155E4oyCmdHhKpXysPwQVtGzFrZE7lY9v7Bbf5GQe?= =?utf-8?q?SLGh27I0Ln1Yh6MXU1OcO1ka9yudve80B2XwXcs7uw/JQK0HLlgCA99nIjiwO3AYf?= =?utf-8?q?Ada9xBAbRTcJqNu858w2s6I+ALJK2bLPEFEwz/g8rR3vMy6TYJgWahA9itlF84T38?= =?utf-8?q?eFs8iw8lQ6sQhNiTGo0R4G+qMr15wa9z8KboebPEBcZMsY1/mTka5LrlRXd6yHhYW?= =?utf-8?q?EJnUdtcUZwWx9PFswpd0tXITPrtP4wpaFQAwtOE9cvjVnsT7+GU5AFBwDwZXdQbso?= =?utf-8?q?a6Oi7r57ZoBtPXLKK84CWsX+849YoMXrkgOqUeRJBM7h0dbveD1/F6OuAhLYfCBoA?= =?utf-8?q?1yhE68pD0yx3KqZZESV0/gCiklx7fzAlVXpLI7L8J60z2aniY9tB3pdChzugVd2lY?= =?utf-8?q?iRDCR+G/m14J8eYWf79k+8qy/pDcBFA9SwbjaIfF7bwzFCs4oYxZ21WPXMTTygRRn?= =?utf-8?q?qiHgBBfa2xqOd1wTEA3cs5NMxDHQtCnIn5nXTgkRwc8JxFc1Ya376smJ1aYkl/Kp6?= =?utf-8?q?lP4EdEHjRGBebai79cwhExcxSCBpdsvfzizxGGrV8sqox6qzgOXS0zaI5RddNWvZ2?= =?utf-8?q?DW2QbICJyxD/msboVzR76wcxh2gw/vKePA03ZkrQ/vE5SGV+BQMuW+uSlyGQkOdzQ?= =?utf-8?q?P9NP3Ye9amW0CXUigGG/EeWZma+ChC3Y1wOrdSUMK49Pb+VusBV1ncOF7KF3l7QJh?= =?utf-8?q?azS9RKiK+rjnv0Z0A/QoBKWYkXwaKXyQ/z+krn6FEe5HWonEOBZOCi6Ck8IfClkWS?= =?utf-8?q?bGkzF7s9xP7vpRKiYZid29fcpPTU9DekW0LDvnvp0AZcJMeaKxFgdWgshh6nVs1XR?= =?utf-8?q?qIdSHz2uThVTBH0tcc5OW6XEzjCruMY0nRwBAdtUbH9N4LbyVSKRDtW6JoaA92v3l?= =?utf-8?q?Wmi37L+PGgOx4p4Lyv3Zz4GiaSOpChXpa9xxhEUfbZsF3lEPFFGzksbqo8kaD8sjY?= =?utf-8?q?ZfsTTVRhdCGRN2fZ7asWMnp31Ow2xZENflVLJADdzQIFOgw2tKDQjlN8soZA/BGff?= =?utf-8?q?qPy/UbUkVxFyInU6Yr8hRIHt5hgoqBt2CmZfV8OK4e9Fx7gFNxoZl0NUrOiV94PI/?= =?utf-8?q?VrYdSWnzf9Vh/EWFVJAkY+ogQjVctIWbc74/dMvgfBbyN/0KVD4Mk/FzzXsHqXDU8?= =?utf-8?q?ZetsTUZltwXojN3tH+cqBSdk9YYjQa3Iots0+lPCTUE+gWcO+C4q0D3BSscd81Pe6?= =?utf-8?q?zckUeHopmyg+aedd0KzSTW2590fd33rBL2Gym30WQ2JfBQjYiq8UlKzvrWKMycaQM?= =?utf-8?q?f2/5dbiOp1SdvdZn5n57/rnKg3QXobabtPex0SVRDtSpkeHacLrWIpktkEtbAT1hb?= =?utf-8?q?4pQV3LQ25I6XpVDKgsEpE64HUca85Cqx0gI/slcuCho2cRUvLnrM0Cg8=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 48cb12e5-8b80-4cda-fbc3-08dd064cb0cf X-MS-Exchange-CrossTenant-AuthSource: PAXPR04MB9642.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Nov 2024 14:41:01.1389 (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: OvPaTgzc6q+fw3pPC6WU645QqcAvmiUYZevroVcMQLYmQsn+gvQw74dFh1uitKUpZLnQXI1Ws0CC0wqatpQy4g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8PR04MB7265 |
Series |
PCI: EP: Add RC-to-EP doorbell with platform MSI controller
|
expand
|
┌────────────┐ ┌───────────────────────────────────┐ ┌────────────────┐ │ │ │ │ │ │ │ │ │ PCI Endpoint │ │ PCI Host │ │ │ │ │ │ │ │ │◄──┤ 1.platform_msi_domain_alloc_irqs()│ │ │ │ │ │ │ │ │ │ MSI ├──►│ 2.write_msi_msg() ├──►├─BAR<n> │ │ Controller │ │ update doorbell register address│ │ │ │ │ │ for BAR │ │ │ │ │ │ │ │ 3. Write BAR<n>│ │ │◄──┼───────────────────────────────────┼───┤ │ │ │ │ │ │ │ │ ├──►│ 4.Irq Handle │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └────────────┘ └───────────────────────────────────┘ └────────────────┘ This patches based on old https://lore.kernel.org/imx/20221124055036.1630573-1-Frank.Li@nxp.com/ Original patch only target to vntb driver. But actually it is common method. This patches add new API to pci-epf-core, so any EP driver can use it. Previous v2 discussion here. https://lore.kernel.org/imx/20230911220920.1817033-1-Frank.Li@nxp.com/ Changes in v8: - update helper function name to pci_epf_align_inbound_addr() - Link to v7: https://lore.kernel.org/r/20241114-ep-msi-v7-0-d4ac7aafbd2c@nxp.com Changes in v7: - Add helper function pci_epf_align_addr(); - Link to v6: https://lore.kernel.org/r/20241112-ep-msi-v6-0-45f9722e3c2a@nxp.com Changes in v6: - change doorbell_addr to doorbell_offset - use round_down() - add Niklas's test by tag - rebase to pci/endpoint - Link to v5: https://lore.kernel.org/r/20241108-ep-msi-v5-0-a14951c0d007@nxp.com Changes in v5: - Move request_irq to epf test function driver for more flexiable user case - Add fixed size bar handler - Some minor improvememtn to see each patches's changelog. - Link to v4: https://lore.kernel.org/r/20241031-ep-msi-v4-0-717da2d99b28@nxp.com Changes in v4: - Remove patch genirq/msi: Add cleanup guard define for msi_lock_descs()/msi_unlock_descs() - Use new method to avoid compatible problem. Add new command DOORBELL_ENABLE and DOORBELL_DISABLE. pcitest -B send DOORBELL_ENABLE first, EP test function driver try to remap one of BAR_N (except test register bar) to ITS MSI MMIO space. Old driver don't support new command, so failure return, not side effect. After test, DOORBELL_DISABLE command send out to recover original map, so pcitest bar test can pass as normal. - Other detail change see each patches's change log - Link to v3: https://lore.kernel.org/r/20241015-ep-msi-v3-0-cedc89a16c1a@nxp.com Change from v2 to v3 - Fixed manivannan's comments - Move common part to pci-ep-msi.c and pci-ep-msi.h - rebase to 6.12-rc1 - use RevID to distingiush old version mkdir /sys/kernel/config/pci_ep/functions/pci_epf_test/func1 echo 16 > /sys/kernel/config/pci_ep/functions/pci_epf_test/func1/msi_interrupts echo 0x080c > /sys/kernel/config/pci_ep/functions/pci_epf_test/func1/deviceid echo 0x1957 > /sys/kernel/config/pci_ep/functions/pci_epf_test/func1/vendorid echo 1 > /sys/kernel/config/pci_ep/functions/pci_epf_test/func1/revid ^^^^^^ to enable platform msi support. ln -s /sys/kernel/config/pci_ep/functions/pci_epf_test/func1 /sys/kernel/config/pci_ep/controllers/4c380000.pcie-ep - use new device ID, which identify support doorbell to avoid broken compatility. Enable doorbell support only for PCI_DEVICE_ID_IMX8_DB, while other devices keep the same behavior as before. EP side RC with old driver RC with new driver PCI_DEVICE_ID_IMX8_DB no probe doorbell enabled Other device ID doorbell disabled* doorbell disabled* * Behavior remains unchanged. Change from v1 to v2 - Add missed patch for endpont/pci-epf-test.c - Move alloc and free to epc driver from epf. - Provide general help function for EPC driver to alloc platform msi irq. - Fixed manivannan's comments. To: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> To: Krzysztof Wilczyński <kw@linux.com> To: Kishon Vijay Abraham I <kishon@kernel.org> To: Bjorn Helgaas <bhelgaas@google.com> To: Arnd Bergmann <arnd@arndb.de> To: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: linux-kernel@vger.kernel.org Cc: linux-pci@vger.kernel.org Cc: imx@lists.linux.dev Cc: Niklas Cassel <cassel@kernel.org> Cc: cassel@kernel.org Cc: dlemoal@kernel.org Cc: maz@kernel.org Cc: tglx@linutronix.de Cc: jdmason@kudzu.us Signed-off-by: Frank Li <Frank.Li@nxp.com> --- Frank Li (6): PCI: endpoint: Add pci_epc_get_fn() API for customizable filtering PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller PCI: endpoint: Add pci_epf_align_addr() helper for address alignment PCI: endpoint: pci-epf-test: Add doorbell test support misc: pci_endpoint_test: Add doorbell test case tools: PCI: Add 'B' option for test doorbell drivers/misc/pci_endpoint_test.c | 71 ++++++++++++++++ drivers/pci/endpoint/Makefile | 2 +- drivers/pci/endpoint/functions/pci-epf-test.c | 117 ++++++++++++++++++++++++++ drivers/pci/endpoint/pci-ep-msi.c | 99 ++++++++++++++++++++++ drivers/pci/endpoint/pci-epc-core.c | 23 ++++- drivers/pci/endpoint/pci-epf-core.c | 45 ++++++++++ include/linux/pci-ep-msi.h | 15 ++++ include/linux/pci-epc.h | 2 + include/linux/pci-epf.h | 30 +++++++ include/uapi/linux/pcitest.h | 1 + tools/pci/pcitest.c | 16 +++- 11 files changed, 417 insertions(+), 4 deletions(-) --- base-commit: f5373677e13177cfc7875f44a864f9a1db751df9 change-id: 20241010-ep-msi-8b4cab33b1be Best regards, --- Frank Li <Frank.Li@nxp.com>