> -----Original Message-----
> From: Sunil V L <suni...@ventanamicro.com>
> Sent: Friday, August 23, 2024 9:20 PM
> To: JeeHeng Sia <jeeheng....@starfivetech.com>
> Cc: qemu-...@nongnu.org; qemu-devel@nongnu.org; qemu-ri...@nongnu.org;
> m...@redhat.com; imamm...@redhat.com;
> anisi...@redhat.com; peter.mayd...@linaro.org; shannon.zha...@gmail.com;
> pal...@dabbelt.com; alistair.fran...@wdc.com;
> bin.m...@windriver.com; liwei1...@gmail.com; dbarb...@ventanamicro.com;
> zhiwei_...@linux.alibaba.com
> Subject: Re: [PATCH RESEND v4 3/3] tests/qtest/bios-tables-test: Update virt
> SPCR golden reference for RISC-V
>
> On Fri, Aug 23, 2024 at 04:31:42AM -0700, Sia Jee Heng wrote:
> > Update the virt SPCR golden reference file for RISC-V to accommodate the
> > SPCR Table revision 4 [1], utilizing the iasl binary compiled from the
> > latest ACPICA repository. The SPCR table has been modified to
> > adhere to the revision 4 format [2].
> >
> > [1]:
> > https://learn.microsoft.com/en-us/windows-hardware/drivers/serports/serial-port-console-redirection-table
> > [2]: https://github.com/acpica/acpica/pull/931
> >
> > Diffs from iasl:
> > /*
> > * Intel ACPI Component Architecture
> > * AML/ASL+ Disassembler version 20200925 (64-bit version)
> > * Copyright (c) 2000 - 2020 Intel Corporation
> > *
> > - * Disassembly of tests/data/acpi/riscv64/virt/SPCR, Fri Aug 23 02:07:47
> > 2024
> > + * Disassembly of /tmp/aml-Y8JPS2, Fri Aug 23 02:07:47 2024
> > *
> > * ACPI Data Table [SPCR]
> > *
> > * Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue
> > */
> >
> > [000h 0000 4] Signature : "SPCR" [Serial Port
> > Console Redirection table]
> > -[004h 0004 4] Table Length : 00000050
> > -[008h 0008 1] Revision : 02
> > -[009h 0009 1] Checksum : B9
> > +[004h 0004 4] Table Length : 0000005A
> > +[008h 0008 1] Revision : 04
> > +[009h 0009 1] Checksum : 13
> > [00Ah 0010 6] Oem ID : "BOCHS "
> > [010h 0016 8] Oem Table ID : "BXPC "
> > [018h 0024 4] Oem Revision : 00000001
> > [01Ch 0028 4] Asl Compiler ID : "BXPC"
> > [020h 0032 4] Asl Compiler Revision : 00000001
> >
> > -[024h 0036 1] Interface Type : 00
> > +[024h 0036 1] Interface Type : 12
> > [025h 0037 3] Reserved : 000000
> >
> > [028h 0040 12] Serial Port Register : [Generic Address Structure]
> > [028h 0040 1] Space ID : 00 [SystemMemory]
> > [029h 0041 1] Bit Width : 20
> > [02Ah 0042 1] Bit Offset : 00
> > [02Bh 0043 1] Encoded Access Width : 01 [Byte Access:8]
> > [02Ch 0044 8] Address : 0000000010000000
> >
> > [034h 0052 1] Interrupt Type : 10
> > [035h 0053 1] PCAT-compatible IRQ : 00
> > [036h 0054 4] Interrupt : 0000000A
> > [03Ah 0058 1] Baud Rate : 07
> > [03Bh 0059 1] Parity : 00
> > [03Ch 0060 1] Stop Bits : 01
> > [03Dh 0061 1] Flow Control : 00
> > [03Eh 0062 1] Terminal Type : 00
> > [04Ch 0076 1] Reserved : 00
> > [040h 0064 2] PCI Device ID : FFFF
> > [042h 0066 2] PCI Vendor ID : FFFF
> > [044h 0068 1] PCI Bus : 00
> > [045h 0069 1] PCI Device : 00
> > [046h 0070 1] PCI Function : 00
> > [047h 0071 4] PCI Flags : 00000000
> > [04Bh 0075 1] PCI Segment : 00
> > [04Ch 0076 4] Reserved : 00000000
> >
> Shouldn't iasl print additional fields added in version 4?
You are right. It should print info for Revision 4.
>
> Thanks,
> Sunil
> > -Raw Table Data: Length 80 (0x50)
> > +Raw Table Data: Length 90 (0x5A)
> >
> > - 0000: 53 50 43 52 50 00 00 00 02 B9 42 4F 43 48 53 20 //
> > SPCRP.....BOCHS
> > + 0000: 53 50 43 52 5A 00 00 00 04 13 42 4F 43 48 53 20 //
> > SPCRZ.....BOCHS
> > 0010: 42 58 50 43 20 20 20 20 01 00 00 00 42 58 50 43 // BXPC
> > ....BXPC
> > - 0020: 01 00 00 00 00 00 00 00 00 20 00 01 00 00 00 10 // .........
> > ......
> > + 0020: 01 00 00 00 12 00 00 00 00 20 00 01 00 00 00 10 // .........
> > ......
> > 0030: 00 00 00 00 10 00 0A 00 00 00 07 00 01 00 00 03 //
> > ................
> > 0040: FF FF FF FF 00 00 00 00 00 00 00 00 00 00 00 00 //
> > ................
> > + 0050: 00 00 00 00 02 00 58 00 2E 00 // ......X...
> >
> > Signed-off-by: Sia Jee Heng <jeeheng....@starfivetech.com>
> > ---
> > tests/data/acpi/riscv64/virt/SPCR | Bin 80 -> 90 bytes
> > tests/qtest/bios-tables-test-allowed-diff.h | 1 -
> > 2 files changed, 1 deletion(-)
> >
> > diff --git a/tests/data/acpi/riscv64/virt/SPCR
> > b/tests/data/acpi/riscv64/virt/SPCR
> > index
> > 4da9daf65f71a13ac2b488d4e9728f194b569a43..09617f8793a6f7b1f08172f735b58aa748671540
> > 100644
> > GIT binary patch
> > delta 32
> > mcmWHD;tCFM4vJ!6U|<oR$R))nG*MNX3&>+&Vu)bSV*mhNumqU^
> >
> > delta 21
> > ccmazF;0g|K4hmpkU|`xgkxPn^VWO%w05v59j{pDw
> >
> > diff --git a/tests/qtest/bios-tables-test-allowed-diff.h
> > b/tests/qtest/bios-tables-test-allowed-diff.h
> > index aae973048a..dfb8523c8b 100644
> > --- a/tests/qtest/bios-tables-test-allowed-diff.h
> > +++ b/tests/qtest/bios-tables-test-allowed-diff.h
> > @@ -1,2 +1 @@
> > /* List of comma-separated changed AML files to ignore */
> > -"tests/data/acpi/riscv64/virt/SPCR",
> > --
> > 2.34.1
> >