Eliot Moss wrote:
> On 7/22/2022 3:08 PM, Eliot Moss wrote:
> > On 7/22/2022 2:39 PM, Dan Williams wrote:
> >> Eliot Moss wrote:
> >
> >>> What concerns me is that it shows "persistence_domain":"memory_controller"
> >>> when I think it should show the persistence domain as "cpu_cache", since
> >>> this
> >>> system is supposed to support eADR.
>
> > Thank you, Dan! The table in question is, I believe, the NFIT (NVDIMM
> > Firmware Information Table). I can see a dump of all 488 bytes of it,
> > though I am not certain how to pick it apart.
>
> A quick followup: I figured out how to parse the table by hand, and sure
> enough, the relevant bit is not set. So ndctl and friends are doing the
> right thing. The issue is either that the platform does not have the
> capability we expected or that the NFIT is wrong and not reporting the
> capability that the hardware actually provides.
Glad you got it parsed, for future reference use iasl:
# cp /sys/firmware/acpi/tables/NFIT ./
# iasl -d NFIT
Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20220331
Copyright (c) 2000 - 2022 Intel Corporation
File appears to be binary: found 190 non-ASCII characters, disassembling
Binary file appears to be a valid ACPI table, disassembling
Input file NFIT, Length 0xE0 (224) bytes
ACPI: NFIT 0x0000000000000000 0000E0 (v01 BOCHS BXPC 00000001 BXPC
00000001)
Acpi Data Table [NFIT] decoded
Formatted output: NFIT.dsl - 5355 bytes
# cat NFIT.dsl
/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20220331 (64-bit version)
* Copyright (c) 2000 - 2022 Intel Corporation
*
* Disassembly of NFIT, Fri Jul 22 19:54:16 2022
*
* ACPI Data Table [NFIT]
*
* Format: [HexOffset DecimalOffset ByteLength] FieldName : FieldValue (in hex)
*/
[000h 0000 4] Signature : "NFIT" [NVDIMM Firmware
Interface Table]
[004h 0004 4] Table Length : 000000E0
[008h 0008 1] Revision : 01
[009h 0009 1] Checksum : E3
[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 4] Reserved : 00000000
[028h 0040 2] Subtable Type : 0000 [System Physical Address
Range]
[02Ah 0042 2] Length : 0038
[02Ch 0044 2] Range Index : 0002
[02Eh 0046 2] Flags (decoded below) : 0003
Add/Online Operation Only : 1
Proximity Domain Valid : 1
Location Cookie Valid : 0
[030h 0048 4] Reserved : 00000000
[034h 0052 4] Proximity Domain : 00000000
[038h 0056 16] Region Type GUID :
66F0D379-B4F3-4074-AC43-0D3318B78CDB
[048h 0072 8] Address Range Base : 0000000480000000
[050h 0080 8] Address Range Length : 0000001FC0000000
[058h 0088 8] Memory Map Attribute : 0000000000008008
[060h 0096 8] Location Cookie : 0000000100300001
...