Bug 81231

Summary: Linux kernel does not support XPSS/XPCC/XPCT
Product: Drivers Reporter: Thomas Richter (thor)
Component: Platform_x86Assignee: drivers_platform_x86 (drivers_platform_x86)
Status: ASSIGNED ---    
Severity: normal CC: tianyu.lan
Priority: P1    
Hardware: i386   
OS: Linux   
Kernel Version: 3.15.0 Subsystem:
Regression: No Bisected commit-id:
Attachments: DSDT of the IBM R31

Description Thomas Richter 2014-07-27 19:51:31 UTC
Created attachment 144301 [details]
DSDT of the IBM R31

The linux acpi subsystem does currently not support the XPSS specification for extended frequency scaling of processors. Apparently, the IBM R31 Bios makes use of this entry instead of the traditional _PSS and friends. The extensions are documented at 

ftp://ftp.sas.ewi.utwente.nl/Outgoing/TM_2300_4000_4500/Manuals/Specification/XPSS_spec.doc

The IBM R31 dsdt is attached. This is from the latest Bios.
Comment 1 Lan Tianyu 2014-08-04 02:30:56 UTC
These are out of the ACPI spec and so reassign to platform/x86 component.
Comment 2 Thomas Richter 2014-08-04 18:16:57 UTC
Made additional checks on this. Just renaming XPSS/XPCC/XPCT to their proper ACPI names (_PSS,_PCC,_PCT) results unfortunately in a broken configuration. _PSS does not seem to be updated correctly by the Bios to reflect the available speedstep frequencies of the CPU. The machine has currently a 1.2Ghz P-III installed, and IBM offered back then also models with this CPU (so it's not a modification that is beyond the specs). The latest Bios is installed, though the speed step information in XPSS is wrong and reflects the settings for a 1GHz CPU with a 733Mhz low-power speed step.

Thus, there is probably nothing to fix at this momemt. The kernel discovers the correct CPU without XPSS, and the infomation within XPSS seems to be broken. Hard to say what one is supposed to do about them, but see the above document how these segments are defined.