The Linux Bus Driver allows new buses to be defined and used with the Linux operating system. With the dual mode characteristics of the StarGen fabric, full PCI legacy drivers do not require a new bus driver when used with the address-routed mechanism. In order to use the advanced path routing features, fabric devices need to be discovered and assigned resources using a driver that is cognizant of this process with StarFabric and its devices. In some instances similar to PCI bus driver, the Linux fabric bus driver will be responsible for:
A bus driver will present all fabric path routed discovered devices as a set of child devices to the operating system. This way higher level class, function, or filter drivers can attach themselves to these devices.