Well, I reckon its a firmware version issue.
When Proxmox boots up, it installs t5fw-1.26.2.0.bin
If I pass the whole card through to pfSense, it installs t5fw-1.25.0.40.bin and the interfaces are available for assignment as expected
If I just pass a VF through with fw 1.26.2.0, pfSense ignores the card and doesn't load the driver, even though it is present as a PCI device in the VM
Its a bit of a catch 22. I can install 1.25.0.40 by passing the whole card through to pfSense, but after that the host can't see the card until it is rebooted and then it updates to 1.26.2.0.
I haven't been able to figure out how to prevent Proxmox from updating the firmware. I used ethtool to downgrade the firmware on the host but the pfSense VM no longer boots with VFs attached.
Days and days on this :(