*** Please note that this reply is generated by LLM automatically ***
Based on the provided context, I will attempt to provide a comprehensive answer to the question.
The issue described is related to the Jetson AGX Orin P3737 carrier board’s M2 KeyM NVMe slot PCIe C5 port, which is not enumerating a Gen2-only FPGA endpoint despite a successful physical link up.
To address this issue, let’s break down the requirements and potential limitations:
- Required PCIe devicetree settings for Orin C5 port to enumerate Gen2-only FPGA endpoint:
The devicetree settings for the PCIe C5 port on the Jetson AGX Orin module are not explicitly mentioned in the provided context. However, it is essential to ensure that the devicetree settings are correctly configured to support Gen2-only FPGA endpoints.
In general, the devicetree settings for PCIe on the Jetson AGX Orin module are defined in the tegra194-pcie.dtsi file. The pcie@141a0000 node, which corresponds to the PCIe C5 port, should be configured to support Gen2 speeds.
Here’s an example of how the devicetree settings might look:
pcie@141a0000 {
compatible = "nvidia,tegra194-pcie";
reg = <0x0 0x141a0000 0x0 0x1000>;
#address-cells = <3>;
#size-cells = <2>;
device_type = "pci";
bus-range = <0x00 0xff>;
ranges = <0x81000000 0x0 0x14120000 0x0 0x20000 0x0 0x20000>;
// Configure PCIe C5 port to support Gen2 speeds
pcie@0 {
reg = <0x0 0x141a0000 0x0 0x1000>;
#address-cells = <3>;
#size-cells = <2>;
device_type = "pci";
bus-range = <0x00 0xff>;
ranges = <0x81000000 0x0 0x14120000 0x0 0x20000 0x0 0x20000>;
speed = <2>; // Configure PCIe C5 port to support Gen2 speeds
};
};
- Orin PCIe root port limitations for Gen2 endpoint without AXILite BAR0:
The provided context does not explicitly mention any limitations of the Orin PCIe root port for Gen2 endpoints without AXILite BAR0. However, it is essential to note that the Orin PCIe root port might have specific requirements or limitations for enumerating Gen2-only FPGA endpoints.
In general, the Orin PCIe root port is designed to support a wide range of PCIe devices, including those with AXILite BAR0. However, the specific requirements for enumerating Gen2-only FPGA endpoints might vary depending on the device and the system configuration.
- Root cause of link-up-but-no-enumeration issue on Orin M2 slot:
The root cause of the link-up-but-no-enumeration issue on the Orin M2 slot is likely related to the devicetree settings or the PCIe root port limitations. To troubleshoot this issue, it is recommended to:
- Verify the devicetree settings for the PCIe C5 port to ensure that they are correctly configured to support Gen2 speeds.
- Check the PCIe root port limitations for Gen2 endpoints without AXILite BAR0.
- Ensure that the FPGA endpoint is correctly configured and functional.
In comparison to the RK3588 host, which works perfectly with the FPGA, the Orin AGX M2 slot might have specific requirements or limitations that need to be addressed. It is essential to consult the official documentation and seek guidance from NVIDIA to resolve this issue.
In summary, to enumerate a Gen2-only FPGA endpoint on the Orin AGX M2 slot, it is crucial to:
- Verify the devicetree settings for the PCIe C5 port.
- Check the PCIe root port limitations for Gen2 endpoints without AXILite BAR0.
- Ensure that the FPGA endpoint is correctly configured and functional.
Official guidance from NVIDIA is necessary to resolve this issue, and it is recommended to consult the official documentation and seek support from NVIDIA to ensure that the Orin AGX M2 slot is correctly configured to support Gen2-only FPGA endpoints.
*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***