diff options
author | Michael Neuling <mikey@neuling.org> | 2017-07-20 16:22:20 +1000 |
---|---|---|
committer | Stewart Smith <stewart@linux.vnet.ibm.com> | 2017-07-25 15:42:30 +1000 |
commit | cf960e2884027b0b2f7bedd69b767a7ddceb960a (patch) | |
tree | b7c622acb60575383b20f1252b55a3ef08f20bbb /include/pci-slot.h | |
parent | 3530f67473652dfdbd14a94b07318e64f842297a (diff) | |
download | talos-skiboot-cf960e2884027b0b2f7bedd69b767a7ddceb960a.tar.gz talos-skiboot-cf960e2884027b0b2f7bedd69b767a7ddceb960a.zip |
phb4: Improve reset and link training timing
This improves PHB reset and link training timing. Justifications and
reasons are included in the patch.
Polling frequencies are decreased from 100ms to 10ms.
Added is a new state called PHB4_SLOT_LINK_STABLE which is now needed
since the link training can be so fast that we touch config space too
quickly (PCIe spec requires 1 second between PERST de-assert and
device config space reads). We use this new state to sanity check the
PHB and link before moving onto the PCI bus scan, where we no longer
recover from these error conditions.
Also added is simplified documentation of the PHB reset and training flow.
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Stewart Smith <stewart@linux.vnet.ibm.com>
Diffstat (limited to 'include/pci-slot.h')
-rw-r--r-- | include/pci-slot.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/pci-slot.h b/include/pci-slot.h index 479bc08c..5cc54f83 100644 --- a/include/pci-slot.h +++ b/include/pci-slot.h @@ -185,6 +185,7 @@ struct pci_slot { uint64_t delay_tgt_tb; uint64_t retries; uint64_t link_retries; + uint64_t stable_retries; struct pci_slot_ops ops; void *data; }; |