A few days ago I got a new Shuttle MiniPC SN78SH7 - like this one: Shuttle Global - Home
This computer supports the AMD Phenom X4 line of CPUs. I have the 3.2GHz Quad Core 955 Black Edition version.
Problems started when I tried to install OpenSUSE 11.1 (64-bit). After the DVD menu came up, a black screen would ensue.
After some fiddling, I finally managed to install the OS in text mode, with all sorts of kernel settings disabled. However more often than not, the machine would again not start on reboot. I got rid of splash and the VGA settings in GRUB, so could see that it would typically hang when trying to bring up the CPU cores. Sometimes it would get to CPU2, other times to 3, and occasionally it would manage to get to an X session.
After some major trial and error I narrowed the problems down to the fact that the machine would boot if I passed the following kernel arguments in GRUB menu:
acpi=off apm=off noapic
Unfortunately while the computer then manages to start, it only runs one of the processor cores. Running /proc/cat/cpuinfo gives the following output:
processor : 0
vendor_id : AuthenticAMD
cpu family : 16
model : 4
model name : AMD Phenom™ II X4 955 Processor
stepping : 2
cpu MHz : 800.000
cache size : 512 KB
physical id : 0
siblings : 1
core id : 0
cpu cores : 1
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 5
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt
bogomips : 6399.97
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 48 bits physical, 48 bits virtual
power management: ts ttp tm stc 100mhzsteps hwpstate
Needless to say, it is annoying to have a quad CPU running on just one cylinder!
I tried to upgrade the standard kernel (126.96.36.199-0.1-default) to 188.8.131.52-1.2 from the OpenSUSE Factory repository and also to a different version of 2.6.30.x from the KOTD repository, to see whether there may be some improvement in the CPU detection.
The KOTD kernel seems to run a lot faster and has a better success rate with picking up all of the CPUs, but unfortunately no matter what I do I have not been able to compile the NVIDIA driver on either of the 2.30.x series (and yes, I do have the correct kernel sources, configured with “make mrproper…” etc etc…it still fails every time, and even when trying to run the install with "*.run -k $(uname -r) switch, the compilation seemingly successfully concludes, but the module will not load into the kernel). If anyone has any suggestions on the NVIDIA issue, I would also like to hear those - the card on this machine is the GeForce 8200.
I am not a Linux guru, but neither am I inexperienced - I’ve been running nothing but SuSE since version 9. I have also done plenty of googling and the AMD multiple CPU problem seems to be common, but I have not been able to find any definitive answer as to how to fix it.
The BIOS on the Shuttle has been upgraded to the latest version (the one that came with the computer would not even recognise the Phenom), but it does not give any options with regards to disabling or even modifying ACPI and/or APIC settings.
If anyone here would have any hints as to how to get this sorted, I would be extremely grateful.