linux/arch/x86/pci
Robert Richter 91ede005d7 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>
2008-08-23 17:39:31 +02:00
..
acpi.c Revert "x86/PCI: ACPI based PCI gap calculation" 2008-07-16 16:21:47 -07:00
amd_bus.c x86: fix: make PCI ECS for AMD CPUs hotplug capable 2008-08-23 17:39:31 +02:00
common.c Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2008-07-16 17:25:46 -07:00
direct.c x86: Move PCI IO ECS code to x86/pci 2008-07-08 07:47:39 +02:00
early.c x86: convert Dprintk to pr_debug 2008-07-21 21:35:38 +02:00
fixup.c x86/PCI: use dev_printk when possible 2008-07-28 15:32:26 -07:00
i386.c x86/PCI: use dev_printk when possible 2008-07-28 15:32:26 -07:00
init.c x86/pci: removing subsys_initcall ordering dependencies 2008-07-09 11:45:03 +02:00
irq.c x86/PCI: use dev_printk when possible 2008-07-28 15:32:26 -07:00
legacy.c x86/pci: Changing subsystem init for visws 2008-07-11 21:22:59 +02:00
Makefile x86/pci: renamed: numa.c -> numaq_32.c 2008-07-11 21:22:58 +02:00
mmconfig_32.c x86: clear pci_mmcfg_virt when mmcfg get rejected 2008-04-26 23:41:03 +02:00
mmconfig_64.c x86: clear pci_mmcfg_virt when mmcfg get rejected 2008-04-26 23:41:03 +02:00
mmconfig-shared.c x86: silence mmconfig printk 2008-08-15 13:52:39 +02:00
numaq_32.c x86/PCI: use dev_printk when possible 2008-07-28 15:32:26 -07:00
olpc.c PCI/x86: fix up PCI stuff so that PCI_GOANY supports OLPC 2008-06-05 14:29:25 -07:00
pcbios.c PCI: remove initial bios sort of PCI devices on x86 2008-04-20 21:46:58 -07:00
pci.h Merge branches 'x86/urgent', 'x86/amd-iommu', 'x86/apic', 'x86/cleanups', 'x86/core', 'x86/cpu', 'x86/fixmap', 'x86/gart', 'x86/kprobes', 'x86/memtest', 'x86/modules', 'x86/nmi', 'x86/pat', 'x86/reboot', 'x86/setup', 'x86/step', 'x86/unify-pci', 'x86/uv', 'x86/xen' and 'xen-64bit' into x86/for-linus 2008-07-21 16:37:17 +02:00
visws.c x86/pci: Changing subsystem init for visws 2008-07-11 21:22:59 +02:00