Bridge Device enumeration

Discussions related to using VirtualBox on Linux hosts.
Post Reply
Dhaks
Posts: 43
Joined: 26. Feb 2015, 07:52

Bridge Device enumeration

Post by Dhaks »

Hello Experts,

I have a pluggable bridge device hooked up to the VirtualBox (5.0.10) on Linux host (4.4.7), ICH9 chipset. Fundamental problem is fakeBIOS isn't able to enumerate devices behind the bridge, never see end point devices listed as part of guest debugger or the guest VM.
I do see whole bunch of accesses targeted towards the bridge, reading appropriate class code, subordinate bus etc but never see transactions targeted towards the subordinate bus to identify end point device.

1. Are there any specific restrictions on the "type" of switches that bios can handle ?
2. Is the BIOS capable of enumerating devices that are behind the bridge for a pluggable device ?
3. Is the bios hardcoded to ONLY support "ich9pcibridge: 8086-2448"

I looked through the source code pcibios.c (Is this the right file to look ? ) and see that there is a code snippet that looks behind the bridge (access class code, subordinate bus etc), BUT when I attached gdb during the run and tried to break-in for debug, gdb process never breaked in inside, void BIOSCALL PCIxx(function)(volatile pci_regs_t r) or uint16_t PCIxx(find_device)(uint32_t search_item, uint16_t index, int search_class)

Any recommendations / suggestions ?

Thanks.
Elizine
Posts: 34
Joined: 19. May 2015, 10:49

Re: Bridge Device enumeration

Post by Elizine »

I don't know much about bridge device enumeration but below is the link that might help you -
https://msdn.microsoft.com/en-us/library/aa447537.aspx
bodHOST
Post Reply