coreboot-kgpe-d16/util/msrtool
Kyösti Mälkki 15a971b89f util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x
Registers IA32_MCi_xx are defined as architectural MSRs
since "P6 Family Processors" and should have model-agnostic
indexing.

Note that in IA32 architecture manual, names of these MSRs are
similarly swapped in the table of Intel Core Microarchitecture.
I take this is an error in the documentation only, and it got
copy-pasted across different CPU family files in the utility.

Change-Id: I227102875b5c3d6ac144ed23a3085f3c37dabd4a
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/26269
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2018-05-15 03:56:51 +00:00
..
configure msrtool/configure: change svn to git 2015-12-14 22:52:49 +01:00
COPYING msrtool: Release Candidate 1 2008-11-22 17:13:36 +00:00
cs5536.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
darwin.c Use more secure HTTPS URLs for coreboot sites 2017-06-07 12:04:50 +02:00
freebsd.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
geodegx2.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
geodelx.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
intel_atom.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_core1.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_core2_early.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_core2_later.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_nehalem.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_pentium3.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_pentium3_early.c util/msrtool: Fix swapped IA32_MC3_x and IA32_MC4_x 2018-05-15 03:56:51 +00:00
intel_pentium4_early.c mstrool: only use intel targets for actual intel CPUs 2018-05-13 10:07:12 +00:00
intel_pentium4_later.c mstrool: only use intel targets for actual intel CPUs 2018-05-13 10:07:12 +00:00
k8.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
linux.c tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
Makefile.in msrtool: Remove no-pic from CFLAGS 2017-06-09 16:32:54 +02:00
msrtool.c util/msrtool: Exit program after displaying the help message 2017-08-22 10:10:49 +00:00
msrtool.h msrtool: use a bit more clever cpuid vendor match 2018-05-15 03:55:19 +00:00
msrutils.c msrtool: add support for printing string values 2018-05-13 10:07:23 +00:00
README msrtool/README: Remove trailing spaces 2016-07-28 01:08:47 +02:00
sys.c msrtool: use a bit more clever cpuid vendor match 2018-05-15 03:55:19 +00:00
TODO msrtool: Use libpci to let system and target probes find PCI devices. 2008-11-25 02:03:16 +00:00

You need to be ROOT or use SUDO to execute MSRTOOL.

Note that you need /dev/cpu/*/msr available to run msrtool in Linux.


syntax: msrtool [-hvqrkl] [-c cpu] [-m system] [-t target ...]
         [-i addr=hi[:]lo] | [-s file] | [-d [:]file] | addr...
  -h     show this help text
  -v     be verbose
  -q     be quiet (overrides -v)
  -r     include [Reserved] values
  -k     list all known systems and targets
  -l     list MSRs and bit fields for current target(s) (-kl for ALL targets!)
  -c     access MSRs on the specified CPU, default=0
  -m     force a system, e.g: -m linux
  -t     force a target, can be used multiple times, e.g: -t geodelx -t cs5536
  -i     immediate mode
         decode hex addr=hi:lo for the target without reading hw value
         e.g: -i 4c00000f=f2f100ff56960004
  -s     stream mode
         read one MSR address per line and append current hw value to the line
         use the filename - for stdin/stdout
         using -l -s ignores input and will output all MSRs with values
  -d     diff mode
         read one address and value per line and compare with current hw value,
         printing differences to stdout. use the filename - to read from stdin
         use :file or :- to reverse diff, normally hw values are considered new
  addr.. direct mode, read and decode values for the given MSR address(es)


Examples:

msrtool 0x20000018

./msrtool 0x200000{18,19,1a,1b,1c,1d} 0x4c0000{0f,14}