ACK: [PATCH 2/2] fwts-test: Add MCHI table regression tests
Alex Hung
alex.hung at canonical.com
Wed Jul 29 04:58:34 UTC 2015
On 07/28/2015 09:01 PM, Colin King wrote:
> From: Colin Ian King <colin.king at canonical.com>
>
> Signed-off-by: Colin Ian King <colin.king at canonical.com>
> ---
> Makefile.am | 2 +
> .../arg-show-tests-0001/arg-show-tests-0001.log | 2 +
> .../arg-show-tests-full-0001.log | 4 ++
> fwts-test/mchi-0001/acpidump-0001.log | 32 ++++++++++
> fwts-test/mchi-0001/acpidump-0002.log | 32 ++++++++++
> fwts-test/mchi-0001/mchi-0001.log | 31 ++++++++++
> fwts-test/mchi-0001/mchi-0002.log | 70 ++++++++++++++++++++++
> fwts-test/mchi-0001/test-0001.sh | 17 ++++++
> fwts-test/mchi-0001/test-0002.sh | 17 ++++++
> 9 files changed, 207 insertions(+)
> create mode 100644 fwts-test/mchi-0001/acpidump-0001.log
> create mode 100644 fwts-test/mchi-0001/acpidump-0002.log
> create mode 100644 fwts-test/mchi-0001/mchi-0001.log
> create mode 100644 fwts-test/mchi-0001/mchi-0002.log
> create mode 100755 fwts-test/mchi-0001/test-0001.sh
> create mode 100755 fwts-test/mchi-0001/test-0002.sh
>
> diff --git a/Makefile.am b/Makefile.am
> index 0cb63dd..31bedd9 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -91,6 +91,8 @@ TESTS = fwts-test/acpidump-0001/test-0001.sh \
> fwts-test/slit-0001/test-0002.sh \
> fwts-test/madt-0001/test-0001.sh \
> fwts-test/madt-0001/test-0002.sh \
> + fwts-test/mchi-0001/test-0001.sh \
> + fwts-test/mchi-0001/test-0002.sh \
> fwts-test/msdm-0001/test-0001.sh \
> fwts-test/msdm-0001/test-0002.sh \
> fwts-test/method-0001/test-0001.sh \
> diff --git a/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log b/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log
> index 1aaf9df..fac372d 100644
> --- a/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log
> +++ b/fwts-test/arg-show-tests-0001/arg-show-tests-0001.log
> @@ -24,6 +24,7 @@ ACPI tests:
> lpit LPIT Low Power Idle Table test.
> madt MADT Multiple APIC Description Table test.
> mcfg MCFG PCI Express* memory mapped config space test.
> + mchi MCHI Management Controller Host Interface Table test.
> method ACPI DSDT Method Semantic tests.
> msdm MSDM Microsoft Data Management Table test.
> pcc Processor Clocking Control (PCC) test.
> @@ -84,6 +85,7 @@ Batch tests:
> maxfreq Test max CPU frequencies against max scaling frequency.
> maxreadreq Test firmware has set PCI Express MaxReadReq to a higher value on non-motherboard devices.
> mcfg MCFG PCI Express* memory mapped config space test.
> + mchi MCHI Management Controller Host Interface Table test.
> method ACPI DSDT Method Semantic tests.
> microcode Test if system is using latest microcode.
> mpcheck MultiProcessor Tables tests.
> diff --git a/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log b/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log
> index 3d0906e..f7865a0 100644
> --- a/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log
> +++ b/fwts-test/arg-show-tests-full-0001/arg-show-tests-full-0001.log
> @@ -57,6 +57,8 @@ ACPI tests:
> mcfg (2 tests):
> Validate MCFG table.
> Validate MCFG PCI config space.
> + mchi (1 test):
> + MCHI Management Controller Host Interface Table test.
> method (180 tests):
> Test Method Names.
> Test _AEI.
> @@ -372,6 +374,8 @@ Batch tests:
> mcfg (2 tests):
> Validate MCFG table.
> Validate MCFG PCI config space.
> + mchi (1 test):
> + MCHI Management Controller Host Interface Table test.
> method (180 tests):
> Test Method Names.
> Test _AEI.
> diff --git a/fwts-test/mchi-0001/acpidump-0001.log b/fwts-test/mchi-0001/acpidump-0001.log
> new file mode 100644
> index 0000000..26b9a42
> --- /dev/null
> +++ b/fwts-test/mchi-0001/acpidump-0001.log
> @@ -0,0 +1,32 @@
> +FACS @ 0x00000000
> + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS at ...........
> + 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0020: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> +
> +FACP @ 0x00000000
> + 0000: 46 41 43 50 f4 00 00 00 03 f9 41 4d 44 20 20 20 FACP......AMD
> + 0010: 47 55 41 4d 20 20 20 20 00 00 04 06 41 4d 44 20 GUAM ....AMD
> + 0020: 40 42 0f 00 c0 2f e9 af 92 47 e8 af 00 02 09 00 @B.../...G......
> + 0030: b0 00 00 00 f0 f1 00 00 00 80 00 00 00 00 00 00 ................
> + 0040: 04 80 00 00 00 00 00 00 00 82 00 00 08 80 00 00 ................
> + 0050: 20 80 00 00 00 00 00 00 04 02 01 04 08 00 00 00 ...............
> + 0060: 65 00 e9 03 00 00 00 00 01 00 0d 00 32 00 00 00 e...........2...
> + 0070: a5 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0080: 00 00 00 00 c0 2f e9 af 00 00 00 00 92 47 e8 af ...../.......G..
> + 0090: 00 00 00 00 01 20 00 00 00 80 00 00 00 00 00 00 ..... ..........
> + 00a0: 00 00 00 00 00 00 00 00 00 00 00 00 01 10 00 00 ................
> + 00b0: 04 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 00c0: 00 00 00 00 01 08 00 00 00 82 00 00 00 00 00 00 ................
> + 00d0: 01 20 00 00 08 80 00 00 00 00 00 00 01 40 00 00 . ........... at ..
> + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
> + 00f0: 00 00 00 00 ....
> +
> +MCHI @ 0x00000000
> + 0000: 4d 43 48 49 45 00 00 00 01 ba 49 4e 54 45 4c 20 MCHIE.....INTEL
> + 0010: 54 45 4d 50 4c 41 54 45 15 07 00 02 49 4e 54 4c TEMPLATE....INTL
> + 0020: 19 06 15 20 02 01 87 96 a5 b4 c3 d2 e1 f0 02 00 ... ............
> + 0030: 01 34 02 00 00 01 08 00 00 80 c0 08 00 00 80 ee .4..............
> + 0040: ff 01 02 1f 47 ....G
> +
> diff --git a/fwts-test/mchi-0001/acpidump-0002.log b/fwts-test/mchi-0001/acpidump-0002.log
> new file mode 100644
> index 0000000..afe2648
> --- /dev/null
> +++ b/fwts-test/mchi-0001/acpidump-0002.log
> @@ -0,0 +1,32 @@
> +FACS @ 0x00000000
> + 0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00 FACS at ...........
> + 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0020: 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0030: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0040: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> +
> +FACP @ 0x00000000
> + 0000: 46 41 43 50 f4 00 00 00 03 f9 41 4d 44 20 20 20 FACP......AMD
> + 0010: 47 55 41 4d 20 20 20 20 00 00 04 06 41 4d 44 20 GUAM ....AMD
> + 0020: 40 42 0f 00 c0 2f e9 af 92 47 e8 af 00 02 09 00 @B.../...G......
> + 0030: b0 00 00 00 f0 f1 00 00 00 80 00 00 00 00 00 00 ................
> + 0040: 04 80 00 00 00 00 00 00 00 82 00 00 08 80 00 00 ................
> + 0050: 20 80 00 00 00 00 00 00 04 02 01 04 08 00 00 00 ...............
> + 0060: 65 00 e9 03 00 00 00 00 01 00 0d 00 32 00 00 00 e...........2...
> + 0070: a5 c1 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 0080: 00 00 00 00 c0 2f e9 af 00 00 00 00 92 47 e8 af ...../.......G..
> + 0090: 00 00 00 00 01 20 00 00 00 80 00 00 00 00 00 00 ..... ..........
> + 00a0: 00 00 00 00 00 00 00 00 00 00 00 00 01 10 00 00 ................
> + 00b0: 04 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
> + 00c0: 00 00 00 00 01 08 00 00 00 82 00 00 00 00 00 00 ................
> + 00d0: 01 20 00 00 08 80 00 00 00 00 00 00 01 40 00 00 . ........... at ..
> + 00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
> + 00f0: 00 00 00 00 ....
> +
> +MCHI @ 0x00000000
> + 0000: 4d 43 48 49 45 00 00 00 01 a1 49 4e 54 45 4c 20 MCHIE.....INTEL
> + 0010: 54 45 4d 50 4c 41 54 45 15 07 00 02 49 4e 54 4c TEMPLATE....INTL
> + 0020: 19 06 15 20 01 fe 87 96 a5 b4 c3 d2 e1 f0 80 f0 ... ............
> + 0030: f1 34 02 00 00 04 f0 20 20 80 c0 08 00 00 80 ee .4..... .......
> + 0040: ff ff ff ff ff .....
> +
> diff --git a/fwts-test/mchi-0001/mchi-0001.log b/fwts-test/mchi-0001/mchi-0001.log
> new file mode 100644
> index 0000000..3a75218
> --- /dev/null
> +++ b/fwts-test/mchi-0001/mchi-0001.log
> @@ -0,0 +1,31 @@
> +mchi mchi: MCHI Management Controller Host Interface Table
> +mchi test.
> +mchi ----------------------------------------------------------
> +mchi Test 1 of 1: MCHI Management Controller Host Interface
> +mchi Table test.
> +mchi MCHI Table:
> +mchi Interface Type: 0x02
> +mchi Protocol Identifier 0x01
> +mchi Protocol Data: 0x87 0x96 0xa5 0xb4
> +mchi 0xc3 0xd2 0xe1 0xf0
> +mchi Interrupt Type: 0x02
> +mchi GPE: 0x00
> +mchi PCI Device Flag: 0x01
> +mchi Global System Interrupt: 0x00000234
> +mchi Base Address:
> +mchi Address Space ID: 0x01
> +mchi Register Bit Width 0x08
> +mchi Register Bit Offset 0x00
> +mchi Access Size 0x00
> +mchi Address 0xffee80000008c080
> +mchi PCI Segment Group: 0x01
> +mchi PCI Bus Number: 0x02
> +mchi PCI Device Number: 0x1f
> +mchi PCI Function Number: 0x47
> +mchi
> +mchi PASSED: Test 1, No issues found in MCHI table.
> +mchi
> +mchi ==========================================================
> +mchi 1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0
> +mchi info only.
> +mchi ==========================================================
> diff --git a/fwts-test/mchi-0001/mchi-0002.log b/fwts-test/mchi-0001/mchi-0002.log
> new file mode 100644
> index 0000000..2b63528
> --- /dev/null
> +++ b/fwts-test/mchi-0001/mchi-0002.log
> @@ -0,0 +1,70 @@
> +mchi mchi: MCHI Management Controller Host Interface Table
> +mchi test.
> +mchi ----------------------------------------------------------
> +mchi Test 1 of 1: MCHI Management Controller Host Interface
> +mchi Table test.
> +mchi MCHI Table:
> +mchi Interface Type: 0x01
> +mchi Protocol Identifier 0xfe
> +mchi Protocol Data: 0x87 0x96 0xa5 0xb4
> +mchi 0xc3 0xd2 0xe1 0xf0
> +mchi Interrupt Type: 0x80
> +mchi GPE: 0xf0
> +mchi PCI Device Flag: 0xf1
> +mchi Global System Interrupt: 0x00000234
> +mchi Base Address:
> +mchi Address Space ID: 0x04
> +mchi Register Bit Width 0xf0
> +mchi Register Bit Offset 0x20
> +mchi Access Size 0x20
> +mchi Address 0xffee80000008c080
> +mchi PCI Segment Group: 0xff
> +mchi PCI Bus Number: 0xff
> +mchi PCI Device Number: 0xff
> +mchi PCI Function Number: 0xff
> +mchi
> +mchi FAILED [HIGH] MCHIInvalidInterfaceType: Test 1, MCHI
> +mchi Interface Type is 0x01 which is reserved, allowed values
> +mchi are 0x02..0x08
> +mchi FAILED [HIGH] MCHIInvalidProtocolIdentifier: Test 1, MCHI
> +mchi Protocol Indentifier 0xfe which is reserved, allowed
> +mchi values are 0x00 (Unspecifier), 0x01 (MCTP), 0x02 (IPMI) or
> +mchi 255 (OEM defined)
> +mchi FAILED [HIGH] MCHIInterruptTypeReservedNonZero: Test 1,
> +mchi MCHI Interrupt Type 0x80 has some reserved bits [7:2] set,
> +mchi these should be all zero.
> +mchi FAILED [HIGH] MCHIGpeNonZero: Test 1, MCHI GPE is 0xf0 and
> +mchi should be zero when bit 0 of the Interrupt Type field is 0
> +mchi (SCI triggered through GPE non-supported)
> +mchi FAILED [HIGH] MCHIPciDeviceFlagReservedNonZero: Test 1,
> +mchi MCHI PCI Device Flag 0xf1 has some reserved bits [7:1] set
> +mchi , these should be all zero.
> +mchi FAILED [HIGH] MCHIGsiNonZero: Test 1, MCHI Global System
> +mchi Interrupt is 0x234 and should be zero when bit 1 of the
> +mchi Interrupt Type field is 0
> +mchi FAILED [HIGH] MCHIPciDeviceFlagInvalid: Test 1, MCHI PCI
> +mchi Device Flag is 0xf1 and bit [0] should be 0 for a SMBus
> +mchi Address Space ID
> +mchi FAILED [MEDIUM] MCHISmbusRegBitWidthNonZero: Test 1, MCHI
> +mchi Base Address Register Bit Width is 0xf0 and should be zero
> +mchi for a SMBus Address Space ID
> +mchi FAILED [MEDIUM] MCHISmbusRegBitOffsetNonZero: Test 1, MCHI
> +mchi Base Address Register Bit Offset is 0x20 and should be
> +mchi zero for a SMBus Address Space ID
> +mchi FAILED [MEDIUM] MCHISmbusRegAddressSizeInvalid: Test 1,
> +mchi MCHI Base Address Register Address Size is 0x20 and should
> +mchi be 1 (byte access) for a SMBus Address Space ID
> +mchi FAILED [MEDIUM] MCHISmbusAddressInvalid: Test 1, MCHI Base
> +mchi Address is 0xffee80000008c080 and should be 0x00..0x7f a
> +mchi SMBus Address Space ID
> +mchi FAILED [MEDIUM] MCHIPciDeviceNumberInvalid: Test 1, MCHI
> +mchi PCI Device Number is 0xff and reserved bits [7:5] should
> +mchi be zero
> +mchi FAILED [MEDIUM] MCHIPciFunctionNumberInvalid: Test 1, MCHI
> +mchi PCI Function Number is 0xff and reserved bits [7] and [5
> +mchi :3] should be zero
> +mchi
> +mchi ==========================================================
> +mchi 0 passed, 13 failed, 0 warning, 0 aborted, 0 skipped, 0
> +mchi info only.
> +mchi ==========================================================
> diff --git a/fwts-test/mchi-0001/test-0001.sh b/fwts-test/mchi-0001/test-0001.sh
> new file mode 100755
> index 0000000..20835f6
> --- /dev/null
> +++ b/fwts-test/mchi-0001/test-0001.sh
> @@ -0,0 +1,17 @@
> +#!/bin/bash
> +#
> +TEST="Test table against MCHI"
> +NAME=test-0001.sh
> +TMPLOG=$TMP/mchi.log.$$
> +
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/mchi-0001/acpidump-0001.log mchi - | cut -c7- | grep "^mchi" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/mchi-0001/mchi-0001.log >> $FAILURE_LOG
> +ret=$?
> +if [ $ret -eq 0 ]; then
> + echo PASSED: $TEST, $NAME
> +else
> + echo FAILED: $TEST, $NAME
> +fi
> +
> +rm $TMPLOG
> +exit $ret
> diff --git a/fwts-test/mchi-0001/test-0002.sh b/fwts-test/mchi-0001/test-0002.sh
> new file mode 100755
> index 0000000..0081373
> --- /dev/null
> +++ b/fwts-test/mchi-0001/test-0002.sh
> @@ -0,0 +1,17 @@
> +#!/bin/bash
> +#
> +TEST="Test table against MCHI"
> +NAME=test-0001.sh
> +TMPLOG=$TMP/mchi.log.$$
> +
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/mchi-0001/acpidump-0002.log mchi - | cut -c7- | grep "^mchi" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/mchi-0001/mchi-0002.log >> $FAILURE_LOG
> +ret=$?
> +if [ $ret -eq 0 ]; then
> + echo PASSED: $TEST, $NAME
> +else
> + echo FAILED: $TEST, $NAME
> +fi
> +
> +rm $TMPLOG
> +exit $ret
>
Acked-by: Alex Hung <alex.hung at canonical.com>
More information about the fwts-devel
mailing list