Closed ChicagoDuan closed 7 months ago
Is the logic
# Check for an upstream cable card
if (cable.Links.DownstreamChassis):
# mex
if slot in cable.Links.DownStreamResource(PCIeSlots): # DownstreamChassis instead for now
expander_device = redfish_get_grandparent(cable.Links.UpstreamPorts) #cable card # Need to get the grandparent (we are the fabric adapter with a link to the pcie device). Go to the PCIe Device. Go to the PCIe Slot and Get the LinkID.
pcie_device = expander_device.Links.PCIeDevices[0]
expander_slots = pcie_device.Links.Oem.IBM.PcieSlot
for slot2 in expander_slots:
if slot2.Links.PCIeDevice == pcie_device:
# this slot has an upstream expander, so fix
# the link type and set the parent link
row["Link Type"] = "Secondary"
row["Parent Link ID"] = slot2.Oem.Ibm.LinkID
break
# there might be additional cable connections
# between this slot and the cable card but we
# have what we need for this slot, so quit
# iterating on cables.
# Check for downstream slots (if this slot is an expander)
The GUI appears here to just be grabbing the first LinkId in the PCIeSlot array and not the correct one
if slot2.Links.PCIeDevice == pcie_device:
# this slot has an upstream expander, so fix
# the link type and set the parent link
row["Link Type"] = "Secondary"
row["Parent Link ID"] = slot2.Oem.Ibm.LinkID
break
@Nikhil-Ashoka FYI
Okay, I will look into this issue.
We are tracking this change to the backend and the GUI using internal defect 558040. Work still in progress.
Fix is being worked here.... https://github.com/ibm-openbmc/webui-vue/pull/145
Fix will be delivered in FW1050 for this.
Fixed delivered. Please reopen and provide details if you feel this is not fixed.
In BMC Web->PCIe Topology, the Parent IDs displayed for the two CXP cards (with IDs 1408 and 1472) in the NVMe expansion chassis (FC #ESR0) are incorrect. Both are incorrectly shown as 75, whereas they should be 32 and 40, respectively. However, on the HMC side, the Parent IDs displayed in the PCIe Topology are correct.