97
WHQL Update WHQL Update Conference Conference April 19 April 19 th th , 1999 , 1999 Munich, Germany Munich, Germany

WHQL Update Conference April 19 th, 1999 Munich, Germany

Embed Size (px)

Citation preview

Page 1: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Update WHQL Update Conference Conference

April 19April 19thth, 1999 , 1999 Munich, GermanyMunich, Germany

Page 2: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Update ConferenceWHQL Update ConferenceAgendaAgenda WelcomeWelcome WHQL StatusWHQL Status Pre-Submission RequirementsPre-Submission Requirements Submission Requirements & ProcessSubmission Requirements & Process LunchLunch Self-Sign ProgramSelf-Sign Program Driver Testing & DebuggingDriver Testing & Debugging Q & AQ & A

Page 3: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL StatusWHQL Status

Brad Carpenter Brad Carpenter Group Manager WHQLGroup Manager WHQLWindows Operating Systems DivisionWindows Operating Systems DivisionMicrosoft CorporationMicrosoft Corporation

Page 4: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL StatusWHQL StatusAgendaAgenda WHQL Mission StatementWHQL Mission Statement Where We are TodayWhere We are Today Where We are GoingWhere We are Going System Test Implementers ForumSystem Test Implementers Forum Design Guide Transition Design Guide Transition MiniPCI ProgramMiniPCI Program On-Board ComponentsOn-Board Components Call To ActionCall To Action

Page 5: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Mission StatementWHQL Mission Statement

Ensure that hardware is functional Ensure that hardware is functional across the Windows family of Operating across the Windows family of Operating Systems by providing an efficient and Systems by providing an efficient and responsive validation processresponsive validation process

Page 6: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Mission StatementWHQL Mission StatementHardware functionalityHardware functionality

Ensure that hardware is functional Ensure that hardware is functional across the Windows family of across the Windows family of Operating Systems…Operating Systems… Increases end-user satisfactionIncreases end-user satisfaction Reduces support costsReduces support costs Reduces Total Cost of Ownership Reduces Total Cost of Ownership Accelerates quality of new hardwareAccelerates quality of new hardware

Page 7: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Mission StatementWHQL Mission StatementProcessProcess

……By providing an efficient and By providing an efficient and responsive validation processresponsive validation process WHQL’s primary objectives areWHQL’s primary objectives are

Provide validation against Provide validation against Windows Logo program requirementsWindows Logo program requirements

Provide up-to-date Provide up-to-date Hardware Compatibility ListHardware Compatibility List

Provide Digitally Signed DriversProvide Digitally Signed Drivers Work with our customersWork with our customers

Page 8: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Mission Statement WHQL Mission Statement Customer relationshipsCustomer relationships

Working Working withwith our customers is key our customers is key We are listening to your feedback on We are listening to your feedback on

how to improve the WHQL processeshow to improve the WHQL processes WHQL survey handed outWHQL survey handed out [email protected]@microsoft.com

Page 9: WHQL Update Conference April 19 th, 1999 Munich, Germany

Where We Are Today Where We Are Today SubmissionsSubmissions

24,000 overall submissions in 199824,000 overall submissions in 1998 8000 in 19978000 in 1997 2200 in 19962200 in 1996

Areas of largest growth in 1998Areas of largest growth in 1998 USBUSB ClusterCluster ImagingImaging Motion VideoMotion Video

Page 10: WHQL Update Conference April 19 th, 1999 Munich, Germany

Where We Are Today Where We Are Today Self-test programsSelf-test programs

64 total test programs64 total test programs Currently 23 are self-testCurrently 23 are self-test

Key device programs past year:Key device programs past year:

Audio, Display, Hard Drive, Keyboard, Audio, Display, Hard Drive, Keyboard, Imaging, Mouse, Net Adapter, PrintingImaging, Mouse, Net Adapter, Printing

Planned to be self-test by end of year:Planned to be self-test by end of year:

1394, Analog Modem, CD-ROM, Dual-1394, Analog Modem, CD-ROM, Dual-Proc Systems, Monitor, Motion VideoProc Systems, Monitor, Motion Video

Page 11: WHQL Update Conference April 19 th, 1999 Munich, Germany

Where We Are Going Where We Are Going InternetInternet

Re-design of /hwtest/ Web page Re-design of /hwtest/ Web page Make information easier to findMake information easier to find Redesigned HCL for increased reliabilityRedesigned HCL for increased reliability Personalized Web page - “My WHQL”Personalized Web page - “My WHQL” ““Status Ticker”Status Ticker”

Online submissions from Web pageOnline submissions from Web page Real-time Master IDReal-time Master ID Hardware sent in parallel to submissionHardware sent in parallel to submission Streamlines administrative processStreamlines administrative process

Page 12: WHQL Update Conference April 19 th, 1999 Munich, Germany

Where We Are Going Where We Are Going Test kit feedbackTest kit feedback

Feedback from customers on kitsFeedback from customers on kits More predictable, less frequent, More predictable, less frequent,

better documentedbetter documented

Future test kit releases driven byFuture test kit releases driven by Major OS releases and SP updatesMajor OS releases and SP updates New Design GuidesNew Design Guides New TechnologiesNew Technologies

Clarifying what kits are testing forClarifying what kits are testing for

Page 13: WHQL Update Conference April 19 th, 1999 Munich, Germany

Where We Are Going Where We Are Going Test kit releasesTest kit releases

Next test kit release in June ’99Next test kit release in June ’99 Updated KitsUpdated Kits

HCT CDHCT CD Display CDDisplay CD 35+ Device Test Kits 35+ Device Test Kits

Enables testing submissions on Enables testing submissions on Windows 2000 Beta3Windows 2000 Beta3 Windows 98 Second EditionWindows 98 Second Edition Windows NTWindows NT®® 4.0 SP5 4.0 SP5

Page 14: WHQL Update Conference April 19 th, 1999 Munich, Germany

System Test System Test Implementers Forum Implementers Forum Designing-in complianceDesigning-in compliance Consistent and objective test tools Consistent and objective test tools

help compliance and reduce help compliance and reduce product cycle timeproduct cycle time

Joint Microsoft and Intel hardware Joint Microsoft and Intel hardware test strategytest strategy Deliver objective hardware test specs Deliver objective hardware test specs

and testsand tests Tests map to Design Guide requirementsTests map to Design Guide requirements WHQL will incorporate appropriate testsWHQL will incorporate appropriate tests

System Test Implementers ForumSystem Test Implementers Forumhttp://www.systemtest.orghttp://www.systemtest.org

Page 15: WHQL Update Conference April 19 th, 1999 Munich, Germany

Design Guide TransitionDesign Guide TransitionCurrentCurrent

New PC 99 Design Guide goes into effect New PC 99 Design Guide goes into effect July 1, 1999July 1, 1999

Initial release of PC 99 test kits by June 1Initial release of PC 99 test kits by June 1 Same Grace periods as last year for Same Grace periods as last year for

components within systemscomponents within systems Until Sept 1 ‘99 systems can contain PC 98 Until Sept 1 ‘99 systems can contain PC 98

componentscomponents Will get PC 98 designationWill get PC 98 designation

As of July 1 all new submissions shall meet As of July 1 all new submissions shall meet PC 99 requirementsPC 99 requirements June 30, 1999 is last day for new PC 98 June 30, 1999 is last day for new PC 98

submissions submissions

Page 16: WHQL Update Conference April 19 th, 1999 Munich, Germany

Design Guide TransitionDesign Guide TransitionFutureFuture

PC 99a Addendum by June 1, 1999PC 99a Addendum by June 1, 1999 FAQ update onlyFAQ update only No new requirementsNo new requirements

PC 2001 will be released Feb 2000PC 2001 will be released Feb 2000 PC 2001 goes into effect July 1st 2001PC 2001 goes into effect July 1st 2001 PC 2001 preview released this monthPC 2001 preview released this month

PC 99 and Addenda in effect until PC 99 and Addenda in effect until June 30th 2001June 30th 2001

Page 17: WHQL Update Conference April 19 th, 1999 Munich, Germany

Design Guide TransitionDesign Guide TransitionServersServers Hardware Design Guide for Microsoft Hardware Design Guide for Microsoft

Windows NT Server 2.0Windows NT Server 2.0 (SDG 2.0)(SDG 2.0) goes into goes into effect July 1, 1999effect July 1, 1999

SDG 2.0 systems can contain any SDG 2.0 systems can contain any combination of the following devicescombination of the following devices SDG 2.0SDG 2.0 PC 99PC 99 SDG 1.0SDG 1.0 PC 98PC 98

Page 18: WHQL Update Conference April 19 th, 1999 Munich, Germany

MiniPCI ProgramMiniPCI ProgramOverviewOverview

Goal is to test MiniPCI devices Goal is to test MiniPCI devices independent of systemsindependent of systems

MiniPCI specification not yet ratifiedMiniPCI specification not yet ratified Industry needs to first prove Industry needs to first prove

interoperability of MiniPCI devices and interoperability of MiniPCI devices and systems from multiple vendorssystems from multiple vendors

Three phases testing plan for MiniPCIThree phases testing plan for MiniPCI

Page 19: WHQL Update Conference April 19 th, 1999 Munich, Germany

MiniPCI ProgramMiniPCI ProgramPhase 1 and 2Phase 1 and 2

Phase 1 - NowPhase 1 - Now MiniPCI devices treated as motherboard MiniPCI devices treated as motherboard

devicesdevices WHQL will optimize # of systems for testWHQL will optimize # of systems for test

Phase 2- Ratified Spec, Interop ProvenPhase 2- Ratified Spec, Interop Proven WHQL will test MiniPCI devices with 3 WHQL will test MiniPCI devices with 3

“reference” laptop systems “reference” laptop systems All MiniPCI devices shall pass testing in All MiniPCI devices shall pass testing in

“reference” laptop systems“reference” laptop systems MiniPCI devices will be tested MiniPCI devices will be tested

independent of systemindependent of system

Page 20: WHQL Update Conference April 19 th, 1999 Munich, Germany

MiniPCI Program MiniPCI Program Phase 3Phase 3 Phase 3 - After Desktop BIOS and Chipsets Phase 3 - After Desktop BIOS and Chipsets

exhibit same behavior as Reference exhibit same behavior as Reference Laptops (TBD)Laptops (TBD) Reference desktop system w/ a special PCI add-Reference desktop system w/ a special PCI add-

in card to test Mini PCI devicesin card to test Mini PCI devices Mini PCI device attaches to special PCI cardMini PCI device attaches to special PCI card IHVs will only need to submit the Mini PCI IHVs will only need to submit the Mini PCI

device along with the appropriate driversdevice along with the appropriate drivers

For more info see WHQL Modem and For more info see WHQL Modem and Network FAQs at Network FAQs at http://www.microsoft.com/hwtest/http://www.microsoft.com/hwtest/

Page 21: WHQL Update Conference April 19 th, 1999 Munich, Germany

On-Board ComponentsOn-Board ComponentsStreamlining Validation of Motherboard Streamlining Validation of Motherboard ComponentsComponents Key device categories can be tested by Key device categories can be tested by

vendors through WHQL Self-Test Programsvendors through WHQL Self-Test Programs Audio, Display, Input, LAN, etcAudio, Display, Input, LAN, etc

New “Batch” submission process for New “Batch” submission process for multiple Self-Test programsmultiple Self-Test programs One feeOne fee Two SystemsTwo Systems Can split up submissions of On-Board Can split up submissions of On-Board

Components into batchesComponents into batches Don’t have to wait for last component to be ready to Don’t have to wait for last component to be ready to

submit all at oncesubmit all at once

Page 22: WHQL Update Conference April 19 th, 1999 Munich, Germany

On-Board ComponentsOn-Board ComponentsValidation of Components on Validation of Components on Pre-Production MotherboardsPre-Production Motherboards If device needs to be submitted for logo test If device needs to be submitted for logo test

before final hardware is available:before final hardware is available: Firmware and driver must be final shipping Firmware and driver must be final shipping

versionversion Only cosmetic changes are allowed without re-Only cosmetic changes are allowed without re-

testingtesting Cover letter statingCover letter stating

Changes to be made before shipChanges to be made before ship When final production hardware will arrive at WHQLWhen final production hardware will arrive at WHQL

Final shipping versions must be supplied to Final shipping versions must be supplied to WHQL by an agreed upon date WHQL by an agreed upon date

WHQL will return Pre-Production system upon WHQL will return Pre-Production system upon arrival of production systemarrival of production system

Page 23: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL StatusWHQL StatusCall To ActionCall To Action

Please give us your feedback via Please give us your feedback via survey and/or survey and/or [email protected]@microsoft.com

Visit WHQL web pageVisit WHQL web pagehttp://www.microsoft.com/hwtesthttp://www.microsoft.com/hwtest

Prepare for Design Guide transitionPrepare for Design Guide transition MiniPCI vendors prepare for 3 phase MiniPCI vendors prepare for 3 phase

testing plantesting plan Visit WQHL web page for more infoVisit WQHL web page for more info

Page 24: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL StatusWHQL StatusQuestionsQuestions

Page 25: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Submission Pre-Submission RequirementsRequirements

Thomas WohllaibThomas WohllaibWHQL Systems Team LeadWHQL Systems Team LeadWindows Operating Systems DivisionWindows Operating Systems DivisionMicrosoft CorporationMicrosoft Corporation

Page 26: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Submission RequirementsPre-Submission RequirementsAgendaAgenda

Pre-Test PreparationPre-Test Preparation HW Requirements for Non Self-TestHW Requirements for Non Self-Test Operating Systems TestedOperating Systems Tested MS System Configuration TestingMS System Configuration Testing Non Self-Test IssuesNon Self-Test Issues Self-Test IssuesSelf-Test Issues System Description FormSystem Description Form

Page 27: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Test PreparationPre-Test PreparationSpecificationsSpecifications System documentationSystem documentation PCI 2.1, 2.2 specificationPCI 2.1, 2.2 specification Hardware design guidesHardware design guides

PC 9xPC 9x ServerServer

PnP BIOS specificationPnP BIOS specification APM 1.2 specificationAPM 1.2 specification ACPI specificationACPI specification

Page 28: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Test PreparationPre-Test PreparationErrataErrata

Testing errataTesting errata www.microsoft.com/hwtest/sysdocswww.microsoft.com/hwtest/sysdocs

Hardware design guide FAQ’sHardware design guide FAQ’s www.microsoft.com/hwdevwww.microsoft.com/hwdev

ATAPI specificationATAPI specification Serial loopback plugSerial loopback plug

Need Need thisthis specific piece of hardware specific piece of hardware NT comm port testsNT comm port tests

Page 29: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Test PreparationPre-Test PreparationDevices for testDevices for test

Devices need for enumeration testsDevices need for enumeration tests USBUSB PCIPCI ISAISA Com portCom port Printer portPrinter port

Page 30: WHQL Update Conference April 19 th, 1999 Munich, Germany

What Qualifies As a Non What Qualifies As a Non Self-Test SubmissionSelf-Test Submission

Systems using non self-test processor Systems using non self-test processor For most current list For most current list

www.microsoft.com/hwtest/sysdocswww.microsoft.com/hwtest/sysdocs

Systems with multiple processorsSystems with multiple processors Systems with custom HALSystems with custom HAL

Currently implementing HAL Test KitCurrently implementing HAL Test Kit Available for RTM of Windows 2000Available for RTM of Windows 2000

Page 31: WHQL Update Conference April 19 th, 1999 Munich, Germany

HW Requirements for Non HW Requirements for Non Self-Test Systems (1 of 2)Self-Test Systems (1 of 2)Server Class systemServer Class system

Max memory motherboard can supportMax memory motherboard can supportBoot devices drivers must be on floppiesBoot devices drivers must be on floppiesDrivers should be ready to installDrivers should be ready to installStorage Storage

(RAM x 3) + 2 GB for crashdump tests(RAM x 3) + 2 GB for crashdump tests

Two LOGO’d PCI net cardsTwo LOGO’d PCI net cardsRaid controller Raid controller

If offered by OEMIf offered by OEM

Page 32: WHQL Update Conference April 19 th, 1999 Munich, Germany

HW Requirements for Non HW Requirements for Non Self-Test Systems (2 of 2)Self-Test Systems (2 of 2)

Workstation and Basic/Mobile ClassWorkstation and Basic/Mobile Class Two LOGO’d PCI net cards (non-mobile)Two LOGO’d PCI net cards (non-mobile) 8GB minimum hard drive 8GB minimum hard drive

4GB minimum for mobile class4GB minimum for mobile class 64MB memory per processor for 64MB memory per processor for

WorkstationWorkstation 32MB memory for Basic/Mobile32MB memory for Basic/Mobile

Page 33: WHQL Update Conference April 19 th, 1999 Munich, Germany

Operating Systems TestedOperating Systems Tested Server ClassServer Class

NT 4.0 SP4NT 4.0 SP4 Windows 2000 ACPI modeWindows 2000 ACPI mode

Workstation ClassWorkstation Class NT 4.0 SP4NT 4.0 SP4 Windows 2000 ACPI modeWindows 2000 ACPI mode Windows 9x – if supported by OEMWindows 9x – if supported by OEM

Basic/MobileBasic/Mobile NT 4.0 SP4NT 4.0 SP4 Windows 2000 ACPI modeWindows 2000 ACPI mode Windows 98 APM & ACPI modeWindows 98 APM & ACPI mode Windows 95 – if supported by OEMWindows 95 – if supported by OEM

Page 34: WHQL Update Conference April 19 th, 1999 Munich, Germany

MS System Configuration TestingMS System Configuration TestingMachine ConfigMachine Config

Three partitions Three partitions Boot partition Fat 16 - 2 minimumBoot partition Fat 16 - 2 minimumNTFSNTFSCompressed NTFSCompressed NTFS

Two PCI Net cards Two PCI Net cards Raid configuration for serversRaid configuration for serversMS-DOS/LANManMS-DOS/LANMan

Only used for lab convenienceOnly used for lab convenience

Page 35: WHQL Update Conference April 19 th, 1999 Munich, Germany

MS System Configuration TestingMS System Configuration TestingBIOS SettingsBIOS Settings

BIOS settings that MS may changeBIOS settings that MS may change PnP OS settingPnP OS setting

NT 4.0 = NoNT 4.0 = No Windows 2000 = YesWindows 2000 = Yes Win9x = YesWin9x = Yes

Parallel port set to ECPParallel port set to ECP Serial and Parallel ports set to Auto Serial and Parallel ports set to Auto

NT 4.0 sometimes needs these set NT 4.0 sometimes needs these set manuallymanually

IRQ sharing = YesIRQ sharing = Yes

Page 36: WHQL Update Conference April 19 th, 1999 Munich, Germany

Non Self-Test IssuesNon Self-Test IssuesSystemsSystems System arrives and doesn’t bootSystem arrives and doesn’t boot

Loose componentsLoose components Missing CPU’sMissing CPU’s Missing HD’s or no HD’sMissing HD’s or no HD’s SCSI HD’s set to same ID numberSCSI HD’s set to same ID number Power supply not plugged into MBPower supply not plugged into MB BIOS passwordBIOS password Bad systemBad system

Page 37: WHQL Update Conference April 19 th, 1999 Munich, Germany

Non Self-Test IssuesNon Self-Test IssuesDriversDrivers Missing driversMissing drivers Drivers that don’t installDrivers that don’t install

Pre-Test the floppy’s / CD’s submittedPre-Test the floppy’s / CD’s submitted

Un-LOGO’d driverUn-LOGO’d driver Incomplete driver setIncomplete driver set Wrong drivers system componentsWrong drivers system components

Page 38: WHQL Update Conference April 19 th, 1999 Munich, Germany

Non Self-Test IssuesNon Self-Test IssuesFirmware / DeviceFirmware / Device

Wrong BIOS versionWrong BIOS version Wrong firmware on controllerWrong firmware on controller Missing internal cablesMissing internal cables Devices present but no cablesDevices present but no cables Wrong speed processor(s) installedWrong speed processor(s) installed

Page 39: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self Test IssuesSelf Test IssuesCommon MistakesCommon MistakesTesting non-English version of OSTesting non-English version of OSUn-readable floppyUn-readable floppy

Always keep a back upAlways keep a back up

No readme.txt file included to explain No readme.txt file included to explain test failurestest failuresMust contain test failure explanationsMust contain test failure explanationsMust have Master IDs for components that Must have Master IDs for components that

show as un-LOGO’d in your LOGO’d show as un-LOGO’d in your LOGO’d components test logcomponents test log

Failure to run all required testsFailure to run all required tests

Page 40: WHQL Update Conference April 19 th, 1999 Munich, Germany

System Description FormSystem Description FormProject GoalsProject Goals

OEMs describe submitted systemOEMs describe submitted system Today testers determine contents Today testers determine contents Process is time consumingProcess is time consuming OEMs can streamline this process OEMs can streamline this process

by describing submitted systemby describing submitted system

Page 41: WHQL Update Conference April 19 th, 1999 Munich, Germany

System Description FormSystem Description FormDetailsDetails

Accomplished using Accomplished using System System Description FormDescription Form Available soon on Available soon on

http://www.microsoft.com/hwtest/sysdocshttp://www.microsoft.com/hwtest/sysdocs

OEMs fill in the form and include OEMs fill in the form and include printed copies with submissionprinted copies with submission

Form will initially be optionalForm will initially be optional Date of being a requirement TBDDate of being a requirement TBD

Page 42: WHQL Update Conference April 19 th, 1999 Munich, Germany

System Description FormSystem Description Form

Page 43: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Submission RequirementsPre-Submission RequirementsCall To ActionCall To Action

Read pre-test documentationRead pre-test documentation Understand hardware requirements Understand hardware requirements

for non self-test submissionsfor non self-test submissions Make sure submission paperwork, Make sure submission paperwork,

hardware, and drivers completehardware, and drivers complete Leads to shortened test time!!Leads to shortened test time!!

Look for the System Description form Look for the System Description form on web page soonon web page soon

Page 44: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pre-Submission RequirementsPre-Submission RequirementsQuestionsQuestions

Page 45: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission Requirements Submission Requirements and Processand Process

Thomas WohllaibThomas WohllaibWHQL Systems Team LeadWHQL Systems Team LeadWindows Operating Systems DivisionWindows Operating Systems DivisionMicrosoft CorporationMicrosoft Corporation

Page 46: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission Requirements & ProcessSubmission Requirements & ProcessAgendaAgenda Submission RequirementsSubmission Requirements Submission AssistantSubmission Assistant Submission ProcessSubmission Process

Page 47: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission RequirementsSubmission RequirementsWhat to submitWhat to submit

Complete set of Test LogsComplete set of Test Logs Win95, Win98, Win NT 4.0, and Win2000Win95, Win98, Win NT 4.0, and Win2000 Use Submission Assistant!Use Submission Assistant!

Completed AgreementsCompleted Agreements Testing agreementTesting agreement Legal agreementLegal agreement

Payment for testingPayment for testing Hardware for Non Self-Test Systems Hardware for Non Self-Test Systems

Page 48: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 49: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 50: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 51: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 52: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 53: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 54: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 55: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 56: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 57: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 58: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission AssistantSubmission Assistant

Page 59: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission ProcessSubmission ProcessReceiptReceipt Upon Receipt of a SubmissionUpon Receipt of a Submission

WHQL sends E-Mail confirmation within WHQL sends E-Mail confirmation within 3 working days 3 working days

Does not include shipping time or Does not include shipping time or customscustoms If you do not receive confirmation If you do not receive confirmation

within 3 working days, send email to within 3 working days, send email to [email protected]@microsoft.com with keyword with keyword STATUSSTATUS

Page 60: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission ProcessSubmission ProcessHOLDHOLD

Submission Status - HOLDSubmission Status - HOLD Reasons for HOLD statusReasons for HOLD status

Missing WHQL Testing Agreement or Missing WHQL Testing Agreement or Exhibit AExhibit A

Missing ANY test logsMissing ANY test logs Missing hardware and/or device drivers for Missing hardware and/or device drivers for

Non Self-Test submissionsNon Self-Test submissions

Not entered into Testing Queue until Not entered into Testing Queue until items receiveditems received

Page 61: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission ProcessSubmission ProcessINCOMPLETEINCOMPLETE

Submission Status - INCOMPLETESubmission Status - INCOMPLETE Reasons for INCOMPLETE statusReasons for INCOMPLETE status

Missing paymentMissing payment Missing Logo License AgreementMissing Logo License Agreement

Enters Testing Queue but no Test Enters Testing Queue but no Test Report and not on HCL until items Report and not on HCL until items receivedreceived

Page 62: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission ProcessSubmission ProcessStatusStatus Turn Around Time from date of Turn Around Time from date of completecomplete

submissionsubmission Seven (7) days for Self-Test reportsSeven (7) days for Self-Test reports Thirty (30) days for Non Self-Test reportsThirty (30) days for Non Self-Test reports

For submission status go to For submission status go to http://www.microsoft.com/hwtest/statushttp://www.microsoft.com/hwtest/status Enter in submission IDEnter in submission ID

Real-time status tickersReal-time status tickers Available in future on WHQL web pageAvailable in future on WHQL web page Tracking both test turn-around times and Tracking both test turn-around times and

submissionssubmissions

Page 63: WHQL Update Conference April 19 th, 1999 Munich, Germany

Submission Requirements & ProcessSubmission Requirements & ProcessQuestionsQuestions

Page 64: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign ProgramSelf-Sign Program

Brad CarpenterBrad CarpenterGroup Manager - WHQL Group Manager - WHQL Windows Operating Systems DivisionWindows Operating Systems DivisionMicrosoft CorporationMicrosoft Corporation

Page 65: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program AgendaAgenda

Digital Signature PurposeDigital Signature Purpose Windows 2000 ImplementationWindows 2000 Implementation Self-Signing OverviewSelf-Signing Overview What Can Be SignedWhat Can Be Signed PrerequisitesPrerequisites AuditingAuditing

Page 66: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program Digital signatures purposeDigital signatures purpose

Promote and advance driver qualityPromote and advance driver quality Improve end-user experienceImprove end-user experience Reduce support costsReduce support costs Reduce Total Cost of OwnershipReduce Total Cost of Ownership

Page 67: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program Windows 2000 implementationWindows 2000 implementation

All files verified during setupAll files verified during setup During device install policy determines During device install policy determines

warning levelwarning level Policy OptionsPolicy Options

0 = IGNORE; all files are installed0 = IGNORE; all files are installed 1 = WARN; user warned unsigned 1 = WARN; user warned unsigned

driver is about to be installed; driver is about to be installed; default policy for Beta3 and RTMdefault policy for Beta3 and RTM

2 = BLOCK; user blocked from 2 = BLOCK; user blocked from installing unsigned driverinstalling unsigned driver

Page 68: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program Windows 2000 implementationWindows 2000 implementation

MultimediaMultimediaAudioAudioDVDDVDVideo CaptureVideo CaptureGameportGameport

PrinterPrinterSCSI AdapterSCSI AdapterSmart Card ReaderSmart Card Reader

Display AdapterDisplay AdapterHard Drive ControllerHard Drive ControllerKeyboardKeyboardHIDHIDModemModemMonitorMonitorMouseMouseNet AdapterNet Adapter

““Warn” set for the following classes:Warn” set for the following classes:

Page 69: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program OverviewOverview

Signed driver does Signed driver does NOTNOT mean mean the driver has been LOGO’dthe driver has been LOGO’d WHQL SignatureWHQL Signature

Passed Windows Logo Passed Windows Logo requirement testsrequirement tests

Listed on the Hardware Listed on the Hardware Compatibility ListCompatibility List

OEM/IHV SignatureOEM/IHV Signature Implies driver has met Logo criteriaImplies driver has met Logo criteria Driver may or may not be in the Driver may or may not be in the

WHQL submission processWHQL submission process

Page 70: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program Implementing digital signatureImplementing digital signature

Smart Card required to digitally signSmart Card required to digitally sign WHQL will provide necessary tools WHQL will provide necessary tools

and documentationand documentation Smart Card will contain signatureSmart Card will contain signature Smart Card will be valid for 90 daysSmart Card will be valid for 90 days WHQL auditing program will evaluate WHQL auditing program will evaluate

vendor for Smart Card renewalvendor for Smart Card renewal

Page 71: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program What can be signedWhat can be signed

Drivers can be self-signed without Drivers can be self-signed without re-submission forre-submission for .TXT, .HLP, and minor .INF file changes.TXT, .HLP, and minor .INF file changes

Can not add featuresCan not add features

How to get new features signedHow to get new features signed Driver is in WHQL submission processDriver is in WHQL submission process WHQL will sign passing driversWHQL will sign passing drivers WHQL signed driver must be made WHQL signed driver must be made

public within 30 days of receiptpublic within 30 days of receipt

Page 72: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program ReportingReporting

Qualified vendor will submit reportQualified vendor will submit report Device name, manufacturer, marketing Device name, manufacturer, marketing

name, Master ID of parent device, signing name, Master ID of parent device, signing company, date signed, pre-test company, date signed, pre-test confirmation, signed driver file set confirmation, signed driver file set including .CAT file, and test kit usedincluding .CAT file, and test kit used

Reporting will be done onlineReporting will be done online Reporting required twice a monthReporting required twice a month

Page 73: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program PrerequisitesPrerequisites

First version of hardware/driver must First version of hardware/driver must be in WHQL processbe in WHQL process

Company has track record with WHQLCompany has track record with WHQL Submissions within previous 90 days Submissions within previous 90 days

must be greater than 90% pass ratemust be greater than 90% pass rate Complete submission paperworkComplete submission paperwork

Page 74: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program PrerequisitesPrerequisites

Qualified vendor must provideQualified vendor must provide Staffed testing facility running logo testsStaffed testing facility running logo tests Secured location for signing serverSecured location for signing server

Company vault, locked roomCompany vault, locked room Detailed support informationDetailed support information Signed legal documentationSigned legal documentation

Qualified vendor signing drivers are Qualified vendor signing drivers are responsible for qualityresponsible for quality An OEM may sign an IHV driver, but is An OEM may sign an IHV driver, but is

accountable for meeting Logo criteriaaccountable for meeting Logo criteria

Page 75: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program AuditingAuditing

All OEM/IHV signed drivers must meet All OEM/IHV signed drivers must meet Windows Logo requirementsWindows Logo requirements

100% of signed drivers may be audited100% of signed drivers may be audited Device/Driver audited will be tested Device/Driver audited will be tested

against criteria at time it was signedagainst criteria at time it was signed If hardware not present at WHQL, If hardware not present at WHQL,

vendor must provide necessary vendor must provide necessary hardware within 10 dayshardware within 10 days

Page 76: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign Program Self-Sign Program Renewal and revocationRenewal and revocation

RenewalRenewal Submissions within previous 90 days Submissions within previous 90 days

must be greater than 90% pass ratemust be greater than 90% pass rate All audits of device/driver set passAll audits of device/driver set pass New smart cards sent 30 days prior New smart cards sent 30 days prior

to expirationto expiration

RevocationRevocation If device/driver fails to meet renewal If device/driver fails to meet renewal

criteria self-sign abilities will not criteria self-sign abilities will not be renewedbe renewed

Page 77: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign ProgramSelf-Sign ProgramCall To ActionCall To Action

Raise the quality of your submissions Raise the quality of your submissions to qualify for self-sign programto qualify for self-sign program

Understand Win2000 ImplementationUnderstand Win2000 Implementation More info on WHQL Self-Sign programMore info on WHQL Self-Sign program

[email protected]@microsoft.com

http://www.microsoft.com/hwtest/selfsign.htmhttp://www.microsoft.com/hwtest/selfsign.htm More info on Digital Signature - More info on Digital Signature -

http://www.microsoft.com/hwdev/desinit/digitsign.htmhttp://www.microsoft.com/hwdev/desinit/digitsign.htm

Page 78: WHQL Update Conference April 19 th, 1999 Munich, Germany

Self-Sign ProgramSelf-Sign ProgramQuestionsQuestions

Page 79: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Testing & Debugging Driver Testing & Debugging OverviewOverview

Thomas WohllaibThomas WohllaibWHQL Systems Team LeadWHQL Systems Team LeadWindows Operating Systems DivisionWindows Operating Systems DivisionMicrosoft CorporationMicrosoft Corporation

Page 80: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Testing & Debugging Driver Testing & Debugging

AgendaAgenda OverviewOverview Pool Tag TestingPool Tag Testing Driver Verifier TestingDriver Verifier Testing System Setup for DebuggingSystem Setup for Debugging Front Line DebuggingFront Line Debugging

Page 81: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Testing & Debugging Driver Testing & Debugging OverviewOverview

Tools added to Windows 2000 kernel Tools added to Windows 2000 kernel for testing driversfor testing drivers Pool TagPool Tag Driver VerifierDriver Verifier

Improve Reliability and StabilityImprove Reliability and Stability Increases end-user satisfactionIncreases end-user satisfaction Reduces support costsReduces support costs Reduces Total Cost of Ownership Reduces Total Cost of Ownership

Page 82: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pool Tag TestingPool Tag TestingWhat is itWhat is it

Enables kernel mode testing of driversEnables kernel mode testing of drivers Uses write protected memory pages to Uses write protected memory pages to

trap memory allocation errorstrap memory allocation errors Memory allocations come from the Memory allocations come from the

Special Pool Special Pool Enabled by new API Enabled by new API

exAllocatePoolWithTag()exAllocatePoolWithTag() Each driver has a “tag” associated with Each driver has a “tag” associated with

its memory allocation for trackingits memory allocation for tracking

Page 83: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pool Tag Testing Pool Tag Testing Memory Allocated by driverMemory Allocated by driver

Page 84: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pool Tag TestingPool Tag Testing Write Protected “Memory Mirror”Write Protected “Memory Mirror”

Page 85: WHQL Update Conference April 19 th, 1999 Munich, Germany

Pool Tag Testing Pool Tag Testing Driver writes beyond it’s allocated memoryDriver writes beyond it’s allocated memory

= Page Fault

Memory Allocated by Driver Write Protected “Memory Mirror”

Page 86: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Verifier TestingDriver Verifier TestingWhat is itWhat is it

Additional kernel tool only in Windows 2000Additional kernel tool only in Windows 2000 Integrated into WHQL June test kit releaseIntegrated into WHQL June test kit release

Can be run currently outside test kitsCan be run currently outside test kits Builds on Pool Tagging functionality in NT4Builds on Pool Tagging functionality in NT4 Easy user interface to turn onEasy user interface to turn on

Catches the following driver problemsCatches the following driver problems Multiple releases of memory, spinlock’s, IRQL’sMultiple releases of memory, spinlock’s, IRQL’s Use of un-initialized variablesUse of un-initialized variables Touching pageable code at raised IRQL or while Touching pageable code at raised IRQL or while

holding spinlockholding spinlock

Page 87: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Verifier TestingDriver Verifier TestingWhat is itWhat is it

All pool allocations from special poolAll pool allocations from special pool Allows for catching memory corruptionAllows for catching memory corruption

Allows for low memory testing, Allows for low memory testing, injecting random memory failuresinjecting random memory failures

If driver is unloadable, validates all If driver is unloadable, validates all memory associated with driver has memory associated with driver has been freedbeen freed Critical test for PnP driversCritical test for PnP drivers

Page 88: WHQL Update Conference April 19 th, 1999 Munich, Germany

System Setup for DebuggingSystem Setup for DebuggingEquipment Equipment 2 PC’s running same build2 PC’s running same build

For NT4 clean install NT4 build 1381 then install For NT4 clean install NT4 build 1381 then install SP5SP5

For Windows 2000 clean installation most recent For Windows 2000 clean installation most recent build availablebuild available

Connect null modem cable from computer Connect null modem cable from computer under test to computer used as debuggerunder test to computer used as debugger

Install latest version of WHQL HCT CD for Install latest version of WHQL HCT CD for OS under testOS under test Pooltag turned on during installPooltag turned on during install

Page 89: WHQL Update Conference April 19 th, 1999 Munich, Germany

System Setup for DebuggingSystem Setup for DebuggingFinal StepsFinal Steps Modify boot.ini on test machine to turn Modify boot.ini on test machine to turn

on debuggeron debugger Copy debugger executable and Copy debugger executable and

support filessupport files Add Service Pack support filesAdd Service Pack support files Add debug component filesAdd debug component files Set system variables on debugger Set system variables on debugger

machinemachine Start kernel debuggerStart kernel debugger

Page 90: WHQL Update Conference April 19 th, 1999 Munich, Germany

Front line debuggingFront line debuggingWho’s at faultWho’s at fault If driver writes beyond allocated If driver writes beyond allocated

block of memory a fault will occurblock of memory a fault will occur If Pool Tag related crash message at top of If Pool Tag related crash message at top of

screen on the test machine will start with screen on the test machine will start with either:either: 0x50 (PAGE_FAULT_IN_NONPAGED_AREA)0x50 (PAGE_FAULT_IN_NONPAGED_AREA)

or or 0xA (IRQL_NOT_LESS_OR_EQUAL)0xA (IRQL_NOT_LESS_OR_EQUAL)

Page 91: WHQL Update Conference April 19 th, 1999 Munich, Germany

Front line debuggingFront line debuggingDebug the crashDebug the crash Perform a “Stack trace” Perform a “Stack trace”

Enter “!reload” <cr>Enter “!reload” <cr> Enter “k” <cr>Enter “k” <cr>

Result should look like thisResult should look like this

ntkrnlmp!RtlpBreakWithStatusInstructionntkrnlmp!RtlpBreakWithStatusInstructionntkrnlmp!KeBugCheckEx+0x1f6ntkrnlmp!KeBugCheckEx+0x1f6ntkrnlmp!MmAccessFault+0x328ntkrnlmp!MmAccessFault+0x328ntkrnlmp!KiTrap0E+0xbantkrnlmp!KiTrap0E+0xbaModule!Function ....<--- (this is the faulting component)Module!Function ....<--- (this is the faulting component)

If no symbols are loaded the last line will look likeIf no symbols are loaded the last line will look like2040acdf2040acdf

Page 93: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Testing & DebuggingDriver Testing & DebuggingCall To ActionCall To Action

Make your drivers more reliable and Make your drivers more reliable and more stablemore stable

Take advantage of the built in kernel Take advantage of the built in kernel test tools for both NT4 and Win2000test tools for both NT4 and Win2000

Actively work to debug your driversActively work to debug your drivers

Page 94: WHQL Update Conference April 19 th, 1999 Munich, Germany

Driver Testing & DebuggingDriver Testing & DebuggingQuestionsQuestions

Page 95: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Update ConferenceWHQL Update ConferenceCall to ActionCall to Action Fill out WHQL Survey and/or email Fill out WHQL Survey and/or email

[email protected]@microsoft.com Visit Visit http://www.microsoft.com/http://www.microsoft.com/hwtesthwtest Understand hardware requirements for non Understand hardware requirements for non

self-test submissionsself-test submissions Pre-Test Devices before submissionPre-Test Devices before submission Use Pool Tagging and Driver Verifier to Use Pool Tagging and Driver Verifier to

increase driver reliability and stabilityincrease driver reliability and stability Raise quality of submissions to qualify for Raise quality of submissions to qualify for

self-sign programself-sign program Make sure submission paperwork, Make sure submission paperwork,

hardware, and drivers completehardware, and drivers complete

Page 96: WHQL Update Conference April 19 th, 1999 Munich, Germany

WHQL Update ConferenceWHQL Update ConferenceQuestionsQuestions

Page 97: WHQL Update Conference April 19 th, 1999 Munich, Germany