1

I am trying to get a U.2 NVMe (FIPS 140-2), Gen 2 (1x4) to get detected by our Computer-on-Module (COM) conga-MA7 which is on a COM Express® (COME) 3.0 Type10 form factor. In between I have a PCIe Switch (PEX8718-AB80BI G). I am only using 2 lanes to connect to the PCIe switch and the U.2 NVMe. The NVMe is not being detected but when I try other U.2's (not FIPs 140-2) they work. They link at Gen3 speeds and are also 1x4 and they still manage to negotiate to 2 lanes. I have other downstream components connected to the PCIe switch, which always get detected. I also tested the Memkor NVMe's with a different system that doesn't have a PCIe switch, but the same COM, and it gets detected.

The COM is running Redhat Linux. When I run lspci, all the PCIe components show up including the PCIe Switch and its downstream ports, except of course, the Memkor U.2. Is there any other diagnostics that I can run in the linux terminal?

We performed a high level signal integrity simulation before printing the PCBs. I confirmed that the 12V are ready before the NVMe comes out of reset. Currently PCIe clock and PCIe fundamental reset follows the PCIe standards. I also made sure that the write protect or erase signals are not interfering at boot up.

I was able to use (not very familiar with) the Broadcom PCIe Switch PDE tool, to help debug. I do see that there is some type of uncorrectable error, but it is taking me time to decipher all the registers. Other than that, I have no indicator like an LED or signal.

My question is, the only difference is that the U.2 NVMe is FIPS 140-2, so I am wondering if this could be a potential issue? My second question is, has anyone seen compatibility issues, where no matter what I try, maybe the NVMe will never work with the PCIe switch.

6
  • COME 3.0 is a form-factor, not CPU as far as I know. Much of this stuff is controlled by a low level FW components inside the CPU, especially security-related as in FIPS and such
    – Eugene Sh.
    Commented Jun 12 at 18:12
  • 1
    The question doesn't mention which Memkor NVMe is in use, but MEMKOR MKD-O2F 2.5”/M.2/U.2 SSD FIPS 140-2 NON-PROPRIETARY SECURITY POLICY contains If the module fails any power-up tests or conditional tests, then the module will enter a hard error state. During a hard error state, the module is not available for any services, and it inhibits all data output. Error indicator is: - Module will not show up to host.. Has the NVMe has entered a hard error state? Commented Jun 12 at 18:40
  • @EugeneSh. we are using a CPU that follows that COME 3.0 standard. Please elaborate more. By the way, I am using this CPU: link
    – miggyEE
    Commented Jun 12 at 19:44
  • It might be worth checking the PEX 87xx Errata, for any items which may cause a link to fail to train. E.g. 1.25 PEX87xx Upstream Port's Lane Reversal with Link Width Down Negotiation Does Not Work for the Specified Condition. Mentioning that errata since the question contains I am only using 2 lanes to connect to the PCIe switch and the U.2 NVMe.. Is the schematic for how the NVMe is connected to the PCI switch available? Commented Jun 12 at 20:20
  • 1
    Please note that a "CPU" is just one component within a computer. Do not use this term to refer to an entire computer, like you are, because it is not. Call it a computer, which is what it is. Commented Jun 13 at 0:29

0

You must log in to answer this question.

Browse other questions tagged .