xref: /freebsd/share/man/man4/tpm.4 (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1.\"
2.\" Copyright (c) 2010 Hans-Joerg Hoexer
3.\"
4.\" Permission to use, copy, modify, and distribute this software for any
5.\" purpose with or without fee is hereby granted, provided that the above
6.\" copyright notice and this permission notice appear in all copies.
7.\"
8.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15.\"
16.Dd October 31, 2018
17.Dt TPM 4
18.Os
19.Sh NAME
20.Nm tpm
21.Nd Trusted Platform Module
22.Sh SYNOPSIS
23To compile this driver into the kernel,
24place the following lines in your
25kernel configuration file:
26.Bd -ragged -offset indent
27.Cd "device tpm"
28.Ed
29.Pp
30Alternatively, to load the driver as a
31module at boot time, place the following line in
32.Xr loader.conf 5 :
33.Bd -literal -offset indent
34tpm_load="YES"
35.Ed
36.Pp
37In
38.Pa /boot/device.hints :
39.Cd hint.tpm.0.at="isa"
40.Cd hint.tpm.0.maddr="0xfed40000"
41.Cd hint.tpm.0.msize="0x5000"
42.Cd hint.tpm.1.at="isa"
43.Cd hint.tpm.1.maddr="0xfed40000"
44.Cd hint.tpm.1.msize="0x1000"
45.Sh DESCRIPTION
46The
47.Nm
48driver provides support for various trusted platform modules (TPM) that can
49store cryptographic keys.
50.Pp
51Supported modules:
52.Pp
53.Bl -bullet -compact -offset indent
54.It
55Atmel 97SC3203
56.It
57Broadcom BCM0102
58.It
59Infineon IFX SLD 9630 TT 1.1 and IFX SLB 9635 TT 1.2
60.It
61Intel INTC0102
62.It
63Sinosun SNS SSX35
64.It
65STM ST19WP18
66.It
67Winbond WEC WPCT200
68.El
69.Pp
70The driver can be configured to use an IRQ by providing a free ISA
71interrupt vector in
72.Pa /boot/device.hints .
73.Sh SEE ALSO
74.Xr intro 4 ,
75.Xr device.hints 5 ,
76.Xr config 8
77.Pp
78The homepage of the BSSSD project, which developed the original
79.Nm
80driver:
81.Lk "http://bsssd.sourceforge.net/" .
82.Pp
83TPM main specification can be found at:
84.Lk "https://trustedcomputinggroup.org/resource/tpm-main-specification/" .
85.Sh STANDARDS
86TPM Main Specification Level 2 Version 1.2:
87.Bl -dash
88.It
89.Rs
90.%A ISO/IEC
91.%T 11889-1:2009, Information technology -- Trusted Platform Module -- Part 1: Overview
92.%U "https://www.iso.org/standard/50970.html"
93.Re
94.It
95.Rs
96.%A ISO/IEC
97.%T 11889-2:2009, Information technology -- Trusted Platform Module -- Part 2: Design principles
98.%U "https://www.iso.org/standard/50971.html"
99.Re
100.It
101.Rs
102.%A ISO/IEC
103.%T 11889-3:2009, Information technology -- Trusted Platform Module -- Part 3: Structures
104.%U "https://www.iso.org/standard/50972.html"
105.Re
106.El
107.Sh HISTORY
108The
109.Nm
110driver
111first appeared in
112.Fx 8.2
113and was later added to
114.Ox 6.1 .
115.Sh AUTHORS
116.An -nosplit
117The
118.Nm
119driver was written by
120.An Michael Shalayeff
121and
122.An Hans-Joerg Hoexer .
123