if you think BAR size is the issue, this is configurable on the card with mlxconfig (same utility I recommend for setting ports to ethernet or IB etc). It's saved in the cards flash so you can configure it on the working PC, then move the card to the non working one:
I would start by setting it to 0, like:
Code:
mst start
mlxconfig -d /dev/mst/mt4099_pci_cr0 set LOG_BAR_SIZE=0
Then move it to the other PC and see if it boots. If it does, you could try increasing it by 1 each time until it doesn't. If it doesn't boot even at 0, try disabling SR-IOV if it's enabled, like "mlxconfig -d /dev/mst/mt4099_pci_cr0 set SRIOV_EN=0" the total BAR size is a function of the BAR size setting above times the number of virtual functions, so if you have SR-IOV enabled with a bunch of VF's, that will get big really fast.
if it still absolutely won't boot, try disabling SR-IOV in your motherboard BIOS