Adaptive device driver using controller hardware sub-element identifier
DCFirst Claim
1. A controller, operable in conjunction with an adaptively configurable device driver, comprising:
- a) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system;
b) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements, whereby an adaptively configurable device driver can specifically identify each of said sub-elements and dynamically adapt the configuration of said device driver to the specific plurality of said sub-elements.
3 Assignments
Litigations
0 Petitions
Accused Products
Abstract
A device driver architecture that couples an operating system to a computer interface of a controller device that includes a plurality of functional sub-elements. The device driver includes a plurality of operating system interface objects each presenting an operating system interface (OSI) to the operating system, a plurality of computer interface objects each providing for the generation of programming values to be applied to the computer interface to establish the operating mode of a respective predetermined sub-element of the controller device, and a device driver library of processing routines callable by each of the plurality of operating system interface objects to process data and generate calls to the plurality of computer interface objects in predetermined combinations. The device driver library enables the selection of an execution contexts within which to define the generation and application of the programming values to the computer interface. The state of the hardware interface is virtualized and maintained in discrete contexts, allowing for application specific, dynamic alteration of the state of the hardware interface through essentially context switching private to the device driver in response to selected operating system events.
128 Citations
10 Claims
-
1. A controller, operable in conjunction with an adaptively configurable device driver, comprising:
-
a) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system; b) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements, whereby an adaptively configurable device driver can specifically identify each of said sub-elements and dynamically adapt the configuration of said device driver to the specific plurality of said sub-elements. - View Dependent Claims (2, 3, 4, 5)
-
-
6. In a computer system utilizing an operating system to perform predetermined software functions and a device driver to perform predetermined hardware interface functions, a controller for performing a predetermined hardware function comprising;
-
a) a plurality of functionally modular hardware elements that cooperatively interoperate to perform said predetermined hardware function; b) a hardware register interface supporting the coupling of said controller with said device driver, said hardware register interface providing access to said plurality of functionally modular hardware elements; c) a modular hardware identifier stored by said controller and accessible by said device driver, said modular hardware identifier storing data respectively identifying predetermined aspects of said plurality of functionally modular hardware elements, whereby said device driver can dynamically adapt to said predetermined aspects of said plurality of said modular hardware elements. - View Dependent Claims (7, 8)
-
-
9. A dynamically configurable peripheral subsystem comprising:
-
a) a peripheral controller including; i) a plurality of sub-elements that cooperatively operate in support of a predetermined controller function, said plurality of sub-elements being provided together on a peripheral adapter coupleable to a peripheral bus of a computer system; ii) a hardware identifier provided on said peripheral adapter and readable via said peripheral bus, said hardware identifier encoding predetermined respective specific identifications of said sub-elements; and b) an adaptively configurable device driver coupleable to said peripheral controller to read said hardware identifier, said adaptively configurable device driver including logic to establish and couple a plurality of hardware interface objects into said adaptively configurable device driver in predetermined correspondence with said plurality of sub-elements as determined from said hardware identifier. - View Dependent Claims (10)
-
Specification