B12.1 Multifunction Devices
All general requirements in B1.0 are included by reference.
All bus-specific requirements in B2.0 are included by reference.
All requirements for each specific device class implemented in the multifunction device are included by reference.
B12.1.1 Multifunction Devices - Windows Compatibility B12.1.1.1 Device drivers comply with Windows DDK requirements for its operating system
Third-party applications implemented as defined in the Microsoft Platform SDK.
“Driver Requirements for Multifunction Devices,” “System-Supplied Setup Classes,” “INF DDInstall.HW Section,” and “MFCARD_DES” in the Windows DDK.
Note: This is a general reference, not a requirement.
B12.1.1.2 Windows compatibility and implementation notes—multifunction devices
http://www.microsoft.com/hwdev/tech/MF/default.asp
Note: This is a general reference, not a requirement.
See B1.0 and B2.0.
B12.1.1.4 Designing Multifunction Devices for Windows Operating Systems
http://www.microsoft.com/hwdev/tech/MF/mfdesign.asp
Note: This is a general reference, not a requirement.
B12.1.2 Multifunction Devices - Industry Standards
Note: This list provides complete titles and web locations for references cited. The listing of a reference here does not imply that complete compliance with that reference is a Windows Logo Program requirement.
B12.1.2.1 See related industry standards for each device class implemented on the multi-function device
See B1.0 and B2.0.
B12.1.3 Multifunction Devices - Quality
WHQL Test Specification References:
Chapter 1: Introduction to HCT Test Specifications
Chapter 22: Driver Quality Test Specification
Plus technology-specific test specifications
B12.1.3.1 through B12.1.3.4 - See B12.1.4.2 B12.1.3.5 Pass WHQL tests - See B1.3.
See “Multifunction” in the HCT documentation.
B12.1.4 Multifunction Devices - Windows Experience
Design Guideline References:
"Designing Multifunction Devices for Windows" at http://www.microsoft.com/hwdev/tech/MF/mfdesign.asp
B12.1.4.1 Separate drivers are required for separate functions with no start order dependencies between separate function drivers
The operating system must be able to configure and manage functions in any order, so no function on a multifunction device can depend on another function to be started before the function can be started by the operating system.
Note that a supervisory driver that loads different drivers for the individual functions does not work well with Windows. In particular, driver support is likely to be lost in cases of operating system re-installation or upgrade, or with distribution of new drivers via Windows Update. Therefore, these supervisory drivers must be avoided.
B12.1.4.2 MFP devices correctly implement driver and Plug and Play support B12.1.4.2.1 Resource requirements of one functional unit are not expressed in terms of another functional unit.
Each function or device on the multifunction add-on device that is individually enumerated must provide a device ID for the bus it uses.
Exceptions to individual ID requirement for MF devices [Logo Program Clarification]
-
Multiple devices of the same device class, such as a multiline serial device.
-
Dependent video devices, such as a graphics accelerator on a video card.
-
Devices that are generated by an accelerator or auxiliary processor and that do not have independent hardware I/O. That processor must have an ID; under Windows XP, Mf.sys must be used to enumerate the dependent devices.
B12.1.4.2.2 Operation of one functional unit does not affect or interfere with the operation of another functional unit.
This applies whether the functional unit is on the multifunction device or on the system as a whole. Windows must be able to separately access each logical device that is individually enumerated, configure the device resources independently, and disable individual devices in the event of a conflict.
B12.1.4.2.3 Each functional unit is enumerated and its resource requirements communicated to the operating system.
This ensures Windows can load the necessary drivers and assign resources to the different units in any order.
For each individually enumerated device, resource configuration requirements are the same as for an equivalent device on a separate expansion card. This requirement means that registers cannot be shared among individually enumerated devices on a multifunction add-on device, but it does not supersede device requirements among different bus classes.
B12.1.4.3 Each independent function can be used concurrently, with no hidden dependencies
Separate functional units must be able to operate concurrently, without interfering with each other or with other devices on the system.
B12.1.4.4 Each function can be power managed independently
Each functional unit in a multifunction device must separately meet the power management device class specifications for its device class and be independently power managed. Each functional unit must be able to successfully complete a system sleep/wake transition (where the unit transitions from D0 to D3 to D0) without losing functionality and without requiring user intervention to restore functionality. All functional units on PCI devices that support wakeup capabilities must correctly support wake from D3cold.
B12.1.5 Multifunction Devices - FAQs
See http://www.microsoft.com/winlogo/hardware/.
B12.1.5.2 Updated at B12.1.4 B12.1.5.3 Updated at B12.1.4.2.1 B12.1.R Multifunction Devices - Future Requirements
Announcement of additional future requirements will be published at http://www.microsoft.com/winlogo/hardware/
B12.1.R.2 DELETED
Share with your friends: |