linux/include/linux/tpm.h
<<
>>
Prefs
   1/*
   2 * Copyright (C) 2004,2007,2008 IBM Corporation
   3 *
   4 * Authors:
   5 * Leendert van Doorn <leendert@watson.ibm.com>
   6 * Dave Safford <safford@watson.ibm.com>
   7 * Reiner Sailer <sailer@watson.ibm.com>
   8 * Kylene Hall <kjhall@us.ibm.com>
   9 * Debora Velarde <dvelarde@us.ibm.com>
  10 *
  11 * Maintained by: <tpmdd_devel@lists.sourceforge.net>
  12 *
  13 * Device driver for TCG/TCPA TPM (trusted platform module).
  14 * Specifications at www.trustedcomputinggroup.org
  15 *
  16 * This program is free software; you can redistribute it and/or
  17 * modify it under the terms of the GNU General Public License as
  18 * published by the Free Software Foundation, version 2 of the
  19 * License.
  20 *
  21 */
  22#ifndef __LINUX_TPM_H__
  23#define __LINUX_TPM_H__
  24
  25/*
  26 * Chip num is this value or a valid tpm idx
  27 */
  28#define TPM_ANY_NUM 0xFFFF
  29
  30#if defined(CONFIG_TCG_TPM) || defined(CONFIG_TCG_TPM_MODULE)
  31
  32extern int tpm_pcr_read(u32 chip_num, int pcr_idx, u8 *res_buf);
  33extern int tpm_pcr_extend(u32 chip_num, int pcr_idx, const u8 *hash);
  34extern int tpm_send(u32 chip_num, void *cmd, size_t buflen);
  35#else
  36static inline int tpm_pcr_read(u32 chip_num, int pcr_idx, u8 *res_buf) {
  37        return -ENODEV;
  38}
  39static inline int tpm_pcr_extend(u32 chip_num, int pcr_idx, const u8 *hash) {
  40        return -ENODEV;
  41}
  42static inline int tpm_send(u32 chip_num, void *cmd, size_t buflen) {
  43        return -ENODEV;
  44}
  45#endif
  46#endif
  47