Patent ID: 7529860

Claim:
A method, in a data processing system, for configuring an endpoint for use with a host system, comprising: extracting a configuration space combination bitmap from an endpoint configuration space; generating one or more functions associated with the endpoint; associating at least one function with at least one other function in accordance with the configuration space combination bitmap to thereby generate a combination of functions; and utilizing the combination of functions to handle input/output requests provided to the endpoint; and extracting a maximum number of virtual functions from the endpoint configuration space, wherein: generating one or more functions associated with the endpoint comprises generating one or more virtual functions associated with one or more physical functions in the endpoint based on the maximum number of virtual functions, associating at least one function with at least one other function comprises associating at least one of the one or more virtual functions or the one or more physical functions with at least one of another virtual function or another physical function, each bit in the configuration space combination bitmap specifies a different combination of at least one of physical functions or virtual functions, setting individual ones of the bits in the configuration space combination bitmap specifies which combinations of at least one of physical functions or virtual functions are valid combinations of functions in the endpoint, each bit in the configuration space combination bitmap is associated with a unique combination number corresponding to a bit number of the bit in the configuration space combination bitmap, and the combination number is specified in configuration spaces of physical functions of the endpoint.