This post is provided by Senior App Dev Managers, David Huang, Charles Ofori, and Sheldon Ledbetter who outline important process changes for partners building Windows drivers.
For many years, IHVs (Independent Hardware Vendors), ISVs (Independent Software Vendors), and OEMs (Original Equipment Manufacturers) who are writing driver software to communicate with Windows operating systems have leveraged a process of submitting their drivers to Microsoft for certification and signing. Basically, partners ran a set of pre-defined test cases and the results along with the driver were submitted via the Sysdev Portal (https://sysdev.microsoft.com/) to Microsoft. If the results were fully validated, Microsoft granted certifications to the partners.
Recently a portion of the Sysdev tasks - particularly most hardware tasks – were transitioned to the Windows Hardware Dev Center (a.k.a., the “Hardware Dev Center”) dashboard (https://developer.microsoft.com/en-us/windows/hardware). The Hardware Dev Center leverages HCK (Windows Hardware Certification Kit) and HLK (Windows Hardware Lab Kit) technologies and supports the following issues: (a) creating HCK and HLK device certification and attested signing submissions, (b) publishing to Windows Update and creating shipping labels with promotions, (c) customizing driver after initial certification, and (d) sharing the driver with other resellers. Some of the types of drivers going through this process are: Wireless Network (NIC), Bluetooth, Audio, Video, Camera, Storage, Antivirus, and Print/Fax/Scan Drivers.
Note that Hardware Dev Center does not handle submissions against older Operating Systems requiring the WLK 1.6 kit; such tasks should still be leveraged through the Sysdev Portal. The Sysdev Portal continues to serve as an escalation point to the Hardware Dev Center for more complicated technical issues along with a few other tasks: (a) General System and Win32 Application Certification submissions, (b) Device Metadata implementation, (c) Hardware bug management, (d) Remote debugging for hardware vendors, (e) Filing Contingencies, and (f) Certified product list updates.
When a Premier partner uses HCK/HLK and encounters submission failures, they can open a support ticket to understand and rectify the failures. Microsoft HLK/HCK escalation engineers then troubleshoot into the drivers. If the driver code contains no error but the culprit was found to lie either in the Windows HLK test or in the operating system itself, Microsoft will create an Errata that allows vendors to pass the tests. Errata are filters applied within the controller of the Windows HLK Studio. In these situations, Microsoft driver escalation engineers work with the Sysdev team to document the needed Errata filters in the HLK Studio. If these filters are applied to the test for all end users, they are called Automatic Errata filters. For situations that Errata cannot be applied automatically, Microsoft offers Manual Errata for rescue. The two typical situations for Manual Errata are: (a) the steps to decide if a failure can be covered by an Automatic Errata appear to be long or complicated, and (b) the information in the test result is insufficient to justify a new Errata, and research is required to look for existing Manual Errata to cover the specific errors.
Microsoft offers a third kind of errata called Contingency. Contingency is temporary in nature; it allows companies to ‘pass’ certain tests based on a legal agreement between the vendor and Microsoft to fix the vendor’s device or system bugs within an agreed time frame. Contingency filters are specific and applicable only to the requesting vendor and the specific device or class. A Contingency request must be made by sending an email directly to the Sysdev Portal to initiate the process. In the email to Sysdev, Premier partners can include their Application Development Manager (ADM) for visibility so the ADM can advocate on the partner’s behalf through the Contingency process.
In raising a support ticket with Microsoft for troubleshooting driver submission failures, Premier partners must provide the submission IDs of the failures from the Hardware Dev Center. If the submission failure is resulted with an issue of the Hardware Dev Center platform (for example, submission is stalled in the process), then the partner should file a help request directly in the Contact Us section of the Dev Center dashboard (https://developer.microsoft.com/en-us/windows/support); your Premier ADM can be the advocate as needed. Please also note, an Errata is considered a Microsoft issue and the related labor of the support case would be non-decremental. For further questions, please contact your Premier ADMs.
Premier Support for Developers provides strategic technology guidance, critical support coverage, and a range of essential services to help teams optimize development lifecycles and improve software quality. Contact your Application Development Manager (ADM) or email us to learn more about what we can do for you.