Skip Ribbon Commands
Skip to main content

Distribution

:

Drivers: Home

Documentation and logs for UVM OS and application distribution methodologies
Drivers Repository Management:

Management of drivers in the Deployment Workbench needs to observe the following procedure in order to ensure integrity of the driver store.
  1. Connect to the driver staging area, located in E:\staging\drivers on the server SYSIMG3 (\\sysimg3.campus.ad.uvm.edu\staging$\drivers, via UNC).
  2. New drivers to be added to the store are staged in \\sysimg3\staging$\drivers\import according to the following rules:
    1. Drivers that are documented as supported on specific OS versions and architectures (i.e. WinPE x64, Windows Vista x86, Windows 7 x64) are to be added to the appropriate subdirectory of the "import" directory.  At the time of this writing, only Dell provides drivers to us with this level of specificity.
      1. OS/architecture subdirectory should contain vendor directories (i.e. Dell, VMware, Apple) indicating the driver's origin.
      2. Additional subdirectory structures are driven by the vendor.  For example, Dell delivers drivers in hardware-specific "CAB" files, which should be unpacked and copied directly into the "Dell" subdirectory for each appropriate OS/architecture.
    1. Drivers that match multiple operating systems or architectures should be imported into the "other-all" or "other-<arch>" directories, following the conventions above conventions for subdirectory structure.
  3. Drivers that cause problems in production should be moved to the "no-import" directory that sits parallel to the "import" directory, following the same subdirectory organization rules as above.  At present, Alps touchpad drivers are a leading cause of problems.  Some care should be taken to remove legacy Alps drivers from the import repository when adding newer versions.
  4. After adding new drivers, especially Dell driver CABs, run the following PowerShell commands on the import directory.  This will reduce (but not eliminate) the number of duplicate drivers in the workbench:
    1. gci -Directory -exclude .hg* | % {gci -include version.txt -recurse $_ | Remove-Item}
    2. gci -Directory -exclude .hg* | % {gci -include release.dat -recurse $_ | Remove-Item}
    3. gci -Directory -exclude .hg* | % {gci -include cachescrubbed.txt -recurse $_ | Remove-Item}
  5. All additions and modifications to the "import" directory need to be committed using the "Mercurial" (Hg) revision control system.  You will need to perform "hg add" and "hg commit" operations before moving on to the next step.  Uncommitted changes and/or un-commented changes may be deleted without notification.
  6. Each subdirectory of "import" has a matching driver group in the deployment workbench.  Before importing a new driver into the workbench, delete all contents of the workbench driver group, then import the group from the corresponding staging directory.
  7. Anytime new storage or network drivers are added to the WinPE-Dell-[arch], other-[arch], or other-all driver groups, you will need to update and redistribute the LiteTouch boot media:
    1. Replicate drivers from the pre-prod deployment share to production using the "Advanced Configuration->Linked Deployment Shares->[LinkID]->right-click->Replicate" option.
    2. Right-click the root of the deployment share and select "Update Deployment Share".  Use the "completely regenrate boot images" option for the most reliable results.
    3. Boot images will be created in \\sysimg3\deploy\boot.  Distribute these images as follows:
      1. To support CD-based booting to LiteTouch, copy the boot ISO files to \\files.uvm.edu\software\deploy
      2. To support USB-based boot to LiteTouch, copy the WIM files to \\files.uvm.edu\software\deploy\LiteTouch-[arch]_USB\sources\.  Delete the existing "boot.wim" from the directory, and rename the new WIM file to "boot.wim".
      3. To support PXE (network) boot, use the Windows Deployment Services MMC snap-in to connect to "sysimg2".  Use the "replace existing image" option to import the new boot wim file over the existing boot images.
It will be tempting to bypass parts of this process, especially when adding just import a single driver.  Please resist this temptation as doing so may cause unpredictable driver detection behavior.  Changes that are made outside of the change management process likely will be lost.

Driver Information Discovery:

To find the class of the driver, look in the .inf file for the class= assignment.

Example:
[version]
signature="$Windows NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%Intel%
CatalogFile = mesrl.cat
DriverVer=03/20/2007,5.4.0.1065
 
The Deployment Workbench defines these categories of Out-of-Box Drivers:
 
Display - Video
MEDIA - Audio
Net - Network
SCSIAdapter - Storage
These folders can be located in E:\distribution\Out-of-Box Drivers on SYSIMG3, but should not be manually edited.  The E:\staging folder contains the drivers that are imported via the deployment workbench.
 
Other possible driver folders that might appear at some point: