Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

PCI: endpoint: Add dynamic_inbound_mapping EPC feature

Introduce a new EPC feature bit (dynamic_inbound_mapping) that indicates
whether an Endpoint Controller can update the inbound address
translation for a BAR without requiring the EPF driver to clear/reset
the BAR first.

Endpoint Function drivers (e.g. vNTB) can use this information to decide
whether it really is safe to call pci_epc_set_bar() multiple times to
update inbound mappings for the BAR.

Suggested-by: Niklas Cassel <cassel@kernel.org>
Signed-off-by: Koichiro Den <den@valinux.co.jp>
Signed-off-by: Manivannan Sadhasivam <mani@kernel.org>
Reviewed-by: Niklas Cassel <cassel@kernel.org>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Link: https://patch.msgid.link/20260124145012.2794108-2-den@valinux.co.jp

authored by

Koichiro Den and committed by
Manivannan Sadhasivam
06a81c59 0ecd890e

+5
+5
include/linux/pci-epc.h
··· 223 223 /** 224 224 * struct pci_epc_features - features supported by a EPC device per function 225 225 * @linkup_notifier: indicate if the EPC device can notify EPF driver on link up 226 + * @dynamic_inbound_mapping: indicate if the EPC device supports updating 227 + * inbound mappings for an already configured BAR 228 + * (i.e. allow calling pci_epc_set_bar() again 229 + * without first calling pci_epc_clear_bar()) 226 230 * @msi_capable: indicate if the endpoint function has MSI capability 227 231 * @msix_capable: indicate if the endpoint function has MSI-X capability 228 232 * @intx_capable: indicate if the endpoint can raise INTx interrupts ··· 235 231 */ 236 232 struct pci_epc_features { 237 233 unsigned int linkup_notifier : 1; 234 + unsigned int dynamic_inbound_mapping : 1; 238 235 unsigned int msi_capable : 1; 239 236 unsigned int msix_capable : 1; 240 237 unsigned int intx_capable : 1;