Patent ID: 7613864

Claim:
An apparatus for supporting PCI-Express, the apparatus comprising a first plurality of ports configurable as upstream ports, each connectable to a respective host, and at least one port configurable as a downstream port connectable to a device, wherein the device is a device that can be the requester or completer of a PCI-Express transaction either on its own behalf or on behalf of one or more distinct non-PCI Express devices; the apparatus being operable to configure a downstream port for device virtualization to support sharing of the device between the hosts, wherein at least one of said hosts comprises a configuration entity operable to provision resources of said device to said hosts, the host of which the configuration entity forms part forming a master host that has access to all devices in a device tree, including the non-PCI-Express devices, wherein any host that is not a master host forms a client host, and at least one host is a client host; wherein a client host can freely configure and make use of the provisioned resources that are provisioned to the client host, but is not allowed to configure other resources that are not provisioned to the client host, or to configure or make use of the provisioned resources in a way that causes the provisioned resources to perform an operation reserved for the other resources; and wherein the device further includes one or more control registers that are only accessible by the master host, wherein the master host configures the control registers to control how the device presents itself on an external network and how the device handles communication with the client hosts to which resources have been provisioned.