Where there are many different versions of a hardware device, a generally like number of device drivers must be developed.
Single combination device drivers may be constructed to support multiple versions or types of devices.