AN2534 PAC193X Integration Notes for Microsoft® Windows® 10 Driver Support Author: Razvan Ungureanu TABLE 2: REVISION HISTORY Microchip Technology Inc

AN2534 PAC193X Integration Notes for Microsoft® Windows® 10 Driver Support Author: Razvan Ungureanu TABLE 2: REVISION HISTORY Microchip Technology Inc

AN2534 PAC193X Integration Notes for Microsoft® Windows® 10 Driver Support Author: Razvan Ungureanu TABLE 2: REVISION HISTORY Microchip Technology Inc. Rev# Date Description 1.0 20-June-2017 The information in this INTRODUCTION document apply to the This document describes the basic steps for integrating PAC193X driver releases: the PAC193X DC Power Monitor device in a Microsoft® 1.0, 1.1 and 1.2 Windows® 10 host system in order to enable support of the Windows® 10 PAC193X driver. HARDWARE INTEGRATION As the PAC193X device can be used in multiple ways The hardware integration must first address all the and in different system configurations, there are some electrical details specified in the device data sheet. For 2 specific hardware and BIOS configuration details that example, the device VDD IO must match the I C bus need to be addressed before loading the Windows® voltage. But the following hardware notes address only device driver. the hardware details that need specific configuration in ® The details about the PAC193X Windows® 10 device order to make them compatible with the Windows 10 driver loading, feature set and software interfaces are device driver: included in the PAC193X Windows® 10 Driver User’s •I2C bus controller Windows® support Guide that complements the information presented by • PAC193X VDD and SLOW/ALERT pin connections this document. • Channel shunt resistor values . TABLE 1: GLOSSARY OF TERMS AND • Channel polarity ACRONYMS I2C Bus Controller Windows® Support Acronym Term 2 E3 Energy Estimation Engine The PAC193X device I C/SMBus interface is by default configured in the I2C Mode. Mind that the SMBus EMI Energy Metering Interface protocol is not currently supported by Windows®. OS Operating System Therefore, the system integrators must connect the 2 CPU Central Processing Unit PAC devices to the I C bus controllers for which a Windows® 10 driver is available and the driver is SoC System on Chip compatible with the Windows® Simple Peripheral Bus EC Embedded Controller Framework Extension - SpbCx. This is a mandatory SPB Simple Peripheral Bus condition since the PAC193X Windows® 10 driver uses SpbCx SPB Framework Extension the SpbCx standard software interface in order to communicate with I2C slaves. ACPI Advanced Configuration and Power 2 Interface The I C bus controller may be located in the system CPU (SoC architecture), in the system Embedded ASL ACPI Source Language Controller (EC) or may be another device connected to BIOS Basic Input / Output System one of the system internal buses. OEM Original Equipment Manufacturer UUID Universal Unique Identifier PAC193X VDD and SLOW/ALERT Pin DSM Device Specific Method Connections I2C Inter-Integrated Circuit The usual PAC193X system integration scenario SMBUS System Management Bus assumes that the system power rails are also This document is provided as part of the Microchip monitored during the standby or shutdown system PAC193X Windows® 10 driver release and is subject to states. Therefore, the PAC device VDD pin should be change with new releases of the driver. connected to a system power rail that is not shut down by the system standby or power-down sequence. This The document revision number is Rev.1.0. way, the PAC device continues to be capable of 2017 Microchip Technology Inc. DS00002534A-page 1 AN2534 accumulating the data about the system energy • Windows® E3 service is not able by design to consumption during the standby/shutdown state, if control the channel polarity ® desired. The PAC193X Windows device driver is able • The standard Energy Metering Interface (EMI) ® to retrieve and report this data to the Windows Energy through which the driver provides the energy Estimation Engine (E3) or user applications. figures to E3 service allows only positive integer In order to facilitate a longer period in values. standby/shutdown state, reducing the chances for accumulator register overflow, the device sample rate ACPI BIOS INTEGRATION should be reduced to a minimum. This also reduces energy use by the PAC193X device. In normal system Over and above any integration guidance provided in operation, this is done by the Windows® device driver this document, OEMs and system integrators are that reconfigures the CONTROL register SRN bits just responsible for creating a valid ACPI BIOS that before the operating system switches the system in the accurately reflects their hardware platform. This standby/shutdown state. In case of operating system includes the details of how the PAC193X is configured crash, eventually the system is forcibly shut down by and connected in the system. the user or by some automated safety mechanism. The The guidance provided in this section is limited to PAC device driver is not functional in case of a describing the details that are necessary to integrate ® Windows system crash but the PAC device can still be the PAC193X device that is part of a system with the reconfigured in slow sampling mode if the SLOW pin is PAC193X device driver and the Windows® operating driven high. The SLOW pin can be driven high by a system. hardware block that detects the system power OFF. For example, the SLOW pin can be driven by a transistor Appendix A: “Sample ACPI PAC193X Device that is gated by the CPU or by the main memory power Definition” of this document contains an example rails. Alternatively, the SLOW pin may be driven by the ACPI device definition, written in ACPI Source system Embedded Controller. The EC is usually an Language (ASL). The example illustrates how a always-ON device which controls various hardware low PAC193X is to be integrated into the ACPI BIOS. level housekeeping and also controls the system power Please refer to the Appendix A example when reading rails and the power ON sequence. this section. When the system is turned back ON, the PAC Appendix B: “Test the PAC193X ACPI Integration” Windows® device driver is able to detect that the of this document provides an example of easily SLOW pin was asserted and collects the data available tools and the process to follow in order to accumulated during this time period. This is possible quickly test the PAC193X integration into the system, because the driver makes sure that SLOW/ALERT pin without replacing the BIOS firmware in the system is always configured as SLOW and the SLOW pin FLASH. transitions trigger the accumulator registers limited refresh (these are PAC device default settings). PAC193X Device Description There are several per-device and per-channel Channel Shunt Resistor (RSENSE) configuration options that are defined when a The PAC193X Windows® device driver supports only PAC193X is built into a system. These options include: shunt resistor values that are integer values when •The I2C address for each PAC193X device in the expressed in milliohms. For instance, a value of 1.5 system; milliohms is not supported. • The power rail to which each PAC193X channel is The recommended shunt resistor tolerance is 1%. connected; •The RSENSE value configured for each channel; Channel Polarity • For which of the PAC193X channels the Windows® driver must not create the Energy Metering Interface By default, the PAC device channel configuration is for (EMI) (channels defined as private channels). unipolar voltage measurements. This configuration is preserved by the Windows® device driver during the These options, which are chosen on a per-platform initialization phase. Still, the user applications may basis, need to be communicated to the PAC193X change any channel to bipolar/bidirectional by calling a device driver. This allows the driver to properly inform ® dedicated driver interface. However, because the Windows about system power usage via the standard ® Windows® E3 service supports only positive energy Windows EMI. values, it is recommended to connect the PAC device The method for communicating these configuration SENSE pins to the power rails such that, by default, the options to the PAC193X driver is via the PAC193X VSENSE voltage is read as a positive value. There are device definition in the platform's ACPI BIOS. The OEM two reasons for this: is responsible for providing a proper ACPI device definition for each PAC193X device configured in the DS00002534A-page 2 2017 Microchip Technology Inc. AN2534 system. Creating a proper definition for the PAC193X The RSENSE value is specified in milliohms and only device includes providing the device-specific integer values are allowed. configuration items outlined in this document. To indicate that a particular channel is not used on a The definition for the PAC193X device may be copied given PAC193X device (that is, no power calculations directly from the Appendix A: “Sample ACPI should be performed for it), set the channel's RSENSE PAC193X Device Definition” example, multiplied and value to zero. customized for the use on a particular system. The It is possible to use one or more PAC193X channels to items within the PAC193X device definition block that monitor power rails without exposing those will need to be changed to reflect a given system measurements to the Windows® Energy Metering configuration are highlighted and labeled with the tags Interface. Such channels are referred to as Private OEM: and TODO:. channels. The PAC193X device driver will calculate the As part of the PAC193X device definition a _DSM power usage for Private channels too, but will not (Device Specific Method) control method that create the standard EMI interface, and so the results corresponds to the Universal Unique Identifier - UUID - will not be accessible to Windows®. Still, the data 033771E0-1705-47B4-9535-D1BBE14D9A09 must calculated for a Private channel can be queried by user be specified, as shown in the example. This UUID is applications by using the Microchip-defined PAC193X reserved to Microchip for the PAC193X and must not device-specific IOCTLs. To indicate that a particular be changed.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    10 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us