diff mbox

[2/2,V2] fwts-test: Add MSDM table regression test

Message ID 1435912696-1654-1-git-send-email-colin.king@canonical.com
State Accepted
Headers show

Commit Message

Colin Ian King July 3, 2015, 8:38 a.m. UTC
From: Colin Ian King <colin.king@canonical.com>

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 Makefile.am                                        |  2 ++
 .../arg-show-tests-0001/arg-show-tests-0001.log    |  2 ++
 .../arg-show-tests-full-0001.log                   |  6 +++-
 fwts-test/msdm-0001/acpidump-0001.log              | 33 ++++++++++++++++++++++
 fwts-test/msdm-0001/acpidump-0002.log              | 33 ++++++++++++++++++++++
 fwts-test/msdm-0001/msdm-0001.log                  | 16 +++++++++++
 fwts-test/msdm-0001/msdm-0002.log                  | 22 +++++++++++++++
 fwts-test/msdm-0001/test-0001.sh                   | 17 +++++++++++
 fwts-test/msdm-0001/test-0002.sh                   | 17 +++++++++++
 9 files changed, 147 insertions(+), 1 deletion(-)
 create mode 100644 fwts-test/msdm-0001/acpidump-0001.log
 create mode 100644 fwts-test/msdm-0001/acpidump-0002.log
 create mode 100644 fwts-test/msdm-0001/msdm-0001.log
 create mode 100644 fwts-test/msdm-0001/msdm-0002.log
 create mode 100755 fwts-test/msdm-0001/test-0001.sh
 create mode 100755 fwts-test/msdm-0001/test-0002.sh

Comments

Ivan Hu July 3, 2015, 9:22 a.m. UTC | #1
On 2015年07月03日 16:38, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>   Makefile.am                                        |  2 ++
>   .../arg-show-tests-0001/arg-show-tests-0001.log    |  2 ++
>   .../arg-show-tests-full-0001.log                   |  6 +++-
>   fwts-test/msdm-0001/acpidump-0001.log              | 33 ++++++++++++++++++++++
>   fwts-test/msdm-0001/acpidump-0002.log              | 33 ++++++++++++++++++++++
>   fwts-test/msdm-0001/msdm-0001.log                  | 16 +++++++++++
>   fwts-test/msdm-0001/msdm-0002.log                  | 22 +++++++++++++++
>   fwts-test/msdm-0001/test-0001.sh                   | 17 +++++++++++
>   fwts-test/msdm-0001/test-0002.sh                   | 17 +++++++++++
>   9 files changed, 147 insertions(+), 1 deletion(-)
>   create mode 100644 fwts-test/msdm-0001/acpidump-0001.log
>   create mode 100644 fwts-test/msdm-0001/acpidump-0002.log
>   create mode 100644 fwts-test/msdm-0001/msdm-0001.log
>   create mode 100644 fwts-test/msdm-0001/msdm-0002.log
>   create mode 100755 fwts-test/msdm-0001/test-0001.sh
>   create mode 100755 fwts-test/msdm-0001/test-0002.sh
>
> diff --git a/Makefile.am b/Makefile.am
> index 3ae4257..9ce4540 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -87,6 +87,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/msdm-0001/test-0001.sh \
> +	fwts-test/msdm-0001/test-0002.sh \
>   	fwts-test/method-0001/test-0001.sh \
>   	fwts-test/oops-0001/test-0001.sh \
>   	fwts-test/oops-0001/test-0002.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 97b8954..5ed488f 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
> @@ -23,6 +23,7 @@ ACPI tests:
>    madt            MADT Multiple APIC Description Table test.
>    mcfg            MCFG PCI Express* memory mapped config space test.
>    method          ACPI DSDT Method Semantic tests.
> + msdm            MSDM Microsoft Data Management Table test.
>    pcc             Processor Clocking Control (PCC) test.
>    rsdp            RSDP Root System Description Pointer test.
>    rsdt            RSDT Root System Description Table test.
> @@ -79,6 +80,7 @@ Batch tests:
>    method          ACPI DSDT Method Semantic tests.
>    microcode       Test if system is using latest microcode.
>    mpcheck         MultiProcessor Tables tests.
> + msdm            MSDM Microsoft Data Management Table test.
>    msr             MSR register tests.
>    mtrr            MTRR tests.
>    nx              Test if CPU NX is disabled by the BIOS.
> 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 ced52e0..d93b217 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
> @@ -234,6 +234,8 @@ ACPI tests:
>     Test _CBA (Configuration Base Address).
>     Test _IFT (IPMI Interface Type).
>     Test _SRV (IPMI Interface Revision).
> + msdm            (1 test):
> +  MSDM Microsoft Data Management Table test.
>    pcc             (1 test):
>     Processor Clocking Control (PCC) test.
>    rsdp            (1 test):
> @@ -549,6 +551,8 @@ Batch tests:
>     Test MP System Address entries.
>     Test MP Bus Hierarchy entries.
>     Test MP Compatible Bus Address Space entries.
> + msdm            (1 test):
> +  MSDM Microsoft Data Management Table test.
>    msr             (5 tests):
>     Test CPU generic MSRs.
>     Test CPU specific model MSRs.
> @@ -806,4 +810,4 @@ UEFI tests:
>     Test UEFI RT service query variable info interface stress test.
>     Test UEFI RT service get variable interface, invalid parameters.
>   
> -Total of 657 tests
> +Total of 659 tests
> diff --git a/fwts-test/msdm-0001/acpidump-0001.log b/fwts-test/msdm-0001/acpidump-0001.log
> new file mode 100644
> index 0000000..ce4cd09
> --- /dev/null
> +++ b/fwts-test/msdm-0001/acpidump-0001.log
> @@ -0,0 +1,33 @@
> +FACS @ 0x00000000
> +  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
> +  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  ................
> +  0030: 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  . ...........@..
> +  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
> +  00f0: 00 00 00 00                                      ....
> +
> +MSDM @ 0x00000000
> +  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
> +  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
> +  0020: 00 00 04 00 01 00 00 00 00 00 00 00 01 00 00 00  ................
> +  0030: 00 00 00 00 1d 00 00 00 41 48 33 4e 52 2d 42 38  ........AH3NR-B8
> +  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
> +  0050: 31 41 4b 4d 48                                   1AKMH
> +
> diff --git a/fwts-test/msdm-0001/acpidump-0002.log b/fwts-test/msdm-0001/acpidump-0002.log
> new file mode 100644
> index 0000000..99dc2b0
> --- /dev/null
> +++ b/fwts-test/msdm-0001/acpidump-0002.log
> @@ -0,0 +1,33 @@
> +FACS @ 0x00000000
> +  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
> +  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  ................
> +  0030: 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  . ...........@..
> +  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
> +  00f0: 00 00 00 00                                      ....
> +
> +MSDM @ 0x00000000
> +  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
> +  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
> +  0020: 00 00 04 00 01 00 00 00 ff ff ff ff 01 00 00 00  ................
> +  0030: 20 00 00 00 1d 00 00 00 41 48 33 4e 52 2a 42 38  ........AH3NR*B8
> +  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
> +  0050: 31 41 4b 4d 48                                   1AKMH
> +
> diff --git a/fwts-test/msdm-0001/msdm-0001.log b/fwts-test/msdm-0001/msdm-0001.log
> new file mode 100644
> index 0000000..f984d11
> --- /dev/null
> +++ b/fwts-test/msdm-0001/msdm-0001.log
> @@ -0,0 +1,16 @@
> +msdm            msdm: MSDM Microsoft Data Management Table test.
> +msdm            ----------------------------------------------------------
> +msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
> +msdm              Reserved:                 0x00000000
> +msdm              Data Type:                0x00000001
> +msdm              Data Reserved:            0x00000000
> +msdm              Data Length:              0x0000001d
> +msdm              Data:                     'AH3NR-B8FDN-C1WTG-5CR9X-1AKMH'
> +msdm            MSDM has had minimal check due to proprietary nature of
> +msdm            the table
> +msdm            PASSED: Test 1, No issues found in MSDM table.
> +msdm
> +msdm            ==========================================================
> +msdm            1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0
> +msdm            info only.
> +msdm            ==========================================================
> diff --git a/fwts-test/msdm-0001/msdm-0002.log b/fwts-test/msdm-0001/msdm-0002.log
> new file mode 100644
> index 0000000..2f4953e
> --- /dev/null
> +++ b/fwts-test/msdm-0001/msdm-0002.log
> @@ -0,0 +1,22 @@
> +msdm            msdm: MSDM Microsoft Data Management Table test.
> +msdm            ----------------------------------------------------------
> +msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
> +msdm              Reserved:                 0xffffffff
> +msdm              Data Type:                0x00000001
> +msdm              Data Reserved:            0x00000020
> +msdm              Data Length:              0x0000001d
> +msdm            FAILED [HIGH] MSDMReservedNonZero: Test 1, MSDM Reserved
> +msdm            field should be zero, got 0xffffffff instead
> +msdm            FAILED [HIGH] MSDMDataReservedNonZero: Test 1, MSDM Data
> +msdm            Reserved field should be zero, got 0x00000020 instead
> +msdm              Data:                     'AH3NR*B8FDN-C1WTG-5CR9X-1AKMH'
> +msdm            FAILED [HIGH] MSDMDataLengthInvalid: Test 1, MSDM Data
> +msdm            field did not contain digits, uppercase letters and -
> +msdm            characters in the form XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
> +msdm            MSDM has had minimal check due to proprietary nature of
> +msdm            the table
> +msdm
> +msdm            ==========================================================
> +msdm            0 passed, 3 failed, 0 warning, 0 aborted, 0 skipped, 0
> +msdm            info only.
> +msdm            ==========================================================
> diff --git a/fwts-test/msdm-0001/test-0001.sh b/fwts-test/msdm-0001/test-0001.sh
> new file mode 100755
> index 0000000..3d34f02
> --- /dev/null
> +++ b/fwts-test/msdm-0001/test-0001.sh
> @@ -0,0 +1,17 @@
> +#!/bin/bash
> +#
> +TEST="Test table against MSDM"
> +NAME=test-0001.sh
> +TMPLOG=$TMP/msdm.log.$$
> +
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0001.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-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/msdm-0001/test-0002.sh b/fwts-test/msdm-0001/test-0002.sh
> new file mode 100755
> index 0000000..042bddb
> --- /dev/null
> +++ b/fwts-test/msdm-0001/test-0002.sh
> @@ -0,0 +1,17 @@
> +#!/bin/bash
> +#
> +TEST="Test table against invalid MSDM"
> +NAME=test-0001.sh
> +TMPLOG=$TMP/msdm.log.$$
> +
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0002.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-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: Ivan Hu<ivan.hu@canonical.com>
Alex Hung July 6, 2015, 1:49 a.m. UTC | #2
On 07/03/2015 04:38 PM, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
> 
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>  Makefile.am                                        |  2 ++
>  .../arg-show-tests-0001/arg-show-tests-0001.log    |  2 ++
>  .../arg-show-tests-full-0001.log                   |  6 +++-
>  fwts-test/msdm-0001/acpidump-0001.log              | 33 ++++++++++++++++++++++
>  fwts-test/msdm-0001/acpidump-0002.log              | 33 ++++++++++++++++++++++
>  fwts-test/msdm-0001/msdm-0001.log                  | 16 +++++++++++
>  fwts-test/msdm-0001/msdm-0002.log                  | 22 +++++++++++++++
>  fwts-test/msdm-0001/test-0001.sh                   | 17 +++++++++++
>  fwts-test/msdm-0001/test-0002.sh                   | 17 +++++++++++
>  9 files changed, 147 insertions(+), 1 deletion(-)
>  create mode 100644 fwts-test/msdm-0001/acpidump-0001.log
>  create mode 100644 fwts-test/msdm-0001/acpidump-0002.log
>  create mode 100644 fwts-test/msdm-0001/msdm-0001.log
>  create mode 100644 fwts-test/msdm-0001/msdm-0002.log
>  create mode 100755 fwts-test/msdm-0001/test-0001.sh
>  create mode 100755 fwts-test/msdm-0001/test-0002.sh
> 
> diff --git a/Makefile.am b/Makefile.am
> index 3ae4257..9ce4540 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -87,6 +87,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/msdm-0001/test-0001.sh \
> +	fwts-test/msdm-0001/test-0002.sh \
>  	fwts-test/method-0001/test-0001.sh \
>  	fwts-test/oops-0001/test-0001.sh \
>  	fwts-test/oops-0001/test-0002.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 97b8954..5ed488f 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
> @@ -23,6 +23,7 @@ ACPI tests:
>   madt            MADT Multiple APIC Description Table test.
>   mcfg            MCFG PCI Express* memory mapped config space test.
>   method          ACPI DSDT Method Semantic tests.
> + msdm            MSDM Microsoft Data Management Table test.
>   pcc             Processor Clocking Control (PCC) test.
>   rsdp            RSDP Root System Description Pointer test.
>   rsdt            RSDT Root System Description Table test.
> @@ -79,6 +80,7 @@ Batch tests:
>   method          ACPI DSDT Method Semantic tests.
>   microcode       Test if system is using latest microcode.
>   mpcheck         MultiProcessor Tables tests.
> + msdm            MSDM Microsoft Data Management Table test.
>   msr             MSR register tests.
>   mtrr            MTRR tests.
>   nx              Test if CPU NX is disabled by the BIOS.
> 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 ced52e0..d93b217 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
> @@ -234,6 +234,8 @@ ACPI tests:
>    Test _CBA (Configuration Base Address).
>    Test _IFT (IPMI Interface Type).
>    Test _SRV (IPMI Interface Revision).
> + msdm            (1 test):
> +  MSDM Microsoft Data Management Table test.
>   pcc             (1 test):
>    Processor Clocking Control (PCC) test.
>   rsdp            (1 test):
> @@ -549,6 +551,8 @@ Batch tests:
>    Test MP System Address entries.
>    Test MP Bus Hierarchy entries.
>    Test MP Compatible Bus Address Space entries.
> + msdm            (1 test):
> +  MSDM Microsoft Data Management Table test.
>   msr             (5 tests):
>    Test CPU generic MSRs.
>    Test CPU specific model MSRs.
> @@ -806,4 +810,4 @@ UEFI tests:
>    Test UEFI RT service query variable info interface stress test.
>    Test UEFI RT service get variable interface, invalid parameters.
>  
> -Total of 657 tests
> +Total of 659 tests
> diff --git a/fwts-test/msdm-0001/acpidump-0001.log b/fwts-test/msdm-0001/acpidump-0001.log
> new file mode 100644
> index 0000000..ce4cd09
> --- /dev/null
> +++ b/fwts-test/msdm-0001/acpidump-0001.log
> @@ -0,0 +1,33 @@
> +FACS @ 0x00000000
> +  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
> +  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  ................
> +  0030: 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  . ...........@..
> +  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
> +  00f0: 00 00 00 00                                      ....
> +
> +MSDM @ 0x00000000
> +  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
> +  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
> +  0020: 00 00 04 00 01 00 00 00 00 00 00 00 01 00 00 00  ................
> +  0030: 00 00 00 00 1d 00 00 00 41 48 33 4e 52 2d 42 38  ........AH3NR-B8
> +  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
> +  0050: 31 41 4b 4d 48                                   1AKMH
> +
> diff --git a/fwts-test/msdm-0001/acpidump-0002.log b/fwts-test/msdm-0001/acpidump-0002.log
> new file mode 100644
> index 0000000..99dc2b0
> --- /dev/null
> +++ b/fwts-test/msdm-0001/acpidump-0002.log
> @@ -0,0 +1,33 @@
> +FACS @ 0x00000000
> +  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
> +  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  ................
> +  0030: 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  . ...........@..
> +  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
> +  00f0: 00 00 00 00                                      ....
> +
> +MSDM @ 0x00000000
> +  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
> +  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
> +  0020: 00 00 04 00 01 00 00 00 ff ff ff ff 01 00 00 00  ................
> +  0030: 20 00 00 00 1d 00 00 00 41 48 33 4e 52 2a 42 38  ........AH3NR*B8
> +  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
> +  0050: 31 41 4b 4d 48                                   1AKMH
> +
> diff --git a/fwts-test/msdm-0001/msdm-0001.log b/fwts-test/msdm-0001/msdm-0001.log
> new file mode 100644
> index 0000000..f984d11
> --- /dev/null
> +++ b/fwts-test/msdm-0001/msdm-0001.log
> @@ -0,0 +1,16 @@
> +msdm            msdm: MSDM Microsoft Data Management Table test.
> +msdm            ----------------------------------------------------------
> +msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
> +msdm              Reserved:                 0x00000000
> +msdm              Data Type:                0x00000001
> +msdm              Data Reserved:            0x00000000
> +msdm              Data Length:              0x0000001d
> +msdm              Data:                     'AH3NR-B8FDN-C1WTG-5CR9X-1AKMH'
> +msdm            MSDM has had minimal check due to proprietary nature of
> +msdm            the table
> +msdm            PASSED: Test 1, No issues found in MSDM table.
> +msdm            
> +msdm            ==========================================================
> +msdm            1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0
> +msdm            info only.
> +msdm            ==========================================================
> diff --git a/fwts-test/msdm-0001/msdm-0002.log b/fwts-test/msdm-0001/msdm-0002.log
> new file mode 100644
> index 0000000..2f4953e
> --- /dev/null
> +++ b/fwts-test/msdm-0001/msdm-0002.log
> @@ -0,0 +1,22 @@
> +msdm            msdm: MSDM Microsoft Data Management Table test.
> +msdm            ----------------------------------------------------------
> +msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
> +msdm              Reserved:                 0xffffffff
> +msdm              Data Type:                0x00000001
> +msdm              Data Reserved:            0x00000020
> +msdm              Data Length:              0x0000001d
> +msdm            FAILED [HIGH] MSDMReservedNonZero: Test 1, MSDM Reserved
> +msdm            field should be zero, got 0xffffffff instead
> +msdm            FAILED [HIGH] MSDMDataReservedNonZero: Test 1, MSDM Data
> +msdm            Reserved field should be zero, got 0x00000020 instead
> +msdm              Data:                     'AH3NR*B8FDN-C1WTG-5CR9X-1AKMH'
> +msdm            FAILED [HIGH] MSDMDataLengthInvalid: Test 1, MSDM Data
> +msdm            field did not contain digits, uppercase letters and -
> +msdm            characters in the form XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
> +msdm            MSDM has had minimal check due to proprietary nature of
> +msdm            the table
> +msdm            
> +msdm            ==========================================================
> +msdm            0 passed, 3 failed, 0 warning, 0 aborted, 0 skipped, 0
> +msdm            info only.
> +msdm            ==========================================================
> diff --git a/fwts-test/msdm-0001/test-0001.sh b/fwts-test/msdm-0001/test-0001.sh
> new file mode 100755
> index 0000000..3d34f02
> --- /dev/null
> +++ b/fwts-test/msdm-0001/test-0001.sh
> @@ -0,0 +1,17 @@
> +#!/bin/bash
> +#
> +TEST="Test table against MSDM"
> +NAME=test-0001.sh
> +TMPLOG=$TMP/msdm.log.$$
> +
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0001.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-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/msdm-0001/test-0002.sh b/fwts-test/msdm-0001/test-0002.sh
> new file mode 100755
> index 0000000..042bddb
> --- /dev/null
> +++ b/fwts-test/msdm-0001/test-0002.sh
> @@ -0,0 +1,17 @@
> +#!/bin/bash
> +#
> +TEST="Test table against invalid MSDM"
> +NAME=test-0001.sh
> +TMPLOG=$TMP/msdm.log.$$
> +
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0002.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-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@canonical.com>
diff mbox

Patch

diff --git a/Makefile.am b/Makefile.am
index 3ae4257..9ce4540 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -87,6 +87,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/msdm-0001/test-0001.sh \
+	fwts-test/msdm-0001/test-0002.sh \
 	fwts-test/method-0001/test-0001.sh \
 	fwts-test/oops-0001/test-0001.sh \
 	fwts-test/oops-0001/test-0002.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 97b8954..5ed488f 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
@@ -23,6 +23,7 @@  ACPI tests:
  madt            MADT Multiple APIC Description Table test.
  mcfg            MCFG PCI Express* memory mapped config space test.
  method          ACPI DSDT Method Semantic tests.
+ msdm            MSDM Microsoft Data Management Table test.
  pcc             Processor Clocking Control (PCC) test.
  rsdp            RSDP Root System Description Pointer test.
  rsdt            RSDT Root System Description Table test.
@@ -79,6 +80,7 @@  Batch tests:
  method          ACPI DSDT Method Semantic tests.
  microcode       Test if system is using latest microcode.
  mpcheck         MultiProcessor Tables tests.
+ msdm            MSDM Microsoft Data Management Table test.
  msr             MSR register tests.
  mtrr            MTRR tests.
  nx              Test if CPU NX is disabled by the BIOS.
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 ced52e0..d93b217 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
@@ -234,6 +234,8 @@  ACPI tests:
   Test _CBA (Configuration Base Address).
   Test _IFT (IPMI Interface Type).
   Test _SRV (IPMI Interface Revision).
+ msdm            (1 test):
+  MSDM Microsoft Data Management Table test.
  pcc             (1 test):
   Processor Clocking Control (PCC) test.
  rsdp            (1 test):
@@ -549,6 +551,8 @@  Batch tests:
   Test MP System Address entries.
   Test MP Bus Hierarchy entries.
   Test MP Compatible Bus Address Space entries.
+ msdm            (1 test):
+  MSDM Microsoft Data Management Table test.
  msr             (5 tests):
   Test CPU generic MSRs.
   Test CPU specific model MSRs.
@@ -806,4 +810,4 @@  UEFI tests:
   Test UEFI RT service query variable info interface stress test.
   Test UEFI RT service get variable interface, invalid parameters.
 
-Total of 657 tests
+Total of 659 tests
diff --git a/fwts-test/msdm-0001/acpidump-0001.log b/fwts-test/msdm-0001/acpidump-0001.log
new file mode 100644
index 0000000..ce4cd09
--- /dev/null
+++ b/fwts-test/msdm-0001/acpidump-0001.log
@@ -0,0 +1,33 @@ 
+FACS @ 0x00000000
+  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
+  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  ................
+  0030: 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  . ...........@..
+  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
+  00f0: 00 00 00 00                                      ....
+
+MSDM @ 0x00000000
+  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
+  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
+  0020: 00 00 04 00 01 00 00 00 00 00 00 00 01 00 00 00  ................
+  0030: 00 00 00 00 1d 00 00 00 41 48 33 4e 52 2d 42 38  ........AH3NR-B8
+  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
+  0050: 31 41 4b 4d 48                                   1AKMH
+
diff --git a/fwts-test/msdm-0001/acpidump-0002.log b/fwts-test/msdm-0001/acpidump-0002.log
new file mode 100644
index 0000000..99dc2b0
--- /dev/null
+++ b/fwts-test/msdm-0001/acpidump-0002.log
@@ -0,0 +1,33 @@ 
+FACS @ 0x00000000
+  0000: 46 41 43 53 40 00 00 00 00 00 00 00 00 00 00 00  FACS@...........
+  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  ................
+  0030: 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  . ...........@..
+  00e0: 20 80 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ...............
+  00f0: 00 00 00 00                                      ....
+
+MSDM @ 0x00000000
+  0000: 4d 53 44 4d 55 00 00 00 03 e8 41 43 52 53 59 53  MSDMU.....ACRSYS
+  0010: 41 43 52 50 52 44 43 54 01 00 00 00 31 30 32 35  ACRPRDCT....1025
+  0020: 00 00 04 00 01 00 00 00 ff ff ff ff 01 00 00 00  ................
+  0030: 20 00 00 00 1d 00 00 00 41 48 33 4e 52 2a 42 38  ........AH3NR*B8
+  0040: 46 44 4e 2d 43 31 57 54 47 2d 35 43 52 39 58 2d  FDN-C1WTF-5CR9X-
+  0050: 31 41 4b 4d 48                                   1AKMH
+
diff --git a/fwts-test/msdm-0001/msdm-0001.log b/fwts-test/msdm-0001/msdm-0001.log
new file mode 100644
index 0000000..f984d11
--- /dev/null
+++ b/fwts-test/msdm-0001/msdm-0001.log
@@ -0,0 +1,16 @@ 
+msdm            msdm: MSDM Microsoft Data Management Table test.
+msdm            ----------------------------------------------------------
+msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
+msdm              Reserved:                 0x00000000
+msdm              Data Type:                0x00000001
+msdm              Data Reserved:            0x00000000
+msdm              Data Length:              0x0000001d
+msdm              Data:                     'AH3NR-B8FDN-C1WTG-5CR9X-1AKMH'
+msdm            MSDM has had minimal check due to proprietary nature of
+msdm            the table
+msdm            PASSED: Test 1, No issues found in MSDM table.
+msdm            
+msdm            ==========================================================
+msdm            1 passed, 0 failed, 0 warning, 0 aborted, 0 skipped, 0
+msdm            info only.
+msdm            ==========================================================
diff --git a/fwts-test/msdm-0001/msdm-0002.log b/fwts-test/msdm-0001/msdm-0002.log
new file mode 100644
index 0000000..2f4953e
--- /dev/null
+++ b/fwts-test/msdm-0001/msdm-0002.log
@@ -0,0 +1,22 @@ 
+msdm            msdm: MSDM Microsoft Data Management Table test.
+msdm            ----------------------------------------------------------
+msdm            Test 1 of 1: MSDM Microsoft Data Management Table test.
+msdm              Reserved:                 0xffffffff
+msdm              Data Type:                0x00000001
+msdm              Data Reserved:            0x00000020
+msdm              Data Length:              0x0000001d
+msdm            FAILED [HIGH] MSDMReservedNonZero: Test 1, MSDM Reserved
+msdm            field should be zero, got 0xffffffff instead
+msdm            FAILED [HIGH] MSDMDataReservedNonZero: Test 1, MSDM Data
+msdm            Reserved field should be zero, got 0x00000020 instead
+msdm              Data:                     'AH3NR*B8FDN-C1WTG-5CR9X-1AKMH'
+msdm            FAILED [HIGH] MSDMDataLengthInvalid: Test 1, MSDM Data
+msdm            field did not contain digits, uppercase letters and -
+msdm            characters in the form XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
+msdm            MSDM has had minimal check due to proprietary nature of
+msdm            the table
+msdm            
+msdm            ==========================================================
+msdm            0 passed, 3 failed, 0 warning, 0 aborted, 0 skipped, 0
+msdm            info only.
+msdm            ==========================================================
diff --git a/fwts-test/msdm-0001/test-0001.sh b/fwts-test/msdm-0001/test-0001.sh
new file mode 100755
index 0000000..3d34f02
--- /dev/null
+++ b/fwts-test/msdm-0001/test-0001.sh
@@ -0,0 +1,17 @@ 
+#!/bin/bash
+#
+TEST="Test table against MSDM"
+NAME=test-0001.sh
+TMPLOG=$TMP/msdm.log.$$
+
+$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0001.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
+diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-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/msdm-0001/test-0002.sh b/fwts-test/msdm-0001/test-0002.sh
new file mode 100755
index 0000000..042bddb
--- /dev/null
+++ b/fwts-test/msdm-0001/test-0002.sh
@@ -0,0 +1,17 @@ 
+#!/bin/bash
+#
+TEST="Test table against invalid MSDM"
+NAME=test-0001.sh
+TMPLOG=$TMP/msdm.log.$$
+
+$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/msdm-0001/acpidump-0002.log msdm - | cut -c7- | grep "^msdm" > $TMPLOG
+diff $TMPLOG $FWTSTESTDIR/msdm-0001/msdm-0002.log >> $FAILURE_LOG
+ret=$?
+if [ $ret -eq 0 ]; then
+	echo PASSED: $TEST, $NAME
+else
+	echo FAILED: $TEST, $NAME
+fi
+
+rm $TMPLOG
+exit $ret