| /* Microsoft Reference Implementation for TPM 2.0 | |
| * | |
| * The copyright in this software is being made available under the BSD License, | |
| * included below. This software may be subject to other third party and | |
| * contributor rights, including patent rights, and no such rights are granted | |
| * under this license. | |
| * | |
| * Copyright (c) Microsoft Corporation | |
| * | |
| * All rights reserved. | |
| * | |
| * BSD License | |
| * | |
| * Redistribution and use in source and binary forms, with or without modification, | |
| * are permitted provided that the following conditions are met: | |
| * | |
| * Redistributions of source code must retain the above copyright notice, this list | |
| * of conditions and the following disclaimer. | |
| * | |
| * Redistributions in binary form must reproduce the above copyright notice, this | |
| * list of conditions and the following disclaimer in the documentation and/or | |
| * other materials provided with the distribution. | |
| * | |
| * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ""AS IS"" | |
| * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
| * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | |
| * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR | |
| * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | |
| * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | |
| * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON | |
| * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | |
| * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
| */ | |
| //** Description | |
| // This module simulates the physical presence interface pins on the TPM. | |
| //** Includes | |
| #include "Platform.h" | |
| //** Functions | |
| //***_plat__PhysicalPresenceAsserted() | |
| // Check if physical presence is signaled | |
| // Return Type: int | |
| // TRUE(1) if physical presence is signaled | |
| // FALSE(0) if physical presence is not signaled | |
| LIB_EXPORT int | |
| _plat__PhysicalPresenceAsserted( | |
| void | |
| ) | |
| { | |
| // Do not know how to check physical presence without real hardware. | |
| // so always return TRUE; | |
| return s_physicalPresence; | |
| } | |
| //***_plat__Signal_PhysicalPresenceOn() | |
| // Signal physical presence on | |
| LIB_EXPORT void | |
| _plat__Signal_PhysicalPresenceOn( | |
| void | |
| ) | |
| { | |
| s_physicalPresence = TRUE; | |
| return; | |
| } | |
| //***_plat__Signal_PhysicalPresenceOff() | |
| // Signal physical presence off | |
| LIB_EXPORT void | |
| _plat__Signal_PhysicalPresenceOff( | |
| void | |
| ) | |
| { | |
| s_physicalPresence = FALSE; | |
| return; | |
| } |