|  | #!/usr/bin/env python3 | 
|  | # -*- coding: utf-8 -*- | 
|  | # | 
|  | # Copyright (C) 2017-2020  The Project X-Ray Authors. | 
|  | # | 
|  | # Use of this source code is governed by a ISC-style | 
|  | # license that can be found in the LICENSE file or at | 
|  | # https://opensource.org/licenses/ISC | 
|  | # | 
|  | # SPDX-License-Identifier: ISC | 
|  |  | 
|  | ports = { | 
|  | "PCIE_2_1": [ | 
|  | ("CFGERRACSN", 1), | 
|  | ("CFGERRATOMICEGRESSBLOCKEDN", 1), | 
|  | ("CFGERRCORN", 1), | 
|  | ("CFGERRCPLABORTN", 1), | 
|  | ("CFGERRCPLTIMEOUTN", 1), | 
|  | ("CFGERRCPLUNEXPECTN", 1), | 
|  | ("CFGERRECRCN", 1), | 
|  | ("CFGERRINTERNALCORN", 1), | 
|  | ("CFGERRINTERNALUNCORN", 1), | 
|  | ("CFGERRLOCKEDN", 1), | 
|  | ("CFGERRMALFORMEDN", 1), | 
|  | ("CFGERRMCBLOCKEDN", 1), | 
|  | ("CFGERRNORECOVERYN", 1), | 
|  | ("CFGERRPOISONEDN", 1), | 
|  | ("CFGERRPOSTEDN", 1), | 
|  | ("CFGERRURN", 1), | 
|  | ("CFGFORCECOMMONCLOCKOFF", 1), | 
|  | ("CFGFORCEEXTENDEDSYNCON", 1), | 
|  | ("CFGINTERRUPTASSERTN", 1), | 
|  | ("CFGINTERRUPTN", 1), | 
|  | ("CFGINTERRUPTSTATN", 1), | 
|  | ("CFGMGMTRDENN", 1), | 
|  | ("CFGMGMTWRENN", 1), | 
|  | ("CFGMGMTWRREADONLYN", 1), | 
|  | ("CFGMGMTWRRW1CASRWN", 1), | 
|  | ("CFGPMFORCESTATEENN", 1), | 
|  | ("CFGPMHALTASPML0SN", 1), | 
|  | ("CFGPMHALTASPML1N", 1), | 
|  | ("CFGPMSENDPMETON", 1), | 
|  | ("CFGPMTURNOFFOKN", 1), | 
|  | ("CFGPMWAKEN", 1), | 
|  | ("CFGTRNPENDINGN", 1), | 
|  | ("CMRSTN", 1), | 
|  | ("CMSTICKYRSTN", 1), | 
|  | ("DBGSUBMODE", 1), | 
|  | ("DLRSTN", 1), | 
|  | ("DRPCLK", 1), | 
|  | ("DRPEN", 1), | 
|  | ("DRPWE", 1), | 
|  | ("FUNCLVLRSTN", 1), | 
|  | ("LL2SENDASREQL1", 1), | 
|  | ("LL2SENDENTERL1", 1), | 
|  | ("LL2SENDENTERL23", 1), | 
|  | ("LL2SENDPMACK", 1), | 
|  | ("LL2SUSPENDNOW", 1), | 
|  | ("LL2TLPRCV", 1), | 
|  | ("PIPECLK", 1), | 
|  | ("PIPERX0CHANISALIGNED", 1), | 
|  | ("PIPERX0ELECIDLE", 1), | 
|  | ("PIPERX0PHYSTATUS", 1), | 
|  | ("PIPERX0VALID", 1), | 
|  | ("PIPERX1CHANISALIGNED", 1), | 
|  | ("PIPERX1ELECIDLE", 1), | 
|  | ("PIPERX1PHYSTATUS", 1), | 
|  | ("PIPERX1VALID", 1), | 
|  | ("PIPERX2CHANISALIGNED", 1), | 
|  | ("PIPERX2ELECIDLE", 1), | 
|  | ("PIPERX2PHYSTATUS", 1), | 
|  | ("PIPERX2VALID", 1), | 
|  | ("PIPERX3CHANISALIGNED", 1), | 
|  | ("PIPERX3ELECIDLE", 1), | 
|  | ("PIPERX3PHYSTATUS", 1), | 
|  | ("PIPERX3VALID", 1), | 
|  | ("PIPERX4CHANISALIGNED", 1), | 
|  | ("PIPERX4ELECIDLE", 1), | 
|  | ("PIPERX4PHYSTATUS", 1), | 
|  | ("PIPERX4VALID", 1), | 
|  | ("PIPERX5CHANISALIGNED", 1), | 
|  | ("PIPERX5ELECIDLE", 1), | 
|  | ("PIPERX5PHYSTATUS", 1), | 
|  | ("PIPERX5VALID", 1), | 
|  | ("PIPERX6CHANISALIGNED", 1), | 
|  | ("PIPERX6ELECIDLE", 1), | 
|  | ("PIPERX6PHYSTATUS", 1), | 
|  | ("PIPERX6VALID", 1), | 
|  | ("PIPERX7CHANISALIGNED", 1), | 
|  | ("PIPERX7ELECIDLE", 1), | 
|  | ("PIPERX7PHYSTATUS", 1), | 
|  | ("PIPERX7VALID", 1), | 
|  | ("PLDIRECTEDLINKAUTON", 1), | 
|  | ("PLDIRECTEDLINKSPEED", 1), | 
|  | ("PLDIRECTEDLTSSMNEWVLD", 1), | 
|  | ("PLDIRECTEDLTSSMSTALL", 1), | 
|  | ("PLDOWNSTREAMDEEMPHSOURCE", 1), | 
|  | ("PLRSTN", 1), | 
|  | ("PLTRANSMITHOTRST", 1), | 
|  | ("PLUPSTREAMPREFERDEEMPH", 1), | 
|  | ("SYSRSTN", 1), | 
|  | ("TL2ASPMSUSPENDCREDITCHECK", 1), | 
|  | ("TL2PPMSUSPENDREQ", 1), | 
|  | ("TLRSTN", 1), | 
|  | ("TRNRDSTRDY", 1), | 
|  | ("TRNRFCPRET", 1), | 
|  | ("TRNRNPOK", 1), | 
|  | ("TRNRNPREQ", 1), | 
|  | ("TRNTCFGGNT", 1), | 
|  | ("TRNTDLLPSRCRDY", 1), | 
|  | ("TRNTECRCGEN", 1), | 
|  | ("TRNTEOF", 1), | 
|  | ("TRNTERRFWD", 1), | 
|  | ("TRNTSOF", 1), | 
|  | ("TRNTSRCDSC", 1), | 
|  | ("TRNTSRCRDY", 1), | 
|  | ("TRNTSTR", 1), | 
|  | ("USERCLK2", 1), | 
|  | ("USERCLK", 1), | 
|  | ("CFGERRAERHEADERLOG", 128), | 
|  | ("TRNTD", 128), | 
|  | ("CFGDEVID", 16), | 
|  | ("CFGSUBSYSID", 16), | 
|  | ("CFGSUBSYSVENDID", 16), | 
|  | ("CFGVENDID", 16), | 
|  | ("DRPDI", 16), | 
|  | ("PIPERX0DATA", 16), | 
|  | ("PIPERX1DATA", 16), | 
|  | ("PIPERX2DATA", 16), | 
|  | ("PIPERX3DATA", 16), | 
|  | ("PIPERX4DATA", 16), | 
|  | ("PIPERX5DATA", 16), | 
|  | ("PIPERX6DATA", 16), | 
|  | ("PIPERX7DATA", 16), | 
|  | ("CFGPMFORCESTATE", 2), | 
|  | ("DBGMODE", 2), | 
|  | ("PIPERX0CHARISK", 2), | 
|  | ("PIPERX1CHARISK", 2), | 
|  | ("PIPERX2CHARISK", 2), | 
|  | ("PIPERX3CHARISK", 2), | 
|  | ("PIPERX4CHARISK", 2), | 
|  | ("PIPERX5CHARISK", 2), | 
|  | ("PIPERX6CHARISK", 2), | 
|  | ("PIPERX7CHARISK", 2), | 
|  | ("PLDIRECTEDLINKCHANGE", 2), | 
|  | ("PLDIRECTEDLINKWIDTH", 2), | 
|  | ("TRNTREM", 2), | 
|  | ("CFGDSFUNCTIONNUMBER", 3), | 
|  | ("CFGFORCEMPS", 3), | 
|  | ("PIPERX0STATUS", 3), | 
|  | ("PIPERX1STATUS", 3), | 
|  | ("PIPERX2STATUS", 3), | 
|  | ("PIPERX3STATUS", 3), | 
|  | ("PIPERX4STATUS", 3), | 
|  | ("PIPERX5STATUS", 3), | 
|  | ("PIPERX6STATUS", 3), | 
|  | ("PIPERX7STATUS", 3), | 
|  | ("PLDBGMODE", 3), | 
|  | ("TRNFCSEL", 3), | 
|  | ("CFGMGMTDI", 32), | 
|  | ("TRNTDLLPDATA", 32), | 
|  | ("CFGMGMTBYTEENN", 4), | 
|  | ("CFGERRTLPCPLHEADER", 48), | 
|  | ("CFGAERINTERRUPTMSGNUM", 5), | 
|  | ("CFGDSDEVICENUMBER", 5), | 
|  | ("CFGPCIECAPINTERRUPTMSGNUM", 5), | 
|  | ("PL2DIRECTEDLSTATE", 5), | 
|  | ("PLDIRECTEDLTSSMNEW", 6), | 
|  | ("CFGDSN", 64), | 
|  | ("MIMRXRDATA", 68), | 
|  | ("MIMTXRDATA", 69), | 
|  | ("CFGDSBUSNUMBER", 8), | 
|  | ("CFGINTERRUPTDI", 8), | 
|  | ("CFGPORTNUMBER", 8), | 
|  | ("CFGREVID", 8), | 
|  | ("DRPADDR", 9), | 
|  | ("CFGMGMTDWADDR", 10), | 
|  | ] | 
|  | } |