Page 1 of 1

DesignWare PCIe problem

Posted: Mon Feb 19, 2024 12:04 pm
by BK
Hello,
I work on a small OS for custom board with MIPS CPU. This board has 3 ethernets and 1 serial PCIe endpoints.
lspci output from linux:
00:00.0 Class 0604: Device 1d39:8060 (rev 01)
01:00.0 Class 0604: Device 12d8:2608
02:01.0 Class 0604: Device 12d8:2608
02:02.0 Class 0604: Device 12d8:2608
02:03.0 Class 0604: Device 12d8:2608
02:04.0 Class 0604: Device 12d8:2608
03:00.0 Class 0700: Device 13a8:8354 (rev 03)
04:00.0 Class 0200: Device 8086:1533 (rev 03)
05:00.0 Class 0200: Device 8086:1533 (rev 03)
06:00.0 Class 0200: Device 8086:1533 (rev 03)
At this time a can enumerate and configure all devices. MSI interrupts also works fine. But ethernet card can work only with 128 bytes of memory. E.g. I can use only 8 RX descriptors ( 8 * 16 = 128 ) and recieve packets less or equal 128 bytes.
I can't find any solution in datasheets...

PCIe problem

Posted: Tue Feb 20, 2024 12:22 am
by BK
Hello,
I work on a small OS for custom board with MIPS CPU. This board has 3 ethernets and 1 serial PCIe endpoints.
lspci output from linux:
00:00.0 Class 0604: Device 1d39:8060 (rev 01)
01:00.0 Class 0604: Device 12d8:2608
02:01.0 Class 0604: Device 12d8:2608
02:02.0 Class 0604: Device 12d8:2608
02:03.0 Class 0604: Device 12d8:2608
02:04.0 Class 0604: Device 12d8:2608
03:00.0 Class 0700: Device 13a8:8354 (rev 03)
04:00.0 Class 0200: Device 8086:1533 (rev 03)
05:00.0 Class 0200: Device 8086:1533 (rev 03)
06:00.0 Class 0200: Device 8086:1533 (rev 03)
At this time a can enumerate and configure all devices. MSI interrupts also works fine. But ethernet card can work only with 128 bytes of memory. E.g. I can use only 8 RX descriptors ( 8 * 16 = 128 ) and recieve packets less or equal 128 bytes.
I can't find any solution in datasheets...

Re: PCIe problem

Posted: Tue Jun 11, 2024 11:43 pm
by Octocontrabass
MIPS, huh? How are you managing the caches when the network card performs DMA?