inteltool: handle unsafe dumping of graphics registers

The current implementation from Vladimir simply dumps 1 MB of memory
contents starting at the base address of the second PCI device (which
most likely is the VGA controller on Intel systems). This locks up a
number of different systems, e.g. my Ibex Peak-based T410s.

This patch documents the issue and stops dumping the graphics registers
for the -a/--all parameter.

Change-Id: I581bdc63db60afaf4792bc11fbeed73aab57f63a
Signed-off-by: Stefan Tauner <stefan.tauner@gmx.at>
Reviewed-on: https://review.coreboot.org/14627
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
Stefan Tauner 2016-05-10 23:16:33 +02:00 committed by Martin Roth
parent 6a587343a9
commit 37fcd58ba6
2 changed files with 4 additions and 4 deletions

View File

@ -35,7 +35,8 @@ Dump I/O Controller Hub (ICH) southbridge RCBA registers.
Dump I/O Controller Hub (ICH) southbridge SPI registers and bios control.
.TP
.B "\-f, \-\-gfx"
Dump graphics registers.
.RB "Dump graphics registers. " \
"Due to unknown reasons this might lock up some systems after a few seconds."
.TP
.B "\-p, \-\-pmbase"
Dump I/O Controller Hub (ICH) southbridge PMBASE registers.

View File

@ -220,7 +220,7 @@ void print_usage(const char *name)
" -v | --version: print the version\n"
" -h | --help: print this help\n\n"
" -s | --spi: dump southbridge spi and bios_cntrl registers\n"
" -f | --gfx: dump graphics registers\n"
" -f | --gfx: dump graphics registers (UNSAFE: may hang system!)\n"
" -g | --gpio: dump southbridge GPIO registers\n"
" -G | --gpio-diffs: show GPIO differences from defaults\n"
" -r | --rcba: dump southbridge RCBA registers\n"
@ -232,7 +232,7 @@ void print_usage(const char *name)
" -P | --pciexpress: dump northbridge PCIEXBAR registers\n\n"
" -M | --msrs: dump CPU MSRs\n"
" -A | --ambs: dump AMB registers\n"
" -a | --all: dump all known registers\n"
" -a | --all: dump all known (safe) registers\n"
"\n");
exit(1);
}
@ -326,7 +326,6 @@ int main(int argc, char *argv[])
dump_coremsrs = 1;
dump_ambs = 1;
dump_spi = 1;
dump_gfx = 1;
break;
case 'A':
dump_ambs = 1;