#!/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),
    ]
}
