Adding a new device target - WOA-Project/MSM8994-8992-NT-ARM64-Drivers GitHub Wiki

If you wish to add a new device target, you will need to know a few things about the structure of the driver pack, and the specifications of your device

The driver pack includes drivers that are generic enough to work on all devices. But some exceptions do exist.

Drivers that are not generic and require attention

  • qcsensors8994 - The driver pack includes the Qualcomm sensor driver in the specifics-mmo folder. This is because Microsoft Mobile Oy opted for their own custom sensor driver design. As a consequence this driver will only work for Microsoft Mobile Oy devices. The generic Qualcomm sensor driver is available here: /supplemental/Original drivers/Sensors/. You will however have to change the configurations most likely to suit your device

  • Camera sensor drivers - The camera sensor drivers must match the sensor present in your phone. We however do not have the correct sensor drivers for MMO devices. You can still load these drivers but camera won't work without matching drivers. The camera sensor drivers are available here: /msm8992-8994/Drivers/Camera/Sensors/. Please note that the tertiary driver is meant to be the iris sensor driver for MMO devices, as well as tertiary flash. We currently copied the front sensor and flash driver for this device. In the future, the driver pack will include camera drivers in vendor specific folders and not generic locations.

  • Digitizer driver - The touch driver (or digitizer driver) is for Synaptics Digitizers and is available here: /configurations/specifics-mmo/Drivers/Touch/. You will have to build your own driver if your digitizer does not match. If you have a digitizer driver and the touch input is offset, you may want to look at this configuration inf file available here: /configurations/specifics-hapanero/Touch/

  • oempanel.sys - The display panel driver included is Microsoft Mobile Oy panel driver. It may only be used in Microsoft Mobile Oy devices, but be aware the difference with qualcomm generic driver is actually more modularity. The MMO driver fetches panel configuration from ACPI tables (it's a XML file with poweron sequence and calibration data) and registry. You can thus attempt to modify the configurations to fit your device. The panel driver is available here: /configurations/graphics-*/. Please note that some devices do not require a panel driver (example: Acer Liquid Jade Primo)

  • Firmware blobs - Qualcomm WP firmware uses Hexagon firmware files (MBNs) and other calibration files. Most of these files are available here: /configurations/specifics-*/. You will need to replace firmware files with your own files as a result as they are signed against the device Root Key Hash (RKH)

  • Battery manager driver - Qualcomm battery manager driver is available in two variants, an ACPI variant and a registry variant. Use the ACPI variant if you specify the battery settings in ACPI tables. Use the registry variant if you do not. The drivers are available in the following locations: /configurations/battmngr-acpi/ and /configurations/battmngr-registry/. You will have to edit the registry settings for the registry variant to fit your device specifications.

Drivers that depend on specific SoC chips

  • Qualcomm Snapdragon 808 - /msm8992/ and /configurations/soc-final/
  • Qualcomm Snapdragon 810, Chip version 1.x - /msm8994/ and /configurations/soc-prerelease/
  • Qualcomm Snapdragon 810, Chip version 2.x - /msm8994/ and /configurations/soc-final/

Drivers common for all Chip versions

  • /msm8992-8994/

Drivers designed to be used specifically for Windows 10 Desktop editions

  • /support-desktop/

Server editions support will be added at a later time

Adding your own personalizations

The driver pack supports mechanisms for personalizations. They are meant to be used for desktop editions in the form of arbitrary cmd files (Batch files).

For an example on how to add drivers after Windows Setup usual driver installation process, see /configurations/specifics-mmo/Support/Setup/.

For an example on how to modify settings and add applications, see /configurations/specifics-mmo/Support/Customizations/.

For an example on how to set device information, see /configurations/specifics-mmo/Support/Tools/.