|Where to look for microcode images. The option can be specified multiple times.|
|-m msr [= value]|
|Show value of the specified MSR. MSR register number should be given as a hexadecimal number.|
|-m msr = value|
|Store the value in the specified MSR register. The value argument can be prefixed with ~ operator. In this case the inverted value of argument will be stored in the register.|
|-m msr &= mask|
|Store the result of bitwise AND operation between mask and the current MSR value in the MSR register. The mask argument can be prefixed with ~ operator. In this case the inverted value of mask will be used.|
|-m msr |= mask|
|Store the result of bitwise OR operation between mask and the current MSR value in the MSR register. The mask argument can be prefixed with ~ operator. In this case the inverted value of mask will be used.|
|Retrieve CPUID info. Level should be given as a hex number.|
|Retrieve CPUID info. Level and level_type should be given as hex numbers.|
|-u||Apply CPU firmware updates. The cpucontrol utility will walk through the configured data directories and apply all firmware updates available for this CPU.|
|-v||Increase the verbosity level.|
|-h||Show help message.|
"cpucontrol -m 0x10 /dev/cpuctl0"
will read the contents of TSC MSR from CPU 0.
To set the CPU 0 TSC MSR register value to 0x1 issue
"cpucontrol -m 0x10=0x1 /dev/cpuctl0".
The following command will clear the second bit of TSC register:
"cpucontrol -m 0x10&=~0x02 /dev/cpuctl0".
The following command will set the forth and second bit of TSC register:
"cpucontrol -m 0x10|=0x0a /dev/cpuctl0".
"cpucontrol -i 0x1 /dev/cpuctl1"
will retrieve the CPUID level 0x1 from CPU 1.
To perform firmware updates on CPU 0 from images located at /usr/local/share/cpuctl/ use the following command:
"cpucontrol -d /usr/local/share/cpuctl/ -u /dev/cpuctl0"
The cpucontrol utility first appeared in
.Fx 7.2 .
The cpucontrol utility and this manual page was written by
.An Stanislav Sedov Aq stas@FreeBSD.org .
Yes, probably, report if any.