Knowledge Base Article
Why do we see the error message about "Malformed TLP packet"?
Description
Due to a problem in the Intel® Stratix® 10 PCI Express* Root Port example design with MSI, the Intel® Stratix® 10 HPS PCI Express Root Port can't mount Micron 2100AI NVME SSD, and a "Malformed TLP packet" message is shown during the boot up.
Resolution
To work around this problem in the Intel® Stratix® 10 PCI Express* Root Port example design with MSI, add the below code in the "s10_tlp_read_packet" function in file drivers/pci/controller/pcie-altera.c
for (i = 0; i < 5; i++) {
ctrl = cra_readl(pcie, S10_RP_RXCPL_STATUS);
dw[count-1] = cra_readl(pcie, S10_RP_RXCPL_REG);
printk("status %x data %x\n",ctrl,dw[count-1]);
if (ctrl & RP_RXCPL_EOP) {
return PCIBIOS_SUCCESSFUL;
}
}
dev_warn(dev, "Malformed TLP packet\n");