]> git.baikalelectronics.ru Git - kernel.git/commit
x86: fix: make PCI ECS for AMD CPUs hotplug capable
authorRobert Richter <robert.richter@amd.com>
Fri, 22 Aug 2008 18:23:38 +0000 (20:23 +0200)
committerIngo Molnar <mingo@elte.hu>
Sat, 23 Aug 2008 15:39:31 +0000 (17:39 +0200)
commit73cf726036f863324b0b60d681d7c4a050742672
tree6427703ae3c0768debe23ccc2c7c7470be35658f
parentd9601217fc64ed518d91613e5424deb015cea70f
x86: fix: make PCI ECS for AMD CPUs hotplug capable

Until now, PCI ECS setup was performed at boot time only and for cpus
that are enabled then. This patch fixes this and adds cpu hotplug.

Tests sequence (check if ECS bit is set when bringing cpu online again):

 # ( perl -e 'sysseek(STDIN, 0xC001001F, 0)'; hexdump -n 8 -e '2/4 "%08x " "\n"' )   < /dev/cpu/1/msr
 00000008 00404010
 # ( perl -e 'sysseek(STDOUT, 0xC001001F, 0); print pack "l*", 8, 0x00400010' ) > /dev/cpu/1/msr
 # ( perl -e 'sysseek(STDIN, 0xC001001F, 0)'; hexdump -n 8 -e '2/4 "%08x " "\n"' )   < /dev/cpu/1/msr
 00000008 00400010
 # echo 0 > /sys/devices/system/cpu/cpu1/online
 # echo 1 > /sys/devices/system/cpu/cpu1/online
 # ( perl -e 'sysseek(STDIN, 0xC001001F, 0)'; hexdump -n 8 -e '2/4 "%08x " "\n"' )   < /dev/cpu/1/msr
 00000008 00404010

Reported-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Robert Richter <robert.richter@amd.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/pci/amd_bus.c