xref: /illumos-gate/usr/src/man/man8/ucodeadm.8 (revision 20a7641f9918de8574b8b3b47dbe35c4bfc78df1)
1.\" The contents of this file are subject to the terms of the Common
2.\" Development and Distribution License (the "License").  You may not use
3.\" this file except in compliance with the License.
4.\"
5.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or
6.\" http://www.opensolaris.org/os/licensing.  See the License for the
7.\" specific language governing permissions and limitations under the
8.\" License.
9.\"
10.\" When distributing Covered Code, include this CDDL HEADER in each file
11.\" and include the License file at usr/src/OPENSOLARIS.LICENSE.  If
12.\" applicable, add the following below this CDDL HEADER, with the fields
13.\" enclosed by brackets "[]" replaced with your own identifying
14.\" information: Portions Copyright [yyyy] [name of copyright owner]
15.\"
16.\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
17.\" Copyright 2022 OmniOS Community Edition (OmniOSce) Association.
18.\"
19.Dd July 23, 2022
20.Dt UCODEADM 8
21.Os
22.Sh NAME
23.Nm ucodeadm
24.Nd processor microcode utility
25.Sh SYNOPSIS
26.Nm
27.Fl i
28.Op Fl R Ar path
29.Ar microcode-file
30.Nm
31.Fl l
32.Ar microcode-file
33.Nm
34.Fl u
35.Ar microcode-file
36.Nm
37.Fl v
38.Sh DESCRIPTION
39The
40.Nm
41utility can be used to report the running microcode revision on the processors,
42update microcode, extract microcode to the target system to be used during the
43boot process, or to view details of the microcode patches contained within
44.Ar microcode-file ,
45where
46.Ar microcode-file
47is an update obtained from a processor vendor.
48.Pp
49In general, processor microcode updates are provided as part of the operating
50system and automatically applied during system boot, and there is no need for a
51system administrator to use
52.Nm
53directly.
54The operating system bundled files are not suitable for use with
55.Nm .
56.Sh OPTIONS
57.Bl -tag -width Ds
58.It Fl i Ar microcode-file
59Install microcode files on target system to be used during the next boot cycle.
60The text file name must have the vendor name prefix, such as
61.Dq intel
62or
63.Dq amd .
64.Pp
65By default the microcode files will be installed at:
66.Pp
67.D1 Pa /platform/i86pc/ucode/$VENDORSTR/
68.Pp
69where
70.Dv VENDORSTR
71is either
72.Dq GenuineIntel
73or
74.Dq AuthenticAMD .
75.It Fl l Ar microcode-file
76Display details of the microcode patches contained within
77.Ar microcode-file .
78.It Fl u Ar microcode-file
79Update microcode on all cross-call interrupt ready processors.
80.It Fl v
81Report the microcode revision for each CPU on the current system.
82.It Fl R Ar alternate-path
83Install
84.Ar microcode
85files into the provided
86.Ar alternate-path .
87.El
88.Sh EXIT STATUS
89The following exit values are returned:
90.Bl -tag -width Ds
91.It 0
92Successful completion.
93.It >0
94An error occurred.
95.El
96.Sh EXAMPLES
97.Sy Example 1 No Reporting the Microcode Revision
98.Pp
99The following example displays the microcode revision that is currently running:
100.Bd -literal -offset 4n
101# ucodeadm -v
102CPU     Microcode Version
1030       0x2f
1041       0x2f
105.Ed
106.Pp
107.Sy Example 2 No Updating the Processor Microcode
108.Pp
109The following example updates the processor microcode using
110.Pa intel-ucode.txt :
111.Bd -literal -offset 4n
112# ucodeadm -u intel-ucode.txt
113.Ed
114.Pp
115.Sy Example 3 No Installing the Microcode on the Target System
116.Pp
117The following example installs the microcode into
118.Pa /export/ucode-path
119on the target system:
120.Bd -literal -offset 4n
121# ucodeadm -i -R /export/ucode-path intel-ucode.txt
122# ls /export/ucode-path
12300001632-00
124.Ed
125.Pp
126If an alternate path is used when installing the microcode on the target
127system, the installed microcode file is not used on the next boot cycle.
128.Pp
129.Sy Example 4 No Listing the contents of a microcode file
130.Bd -literal -offset 4n
131# ucodeadm -l amd_fam17h.bin
132Equivalence table:
133    00800F82 Family=17 Model=08 Stepping=02 -> 8082
134    00800F12 Family=17 Model=01 Stepping=02 -> 8012
135    00830F10 Family=17 Model=31 Stepping=00 -> 8310
136Microcode patches:
137    8082 -> Patch=0800820D Date=04162019 Bytes=3200
138    8012 -> Patch=0800126E Date=11112021 Bytes=3200
139    8310 -> Patch=08301055 Date=02152022 Bytes=3200
140
141# ucodeadm -l intel-ucode.txt
142Microcode patches:
143    00090672-03 -> Family=06 Model=97 Stepping=02
144                   Date=03032022 Bytes=212876
145Extended Signature Table:
146    00090672-03 -> Family=06 Model=97 Stepping=02
147    00090675-03 -> Family=06 Model=97 Stepping=05
148    000B06F2-03 -> Family=06 Model=bf Stepping=02
149    000B06F5-03 -> Family=06 Model=bf Stepping=05
150.Ed
151.Sh INTERFACE STABILITY
152The command line interface of
153.Nm
154is
155.Sy Committed .
156The output of
157.Nm
158is
159.Sy Not-An-Interface
160and may change at any time.
161.Sh SEE ALSO
162.Xr attributes 7 ,
163.Xr psradm 8 ,
164.Xr psrinfo 8
165