Jay Cornwall
430a23689d
PCI: Add pci_enable_atomic_ops_to_root()
...
The Atomic Operations feature (PCIe r4.0, sec 6.15) allows atomic
transctions to be requested by, routed through and completed by PCIe
components. Routing and completion do not require software support.
Component support for each is detectable via the DEVCAP2 register.
A Requester may use AtomicOps only if its PCI_EXP_DEVCTL2_ATOMIC_REQ is
set. This should be set only if the Completer and all intermediate routing
elements support AtomicOps.
A concrete example is the AMD Fiji-class GPU (which is capable of making
AtomicOp requests), below a PLX 8747 switch (advertising AtomicOp routing)
with a Haswell host bridge (advertising AtomicOp completion support).
Add pci_enable_atomic_ops_to_root() for per-device control over AtomicOp
requests. This checks to be sure the Root Port supports completion of the
desired AtomicOp sizes and the path to the Root Port supports routing the
AtomicOps.
Signed-off-by: Jay Cornwall <Jay.Cornwall@amd.com >
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com >
[bhelgaas: changelog, comments, whitespace]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com >
2018-01-23 14:46:50 -06:00
..
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-15 20:30:12 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 10:04:46 -07:00
2017-11-02 11:19:54 +01:00
2017-11-04 09:26:51 +09:00
2017-11-02 11:19:54 +01:00
2017-11-28 15:17:49 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-08-31 17:32:38 -04:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-15 13:28:48 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-10-23 14:22:25 +02:00
2017-11-02 11:19:54 +01:00
2017-11-24 16:22:58 -07:00
2017-11-02 11:19:54 +01:00
2017-11-27 13:05:09 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-12-05 15:02:40 +01:00
2017-11-21 00:37:35 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-14 13:35:29 -08:00
2017-11-14 13:35:29 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-15 20:30:12 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-17 13:20:41 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-04 21:23:32 -07:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-15 10:56:56 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-14 14:13:11 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-05 21:49:17 +09:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-04 09:26:51 +09:00
2017-11-04 09:26:51 +09:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-08 11:20:49 +09:00
2017-11-04 09:26:51 +09:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-15 09:43:57 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-04 09:26:51 +09:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-04 09:26:51 +09:00
2017-11-11 15:13:02 +09:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-14 14:13:11 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-17 16:10:04 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-26 11:31:32 +02:00
2017-11-02 11:19:54 +01:00
2017-12-06 09:18:43 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-13 15:38:16 +00:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-10-19 22:13:40 -04:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-08-28 08:33:20 -07:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-10 00:03:39 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-10-11 13:04:15 +02:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-13 10:37:07 +09:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2018-01-23 14:46:50 -06:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-15 10:56:56 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-12-15 13:35:37 -05:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-15 10:56:56 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-04 09:26:51 +09:00
2017-08-14 11:53:34 +02:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-12-15 13:35:36 -05:00
2017-11-24 10:18:41 +00:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-04 09:26:51 +09:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-08-07 14:16:22 -07:00
2017-11-16 10:49:00 +09:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-13 21:05:31 -08:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-11 18:53:16 +09:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-07 10:32:44 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-04 09:26:51 +09:00
2017-08-04 10:30:27 +02:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-04 09:26:51 +09:00
2017-11-15 13:54:18 +09:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-08-24 09:57:28 +02:00
2017-11-26 04:24:48 +09:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:19:54 +01:00
2017-11-03 16:34:00 -07:00
2017-11-02 11:19:54 +01:00
2017-11-13 10:41:25 -08:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00
2017-11-02 11:19:54 +01:00
2017-11-02 11:20:11 +01:00