ACPI: Add a method to notify OS to re-read _PPC

Split this behavior out from PNOT() so the OS can
update _PPC limit without re-reading C-state tables.

Change-Id: I81b9111a4866f6b9916f74ac57a3caefaa77c565
Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Reviewed-on: http://review.coreboot.org/1342
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
Duncan Laurie 2012-07-16 12:14:49 -07:00 committed by Ronald G. Minnich
parent 0eefa00503
commit d6aca0b7b1
1 changed files with 19 additions and 8 deletions

View File

@ -33,29 +33,40 @@ External (\_PR.CPU7, DeviceObj)
Method (PNOT) Method (PNOT)
{ {
If (LGreaterEqual (\PCNT, 2)) { If (LGreaterEqual (\PCNT, 2)) {
Notify (\_PR.CPU0, 0x80) // _PPC
Notify (\_PR.CPU0, 0x81) // _CST Notify (\_PR.CPU0, 0x81) // _CST
Notify (\_PR.CPU1, 0x80) // _PPC
Notify (\_PR.CPU1, 0x81) // _CST Notify (\_PR.CPU1, 0x81) // _CST
} }
If (LGreaterEqual (\PCNT, 4)) { If (LGreaterEqual (\PCNT, 4)) {
Notify (\_PR.CPU2, 0x80) // _PPC
Notify (\_PR.CPU2, 0x81) // _CST Notify (\_PR.CPU2, 0x81) // _CST
Notify (\_PR.CPU3, 0x80) // _PPC
Notify (\_PR.CPU3, 0x81) // _CST Notify (\_PR.CPU3, 0x81) // _CST
} }
If (LGreaterEqual (\PCNT, 8)) { If (LGreaterEqual (\PCNT, 8)) {
Notify (\_PR.CPU4, 0x80) // _PPC
Notify (\_PR.CPU4, 0x81) // _CST Notify (\_PR.CPU4, 0x81) // _CST
Notify (\_PR.CPU5, 0x80) // _PPC
Notify (\_PR.CPU5, 0x81) // _CST Notify (\_PR.CPU5, 0x81) // _CST
Notify (\_PR.CPU6, 0x80) // _PPC
Notify (\_PR.CPU6, 0x81) // _CST Notify (\_PR.CPU6, 0x81) // _CST
Notify (\_PR.CPU7, 0x80) // _PPC
Notify (\_PR.CPU7, 0x81) // _CST Notify (\_PR.CPU7, 0x81) // _CST
} }
} }
/* Notify OS to re-read CPU _PPC limit, assuming ^2 CPU count */
Method (PPCN)
{
If (LGreaterEqual (\PCNT, 2)) {
Notify (\_PR.CPU0, 0x80) // _PPC
Notify (\_PR.CPU1, 0x80) // _PPC
}
If (LGreaterEqual (\PCNT, 4)) {
Notify (\_PR.CPU2, 0x80) // _PPC
Notify (\_PR.CPU3, 0x80) // _PPC
}
If (LGreaterEqual (\PCNT, 8)) {
Notify (\_PR.CPU4, 0x80) // _PPC
Notify (\_PR.CPU5, 0x80) // _PPC
Notify (\_PR.CPU6, 0x80) // _PPC
Notify (\_PR.CPU7, 0x80) // _PPC
}
}
/* Notify OS to re-read Throttle Limit tables, assuming ^2 CPU count */ /* Notify OS to re-read Throttle Limit tables, assuming ^2 CPU count */
Method (TNOT) Method (TNOT)
{ {