Chapter 5. Using DriverWizard

This chapter describes the WinDriver DriverWizard utility and its hardware diagnostics and driver code generation capabilities.

5.1. An Overview

DriverWizard (included in the WinDriver toolkit) is a graphical user interface (GUI) tool that is targeted at two major phases in the hardware and driver development:

  • Hardware diagnostics — DriverWizard enables you to write and read hardware resources before writing a single line of code. After the hardware has been built, attach your device to a USB port on your machine, view its configuration and pipes information, and verify the hardware's functionality by transferring data on the pipes, sending standard requests on the control pipe, and resetting the pipes.
  • Code generation — Once you have verified that the device is operating to your satisfaction, use DriverWizard generate skeletal driver source code with functions to view and access your hardware's resources.

On Windows, DriverWizard can also be used to generate an INF file [11.1] for your hardware.

The code generated by DriverWizard is composed of the following elements:

  • Library functions for accessing each element of your device's resources (memory ranges, I/O ranges, registers and interrupts).
  • A 32-bit diagnostics program in console mode with which you can diagnose your device. This application utilizes the special library functions described above. Use this diagnostics program as your skeletal device driver.
  • A project solution that you can use to automatically load all of the project information and files into your development environment.
    For Linux, DriverWizard generates the required makefile.