diff options
Diffstat (limited to 'usr.sbin/cpucontrol/cpucontrol.8')
-rw-r--r-- | usr.sbin/cpucontrol/cpucontrol.8 | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/usr.sbin/cpucontrol/cpucontrol.8 b/usr.sbin/cpucontrol/cpucontrol.8 new file mode 100644 index 0000000..cc753e0 --- /dev/null +++ b/usr.sbin/cpucontrol/cpucontrol.8 @@ -0,0 +1,116 @@ +.\" Copyright (c) 2006, 2008 Stanislav Sedov <stas@FreeBSD.org>. +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. 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 AUTHOR 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 AUTHOR 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. +.\" +.\" $FreeBSD$ +.\" +.Dd August 4, 2008 +.Dt CPUCONTROL 8 +.Os +.Sh NAME +.Nm cpucontrol +.Nd control utility for the +.Xr cpuctl 4 +device. +.Sh SYNOPSIS +.Nm +.Op Fl vh +.Fl m Ar msr Ns Op = Ns Ar value +.Bk +.Ar device +.Ek +.Nm +.Op Fl vh +.Fl i Ar level +.Bk +.Ar device +.Ek +.Nm +.Op Fl vh +.Op Fl d Ar datadir +.Fl u +.Bk +.Ar device +.Ek +.Sh DESCRIPTION +The +.Nm +utility can be used to read and write an arbitrary machine-specific +CPU registers via +.Xr cpuctl 4 +controlled special device and apply the CPU firmware updates. +.Pp +The following options are available: +.Bl -tag -width indent +.It Fl d Ar datadir +Where to look for microcode images. The option can be specified multiple times. +.It Fl m Ar msr Ns Op = Ns Ar value +Read/write the specified MSR. Both the MSR and the value should be given as a hex number. +.It Fl i Ar level +Retrieve CPUID info. Level should be given as a hex number. +.It Fl u +Apply CPU firmware updates. The +.Nm +utility will walk through the configured data directories +and will apply all firmware patches available for this CPU. +.It Fl v +Increase the verbosity level. +.It Fl h +Show help message. +.El +.Sh EXIT STATUS +The +.Nm +utility exits 0 on success, and >0 if an error occurs. +.Sh EXAMPLES +The command +.Pp +.Dq Li "cpucontrol -m 0x10 /dev/cpuctl0" +.Pp +will read the contents of TSC MSR from CPU 0. +.Pp +To set the CPU 0 TSC MSR register value to 0x1 issue +.Pp +.Dq Li "cpucontrol -m 0x10=0x1 /dev/cpuctl0" +.Pp +.Pp +The command +.Pp +.Dq Li "cpucontrol -i 0x1 /dev/cpuctl1" +.Pp +will retrieve the CPUID level 0x1 from CPU 1. +.Pp +To perform firmware updated on CPU 0 from images located at +.Pa /usr/local/share/cpuctl/ +use the following command: +.Pp +.Dq Li "cpucontrol -d /usr/local/share/cpuctl/ -u /dev/cpuctl0" +.Sh SEE ALSO +.Xr cpuctl 4 +.Sh BUGS +Yes, probably, report if any. +.Sh AUTHORS +The +.Nm +utility and this manual page was written by +.An Stanislav Sedov Aq stas@FreeBSD.org . |