Hello there!
I’m doing Hackintosh project for my Vostro 5390 laptop and trying to get Broadcom apple compliant ngff card to work (the card is working fine, I tested it trough the m2 nvme adapter instead of the ssd and it get determined in the bios, so no whitelist or broken card here)
According to the mobo schematics it has 10th pcie lane in the connector
(2ND M.2 is for WWAN board with sim slot and m2 type b connector which I don’t have, but it spoils IO connector and I’m slowly guessing to go to a local hackerspace and get m2 port pins brutally wired and soldered)
But!
That laptop never have anything but intel cnvi wifi cards in that slot, so seems like the dell engineers didn’t do anything to get that 10th lane be functioning
I tried to switch around PCIe section in the BIOS using setup_var method, but no luck
According to the defaults - all the four root ports from 9th to 12th is enabled with a slot bits set
But that didn’t do anything
If I switch slot bit of 9th root port - it get determined by bios and by lspci with LinkCap Width x2
If I switch 12th slot bit - 11th and12th will be determined with x1 width
So we have a x2/x1/x1 mapping for needed (9-12) section, and 10th is “shadowed by x2/x4” according to the SetupVolatileData suppressing PCIe section variables
The interesting thing is that 12th port is “shadowed” too, but still getting determined, which is kinda strange
Another thing is that 9th lane didn’t connected to anything according to the schematics
I tried to rebuild Intel ME with PCIe config where 9-12 section is 4x1 instead of 1x4 by default, and invert polarity disabled on that section (don’t know what it is tbh, but that was only point where it was enabled by default) - no luck + seems like that didn’t do anything about link widths, because GPU on 5th port gets x4 link width, when it set to 1x2+2x1 by default at the Intel ME
There is nothing about bifurcation or link width that I can found in UEFI tool too
So I’m interested when the link width is determined? Maybe it defined somewhere as board defaults, or idk
UPD
At some point after fully resetting efi vars to defaults I noticed that 11th port is disabled by default
If I enable it and there is card inside - 10(11 if starting from 1)th root port with 2nd empty bus is popping in bios, which is not 9(10)th from mono schematics, where all the other pice peripherals is sitting at the right ports
But that port is “not active”, and if I boot linux and look at lspci -vvv I got that 11th root port has LnkCap x1 8GT/s (x1 Gen3), but trains to x0 2.5GT/s and don’t have any children
I tried force enabling pcie CLK1 for WLAN according to mobo schematics - no luck
So now I have some progress going - there are pcie port somehow mapped to another number which can be utilised, but disabled by dell by default since no pcie wlan cards used on that laptop
And there are something another disabled by default which preventing that root port to be used
I’m kinda didn’t know much about pcie and bios, so maybe I’m wrong somewhere, so I requesting help there as i’m stuck and tired)