Dynamic bus-based virtual channel multiplexing device driver architecture
First Claim
Patent Images
1. An apparatus for dynamic bus-based virtual channel multiplexing, comprising:
- a bus;
a bus driver coupled to the bus;
a multifunction device coupled to the bus and configured with a plurality of functions; and
a Multiplex Device Function Driver (MDFD) coupled to the bus driver and configured to;
establish one or more virtual channels with the device using a peer-to-peer multiplexing protocol between the MDFD and the device via the bus driver, wherein the bus driver and the device have equal responsibility for initiating, maintaining, and terminating the one or more virtual channels;
determine one or more of the plurality of functions to be activated on the device, each activated function associated with one or more established virtual channels; and
for each activated function, launch a second-tier function driver to handle operation of the activated function, the second-tier function driver having a function driver type.
1 Assignment
0 Petitions
Accused Products
Abstract
Dynamic bus-based virtual channel multiplexing may be accomplished by establishing one or more virtual channels with a multiplexing device function driver and a multifunction device coupled to a bus, determining one or more functions to be activated on the device, and for each activated function, launching a second-tier function driver to handle operation of the activated function. The second-tier function driver has a function driver type. Establishment of the one or more virtual channels is accomplished using a multiplexing protocol and multiplexing device function driver with the multifunction device via a bus driver coupled to the bus.
-
Citations
29 Claims
-
1. An apparatus for dynamic bus-based virtual channel multiplexing, comprising:
-
a bus; a bus driver coupled to the bus; a multifunction device coupled to the bus and configured with a plurality of functions; and a Multiplex Device Function Driver (MDFD) coupled to the bus driver and configured to; establish one or more virtual channels with the device using a peer-to-peer multiplexing protocol between the MDFD and the device via the bus driver, wherein the bus driver and the device have equal responsibility for initiating, maintaining, and terminating the one or more virtual channels; determine one or more of the plurality of functions to be activated on the device, each activated function associated with one or more established virtual channels; and for each activated function, launch a second-tier function driver to handle operation of the activated function, the second-tier function driver having a function driver type. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer implemented method for dynamic bus-based virtual channel multiplexing, comprising:
-
by a Multiplex Device Function Driver (MDFD), establishing one or more virtual channels with a multifunction device coupled to a bus and configured with a plurality of functions, the establishing using a peer-to-peer multiplexing protocol and the multiplexing device function driver with the device via a bus driver coupled to the bus, wherein the bus driver and the device have equal responsibility for initiating, maintaining, and terminating the one or more virtual channels; determining one or more of the plurality of functions to be activated on the device, each activated function associated with one or more established virtual channels; and for each activated function, launching a second-tier function driver to handle operation of the activated function, the second-tier function driver having a function driver type. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A nontransitory program storage device readable by a machine, embodying a program of instructions executable by the machine to perform a method for dynamic bus-based virtual channel multiplexing, the method comprising:
-
by a Multiplex Device Function Driver (MDFD), establishing one or more virtual channels with a multifunction device coupled to a bus and configured with a plurality of functions, the establishing using a peer-to-peer multiplexing protocol and the multiplexing device function driver with the device via a bus driver coupled to the bus, wherein the bus driver and the device have equal responsibility for initiating, maintaining, and terminating the one or more virtual channels; determining one or more of the plurality of functions to be activated on the device, each activated function associated with one or more established virtual channels; and for each activated function, launching a second-tier function driver to handle operation of the activated function, the second-tier function driver having a function driver type.
-
Specification