Latitude D820 +Virtualization
Art Fore
art.fore at gmail.com
Sat Nov 18 21:37:11 CST 2006
Here is the complete output from the Intel program.
DSDT AML verification
4
This test first disassembles the DSDT of the BIOS, and then uses the
IASL compiler from Intel to recompile the code. The IASL copiler is much
stricter in detecting deviations from the ACPI specification and can
find numerous defects that other AML compilers cannot find. Fixing these
defects increases the probability that the BIOS will operate well with a
variety of operating systems.
String must be entirely alphanumeric (*pnp0c14) in \_SB.AMW0.
4
aml://\_SB_.AMW0.
String must be entirely alphanumeric (*pnp0c14)
At \_SB.AMW0.
| }
|
| Device (AMW0)
| {
| Mutex (WMIX, 0x01)
>>> Name (_HID, "*pnp0c14")
| Name (_UID, 0x00)
| Method (STBY, 3, NotSerialized)
| {
| CreateByteField (Arg0, Arg1, TMP)
Use of reserved word (_T_0) in \_SB.PCI0.ISAB.TPM._DSM.
4
aml://\_SB_.PCI0.ISAB.TPM_._DSM.
Use of reserved word (_T_0)
At \_SB.PCI0.ISAB.TPM._DSM.
| {
| 0xA6, 0xFA, 0xDD, 0x3D, 0x1B, 0x36, 0xB4, 0x4E,
| 0xA4, 0x24, 0x8D, 0x10, 0x08, 0x9D, 0x16, 0x53
| }))
| {
>>> Name (_T_0, Zero)
| Store (ToInteger (Arg2), _T_0)
| If (LEqual (_T_0, 0x00))
| {
| Return (Buffer (0x01)
Use of reserved word (_T_1) in \_SB.PCI0.ISAB.TPM._DSM.
4
aml://\_SB_.PCI0.ISAB.TPM_._DSM.
Use of reserved word (_T_1)
At \_SB.PCI0.ISAB.TPM._DSM.
| }
| Else
| {
| If (LEqual (_T_0, 0x06))
| {
>>> Name (_T_1, "")
| Store (ToString (Arg3, Ones), _T_1)
| If (LEqual (_T_1, "en"))
| {
| Return (Zero)
Use of reserved word (_T_2) in \_SB.PCI0.ISAB.TPM._DSM.
4
aml://\_SB_.PCI0.ISAB.TPM_._DSM.
Use of reserved word (_T_2)
At \_SB.PCI0.ISAB.TPM._DSM.
| {
| 0xED, 0x54, 0x60, 0x37, 0x13, 0xCC, 0x75, 0x46,
| 0x90, 0x1C, 0x47, 0x56, 0xD7, 0xF2, 0xD4, 0x5D
| }))
| {
>>> Name (_T_2, Zero)
| Store (ToInteger (Arg2), _T_2)
| If (LEqual (_T_2, 0x00))
| {
| Return (Buffer (0x01)
Result is not used, operator has no effect in \_SB.PCI0.LNKA._CRS.
2
aml://\_SB_.PCI0.LNKA._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKA._CRS.
| CreateWordField (BUFA, \_SB.PCI0.LNKA._CRS._X00._INT, IRA)
| Store (PIRA, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRA)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKB._CRS.
2
aml://\_SB_.PCI0.LNKB._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKB._CRS.
| CreateWordField (BUFB, \_SB.PCI0.LNKB._CRS._X01._INT, IRB)
| Store (PIRB, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRB)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKC._CRS.
2
aml://\_SB_.PCI0.LNKC._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKC._CRS.
| CreateWordField (BUFC, \_SB.PCI0.LNKC._CRS._X02._INT, IRC)
| Store (PIRC, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRC)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKD._CRS.
2
aml://\_SB_.PCI0.LNKD._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKD._CRS.
| CreateWordField (BUFD, \_SB.PCI0.LNKD._CRS._X03._INT, IRD)
| Store (PIRD, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRD)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKE._CRS.
2
aml://\_SB_.PCI0.LNKE._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKE._CRS.
| CreateWordField (BUFE, \_SB.PCI0.LNKE._CRS._X04._INT, IRE)
| Store (PIRE, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRE)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKF._CRS.
2
aml://\_SB_.PCI0.LNKF._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKF._CRS.
| CreateWordField (BUFF, \_SB.PCI0.LNKF._CRS._X05._INT, IRF)
| Store (PIRF, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRF)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKG._CRS.
2
aml://\_SB_.PCI0.LNKG._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKG._CRS.
| CreateWordField (BUFG, \_SB.PCI0.LNKG._CRS._X06._INT, IRG)
| Store (PIRG, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRG)
| }
Result is not used, operator has no effect in \_SB.PCI0.LNKH._CRS.
2
aml://\_SB_.PCI0.LNKH._CRS.
Result is not used, operator has no effect
At \_SB.PCI0.LNKH._CRS.
| CreateWordField (BUFH, \_SB.PCI0.LNKH._CRS._X07._INT, IRH)
| Store (PIRH, Local0)
| And (Local0, 0x8F, Local0)
| If (LLess (Local0, 0x80))
| {
>>> And (Local0, 0x0F)
| Store (0x01, Local1)
| ShiftLeft (Local1, Local0, Local1)
| Store (Local1, IRH)
| }
Effective AML package length is zero in \_SB.PCI0.VID2._DOD.
1
aml://\_SB_.PCI0.VID2._DOD.
Effective AML package length is zero
At \_SB.PCI0.VID2._DOD.
| {
| }
|
| Method (_DOD, 0, NotSerialized)
| {
>>> Return (Package (0x00) {})
| }
| }
|
| Device (PCIE)
Possible operator timeout is ignored in \_SB.PCI0.PCIE.GDCK._EJ0.
2
aml://\_SB_.PCI0.PCIE.GDCK._EJ0.
Possible operator timeout is ignored
At \_SB.PCI0.PCIE.GDCK._EJ0.
| Store (SMI (0x87, 0x00), MIS7)
| If (MIS7)
| {
| SMI (0xA6, 0x02)
| SMI (0x49, 0x01)
>>> Wait (EJTD, 0xA000)
| SMI (0x49, 0x00)
| }
|
| Return (0x00)
mcfg
MCFG PCI Express* memory mapped config space
4
This test tries to validate the MCFG table by comparing the first 16
bytes in the MMIO mapped config space with the 'traditional' config
space of the first PCI device (root bridge). The MCFG data is only
trusted if it is marked reserved in the E820 table.
E820: XSDT (0xb2930100) is not in reserved or ACPI memory!
4
e820://
ACPI: there are different addresses (0 and 7fe82fc0) for table MCFG in
XSDT versus RSDT.
2
No MCFG ACPI table found. This table is required for PCI Express*.
2
FADT
FADT test
4
verify FADT SCI_EN bit enabled or NOT.
E820: XSDT (0xb2930100) is not in reserved or ACPI memory!
4
e820://
ACPI: there are different addresses (0 and 7fe82800) for table FACP in
XSDT versus RSDT.
2
No FADT ACPI table found.
2
acpiinfo
General ACPI information
4
This test checks the output of the in-kernel ACPI CA against common
error messages that indicate a bad interaction with the bios, including
those that point at AML syntax errors.
ACPI table TCPA has an invalid checksum
4
dmesg://
ACPI: TCPA (v001 DELL M07 0x27d60a0d ASL 0x00000061) @
0x7fe83300
DSDT was compiled by the Intel AML compiler
1
ACPI: DSDT (v001 INT430 SYSFexxx 0x00001001 INTL 0x20050624) @
0x00000000
Linux ACPI interpreter has version 20060127
1
ACPI: Subsystem revision 20060127
edd
EDD Boot disk hinting
4
This test verifies if the BIOS directs the operating system on which
storage device to use for booting (EDD information). This is important
for systems that (can) have multiple disks. Linux distributions
increasingly depend on this info to find out on which device to install
the bootloader.
Boot device 0x80 does not support EDD
4
battery
Battery tests
2
This test reports which (if any) batteries there are in the system. In
addition, for charging or discharging batteries, the test validates that
the reported 'current capacity' properly increments/decrements in line
with the charge/discharge state.
This test also stresses the entire battery state reporting codepath in
the ACPI BIOS, and any warnings given by the ACPI interpreter will be
reported.
Battery present but name or state unsupported
2
/proc/acpi/battery/BAT1/info
Battry BAT0 is model DELL YD6236 and is currently charged
1
aml://\_SB_.BAT0
cstates
Processor C state support
2
This test checks if all processors have the same number of C-states, if
the C-state counter works and if C-state transitions happen.
Processor 1 has not reached C2
2
Processor 0 has reached all C-states
0
cpufreq
CPU frequency scaling tests
1
For each processor in the system, this test steps through the various
frequency states (P-states) that the BIOS advertises for the processor.
For each processor/frequency combination, a quick performance value is
measured. The test then validates that:
1) Each processor has the same number of frequency states
2) Higher advertised frequencies have a higher performance
3) No duplicate frequency values are reported by the BIOS
5 CPU frequency steps supported
1
Frequency | Speed
-----------+---------
2.83 Ghz | 100.0 %
2.50 Ghz | 85.8 %
2.17 Ghz | 71.5 %
1333 Mhz | 57.3 %
1000 Mhz | 43.0 %
ethernet
Ethernet functionality
1
This test is currently a placeholder for a more advanced ethernet test.
Currently the only check performed is that a link is acquired within 45
seconds of enabling the interface. 45 seconds is close to the value most
Linux distributions use as timeout value.
In the future the plan is to also perform actual data transfer tests as
part of the ethernet test, to validate interrupt routing and other
per-NIC behaviors.
Acquired ethernet link after 4 seconds
1
pci://0000:09:00.0
Got a DHCP lease
0
Internet Systems Consortium DHCP Client V3.0.3-RedHat
Copyright 2004-2005 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/products/DHCP
Listening on LPF/eth0/00:15:c5:bf:83:57
Sending on LPF/eth0/00:15:c5:bf:83:57
Sending on Socket/fallback
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 4
DHCPOFFER from 192.168.1.1
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPACK from 192.168.1.1
bound to 192.168.1.6 -- renewal in 32706 seconds.
pciresource
Validate assigned PCI resources
0
This test is currently a placeholder and just checks the kernel log for
complaints about PCI resource errors. In the future the idea is to
actually perform a validation step on all PCI resources against a
certain rule-set.
fan
Fan tests
0
This test reports how many fans there are in the system. It also checks
for the states of the fan.
mtrr
MTRR validation
0
This test validates the MTRR setup against the memory map to detect any
inconsistencies in cachability.
>
More information about the Linux-Desktops
mailing list