Exemplo n.º 1
0
def main_test_fun(test_param_dict):
    logging.info("Cadence PCIe Application level stress test")
    plib = pci()
    seg = test_param_dict["segrp"]
    bus = test_param_dict["busrp"]
    dev = test_param_dict["devrp"]
    fun = test_param_dict["funrp"]
    rp_dev = plib.get_device(int(seg), int(bus), int(dev), int(fun))
    seg = test_param_dict["segep"]
    bus = test_param_dict["busep"]
    dev = test_param_dict["devep"]
    fun = test_param_dict["funep"]
    ep_dev = plib.get_device(int(seg), int(bus), int(dev), int(fun))
    rp_cap = find_pcie_cap(plib, rp_dev, PCI_CAP_ID_EXP)
    ep_cap = find_pcie_cap(plib, ep_dev, PCI_CAP_ID_EXP)
    rp_pm_cap = find_pcie_cap(plib, rp_dev, PCI_CAP_ID_PM)
    ep_pm_cap = find_pcie_cap(plib, ep_dev, PCI_CAP_ID_PM)
    vendor_id, device_id = pci_read_vendor_device_id(plib, rp_dev)
    logging.info("RP: %x- %x" % (vendor_id, device_id))
    vendor_id, device_id = pci_read_vendor_device_id(plib, ep_dev)
    logging.info("EP: %x- %x" % (vendor_id, device_id))
    #print(test_param_dict["pcipm_test"])

    if (test_param_dict["aer_chk"] == True
            or test_param_dict["all_test"] == True):
        logging.info("AER Check Enabled")
        t = pciaerinit(plib, rp_dev, ep_dev)
        t.start()
    if (test_param_dict["pcipm_test"] == True
            or test_param_dict["all_test"] == True):
        logging.info("#PCI PM Test Begins#")
        print("#PCI PM Test Begins#")
        pci_pm_test(plib, rp_dev, ep_dev, rp_cap, ep_cap, rp_pm_cap, ep_pm_cap,
                    test_param_dict)
    if (test_param_dict["aspm_test"] == True
            or test_param_dict["all_test"] == True):
        logging.info("#ASPM Test Begins#")
        print("#ASPM Test Begins#")
        pci_aspm_test(plib, rp_dev, ep_dev, rp_cap, ep_cap, test_param_dict)
    if (test_param_dict["link_equ_test"] == True
            or test_param_dict["all_test"] == True):
        logging.info("#Link Equ Test Begins#")
        print("#Link Equ Test Begins#")
        pci_link_equ_test(plib, rp_dev, ep_dev, rp_cap, ep_cap,
                          test_param_dict)
    if (test_param_dict["link_ret_test"] == True
            or test_param_dict["all_test"] == True):
        logging.info("#Link Retrain Test Begins#")
        print("#Link Retrain Test Begins#")
        pci_link_ret_test(plib, rp_dev, ep_dev, rp_cap, ep_cap,
                          test_param_dict)
    if (test_param_dict["link_disable_test"] == True
            or test_param_dict["all_test"] == True):
        logging.info("#Link Disable Test Begins#")
        print("#Link Disable Test Begins#")
        pci_link_disable_test(plib, rp_dev, ep_dev, rp_cap, ep_cap,
                              test_param_dict)
    t.do_run = False
    t.join()
Exemplo n.º 2
0
def initpci():
    plib = pci()
    rp_dev = plib.get_device(0, 0, 1, 1)
    ep_dev = plib.get_device(0, 2, 0, 0)
    find_and_store_pci_cap_offset(plib, rp_dev)
    find_and_store_pci_cap_offset(plib, ep_dev)
    find_and_store_pci_ext_cap_offset(plib, rp_dev)
    find_and_store_pci_ext_cap_offset(plib, ep_dev)
    return plib, rp_dev, ep_dev
Exemplo n.º 3
0
def pcilinkretrain():
    plib = pci()
    rp_dev = plib.get_device(0, 0, 2, 0)
    ep_dev = plib.get_device(0, 3, 0, 0)
    rp_cap = find_pcie_cap(plib, rp_dev, PCI_CAP_ID_EXP)
    ep_cap = find_pcie_cap(plib, ep_dev, PCI_CAP_ID_EXP)
    vendor_id, device_id = pci_read_vendor_device_id(plib, rp_dev)
    logging.info("RP: %x- %x" % (vendor_id, device_id))
    pci_link_ret_test(plib, rp_dev, ep_dev, rp_cap, ep_cap, test_param_dict)