Project

General

Profile

Actions

Feature #14727

closed

Want AMD Unified Memory Controller Driver

Added by Robert Mustacchi 2 months ago. Updated 21 days ago.

Status:
Closed
Priority:
Normal
Category:
driver - device drivers
Start date:
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:

Description

This adds support for an initial part of the AMD unified memory controller. This has the plumbing for support for Zen 1 through initial Zen 4. This adds support for the following initial pieces:

  • Gathering all the data to perform memory decoding from a PA->DIMM row/bank/column, etc.
  • Logic to perform the translation either via the kernel on demand or via user utilities

Subsequent work will wire this up in fmtopo and into the MCA error reporting path.

Actions #1

Updated by Electric Monk 2 months ago

  • Gerrit CR set to 2171
Actions #2

Updated by Robert Mustacchi 22 days ago

Testing of this has happened in a few ways. First there is the test suite. This tests the general decoding logic separate from the actual gather of data from platforms. As this is large, I'll end the comment with test output. I used this extensively during development and its ability to test bad error paths.

In addition to that I've manually executed and used the following features:

  • The ability to ask the system to decode an address for me via the mcdecode program.
  • The ability to save a snapshot of system data and then use that as input to the mcdecode program

Because this changes impacts all CPUs that attach to the amdzen driver, I have focused on testing on these through systems I have access to and also through those that others have. The biggest differences here are in support for Zen 1 as it is much more different from Zen 2 and Zen 3. While there is support for some Zen 4 and DDR5 based UMC products, these will require explicit enabling in the amdzen driver and we'll be testing them as part of that enabling. This is why they're not listed here (they're also not out yet!).These have included:

  • Zen 1 Threadrippers
  • Zen 2 Rome server CPUs
  • Zen 3 Vermeer Client CPUs (Ryzen 5xxxx)
  • Zen 3 Milan server CPUs

In addition, on systems that I had access to I was able to test varying DRAM configurations, varying BIOS configurations that would result in different DF routing, hashing rules, and related and verify that it came up. As noted in the block comments, the main thing we haven't extensively tested are 3DS based RDIMMs for decoding mostly because we don't have them. This won't cause the system to panic or anything as the data gathering won't change. As right now the decoding isn't wired up into MCA handling, this won't cause an impact to those systems and even when it is in the future it shouldn't be any worse than it is today where there's nothing.

Finally, here's the full test suite output:

rm@romulus ~ $ /opt/os-tests/tests/zen_umc_test 
Running test: Naples CPU (0)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Naples CPU Socket 1 (0)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Naples CPU Socket 1 (1)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Naples Die (0)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Naples Die (1)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Naples CPU Invalid Socket (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples CPU Invalid Socket (1)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples CPU Invalid Socket (2)
        TEST PASSED: Successfully found invalid fabric ID
Running test: Naples CPU Invalid Die
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples CPU Invalid Component (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples CPU Invalid Component (1)
        TEST PASSED: Successfully found invalid fabric ID
Running test: Naples APU Invalid Socket (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples APU Invalid Socket (1)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples APU Invalid Die (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples APU Invalid Die (1)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples APU Invalid Components (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples APU Invalid Components (1)
        TEST PASSED: Invalid Fabric parts detected
Running test: Naples APU Roundtrip (0)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Naples APU Roundtrip (1)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Naples APU Roundtrip (2)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Milan Roundtrip (0)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Milan Roundtrip (1)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Milan Roundtrip (2)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Milan Roundtrip (3)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Milan Invalid Component (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Milan Invalid Component (1)
        TEST PASSED: Invalid Fabric parts detected
Running test: Milan Invalid Die
        TEST PASSED: Invalid Fabric parts detected
Running test: Milan Invalid Socket (0)
        TEST PASSED: Invalid Fabric parts detected
Running test: Milan Invalid Socket (1)
        TEST PASSED: Invalid Fabric parts detected
Running test: Milan Invalid Socket (2)
        TEST PASSED: Successfully found invalid fabric ID
Running test: Milan Invalid Socket (3)
        TEST PASSED: Successfully found invalid fabric ID
Running test: Contig Multi-Die Roundtrip (0)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Contig Multi-Die Roundtrip (1)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Contig Multi-Die Roundtrip (2)
        TEST PASSED: Fabric ID Decomposition
        TEST PASSED: Round-trip Fabric ID composition
Running test: Contig Multi-Die Roundtrip (3)
        TEST PASSED: Fabric ID composition
        TEST PASSED: Round-trip Fabric ID decomposition
Running test: Contig Multi-Die Bad Socket
        TEST PASSED: Invalid Fabric parts detected
Running test: Contig Multi-Die Bad Die
        TEST PASSED: Invalid Fabric parts detected
Running test: Contig Multi-Die Bad Component
        TEST PASSED: Invalid Fabric parts detected
Running test: Contig Multi-Die Bad Fabric
        TEST PASSED: Successfully found invalid fabric ID
Running test: decode basic single socket/channel/DIMM DDR4 (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: decode basic single socket/channel/DIMM DDR4 (1)
        Decoding address: 0x123
        TEST PASSED: Successfully decoded PA
Running test: decode basic single socket/channel/DIMM DDR4 (2)
        Decoding address: 0x5000
        TEST PASSED: Successfully decoded PA
Running test: decode basic single socket/channel/DIMM DDR4 (3)
        Decoding address: 0x345678901
        TEST PASSED: Successfully decoded PA
Running test: decode basic single socket/channel/DIMM DDR4 (4)
        Decoding address: 0x3ffffffff
        TEST PASSED: Successfully decoded PA
Running test: single socket/channel/DIMM 2R DDR4 (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: single socket/channel/DIMM 2R DDR4 (1)
        Decoding address: 0x800000000
        TEST PASSED: Successfully decoded PA
Running test: single socket/channel/DIMM 2R DDR4 (2)
        Decoding address: 0x876543210
        TEST PASSED: Successfully decoded PA
Running test: single socket/channel/DIMM 2R DDR4 (3)
        Decoding address: 0x76543210
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (1)
        Decoding address: 0x800000000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (2)
        Decoding address: 0x1000000000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (3)
        Decoding address: 0x1800000000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (4)
        Decoding address: 0xff1ff120
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (5)
        Decoding address: 0x8ff4ff500
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (6)
        Decoding address: 0x10ff6ff700
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no ilv/hash (7)
        Decoding address: 0x18ff8ff102
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no hash, rank ilv (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no hash, rank ilv (1)
        Decoding address: 0x20000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no hash, rank ilv (2)
        Decoding address: 0x40000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no hash, rank ilv (3)
        Decoding address: 0x60000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no hash, rank ilv (4)
        Decoding address: 0xe1be12e00
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R no hash, rank ilv (5)
        Decoding address: 0x1fffffffff
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (1)
        Decoding address: 0x20000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (2)
        Decoding address: 0x40000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (3)
        Decoding address: 0x60000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (4)
        Decoding address: 0x80000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (5)
        Decoding address: 0x180000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (6)
        Decoding address: 0x100000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (7)
        Decoding address: 0x18180000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (8)
        Decoding address: 0x181a0000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (9)
        Decoding address: 0x181c0000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R cs hash, rank ilv (10)
        Decoding address: 0x181e0000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (1)
        Decoding address: 0x8000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (2)
        Decoding address: 0x10000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (3)
        Decoding address: 0x18000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (4)
        Decoding address: 0x2000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (5)
        Decoding address: 0xa000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (6)
        Decoding address: 0x12000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (7)
        Decoding address: 0x1a000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (8)
        Decoding address: 0x4000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (9)
        Decoding address: 0xc000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (10)
        Decoding address: 0x14000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (11)
        Decoding address: 0x1c000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (12)
        Decoding address: 0x6000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (13)
        Decoding address: 0xe000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (14)
        Decoding address: 0x16000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (15)
        Decoding address: 0x1e000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (16)
        Decoding address: 0x79c000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (17)
        Decoding address: 0x7f9c000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (18)
        Decoding address: 0x7ff9c000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (19)
        Decoding address: 0x71c000
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank hash, rank ilv (20)
        Decoding address: 0x71c118
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank swap, rank ilv (0)
        Decoding address: 0x4247
        TEST PASSED: Successfully decoded PA
Running test: 2 DPC 2R bank swap, rank ilv (1)
        Decoding address: 0xff6214247
        TEST PASSED: Successfully decoded PA
Running test: Basic DDR5 Sub-channel (0)
        Decoding address: 0x0
        TEST PASSED: Successfully decoded PA
Running test: Basic DDR5 Sub-channel (1)
        Decoding address: 0x9999
        TEST PASSED: Successfully decoded PA
Running test: Basic DDR5 Sub-channel (2)
        Decoding address: 0x99d9
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (0)
        Decoding address: 0x1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (1)
        Decoding address: 0x3ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (2)
        Decoding address: 0x11ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (3)
        Decoding address: 0x13ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (4)
        Decoding address: 0x101ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (5)
        Decoding address: 0x103ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (6)
        Decoding address: 0x303ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (7)
        Decoding address: 0x313ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (8)
        Decoding address: 0x311ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (9)
        Decoding address: 0x2311ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (10)
        Decoding address: 0x6311ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (11)
        Decoding address: 0x6313ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (12)
        Decoding address: 0x6303ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (13)
        Decoding address: 0x6301ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (14)
        Decoding address: 0x406301ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (15)
        Decoding address: 0x406303ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (16)
        Decoding address: 0x406311ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (17)
        Decoding address: 0x406313ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (18)
        Decoding address: 0xc06313ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (19)
        Decoding address: 0xc06311ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (20)
        Decoding address: 0xc06301ff
        TEST PASSED: Successfully decoded PA
Running test: COD 4ch (21)
        Decoding address: 0xc06303ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (0)
        Decoding address: 0x1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (1)
        Decoding address: 0x11ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (2)
        Decoding address: 0x21ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (3)
        Decoding address: 0x31ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (4)
        Decoding address: 0x41ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (5)
        Decoding address: 0x51ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (6)
        Decoding address: 0x61ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (7)
        Decoding address: 0x71ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (8)
        Decoding address: 0x81ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (9)
        Decoding address: 0x91ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (10)
        Decoding address: 0xa1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (11)
        Decoding address: 0xb1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (12)
        Decoding address: 0xc1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (13)
        Decoding address: 0xd1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (14)
        Decoding address: 0xe1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (15)
        Decoding address: 0xf1ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (16)
        Decoding address: 0x8000061ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (17)
        Decoding address: 0x8000071ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (18)
        Decoding address: 0x10000061ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (19)
        Decoding address: 0x10000071ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (20)
        Decoding address: 0x8001ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (21)
        Decoding address: 0xa001ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (22)
        Decoding address: 0xe001ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (23)
        Decoding address: 0x180e001ff
        TEST PASSED: Successfully decoded PA
Running test: COD 6ch (24)
        Decoding address: 0x1c0e041ff
        TEST PASSED: Successfully decoded PA
Running test: Memory beyond TOM2 doesn't decode (0)
        Decoding address: 0x20000000000
        TEST PASSED: Correct error generated
Running test: Memory beyond TOM2 doesn't decode (1)
        Decoding address: 0x2123456789a
        TEST PASSED: Correct error generated
Running test: Memory in 1 TiB-12 GiB hole doesn't decode (0)
        Decoding address: 0xfd00000000
        TEST PASSED: Correct error generated
Running test: Memory in 1 TiB-12 GiB hole doesn't decode (1)
        Decoding address: 0xfd00000001
        TEST PASSED: Correct error generated
Running test: Memory in 1 TiB-12 GiB hole doesn't decode (2)
        Decoding address: 0xffffffffff
        TEST PASSED: Correct error generated
Running test: No valid DF rule (0)
        Decoding address: 0x1ffffffffff
        TEST PASSED: Correct error generated
Running test: No valid DF rule (1)
        Decoding address: 0xfcffffffff
        TEST PASSED: Correct error generated
Running test: No valid DF rule (2)
        Decoding address: 0x123456
        TEST PASSED: Correct error generated
Running test: Bad COD hash interleave - socket
        Decoding address: 0x0
        TEST PASSED: Correct error generated
Running test: Bad COD hash interleave - die
        Decoding address: 0x200000
        TEST PASSED: Correct error generated
Running test: Bad COD 6ch hash interleave - socket
        Decoding address: 0x400000
        TEST PASSED: Correct error generated
Running test: Bad COD 6ch hash interleave - die
        Decoding address: 0x600000
        TEST PASSED: Correct error generated
Running test: Unknown interleave
        Decoding address: 0x800000
        TEST PASSED: Correct error generated
Running test: Bad NPS hash interleave - die
        Decoding address: 0xc00000
        TEST PASSED: Correct error generated
Running test: Bad NPS NP2 hash interleave - die
        Decoding address: 0xa00000
        TEST PASSED: Correct error generated
Running test: Bad Remap Set - DFv3
        Decoding address: 0xe00000
        TEST PASSED: Correct error generated
Running test: Bad Remap Set - DFv4 (0)
        Decoding address: 0x1000000
        TEST PASSED: Correct error generated
Running test: Bad Remap Set - DFv4 (1)
        Decoding address: 0x1200000
        TEST PASSED: Correct error generated
Running test: Interleave address underflow
        Decoding address: 0x100000000
        TEST PASSED: Correct error generated
Running test: Normal address underflow
        Decoding address: 0x100000000
        TEST PASSED: Correct error generated
Running test: Non-existent remap entry
        Decoding address: 0x0
        TEST PASSED: Correct error generated
Running test: Remap entry has bogus ID
        Decoding address: 0x8f0000000
        TEST PASSED: Correct error generated
Running test: Target fabric ID doesn't exist
        Decoding address: 0x12345
        TEST PASSED: Correct error generated
Running test: UMC doesn't have DRAM rule
        Decoding address: 0x87654321
        TEST PASSED: Correct error generated
Running test: No matching chip-select
        Decoding address: 0x101234567
        TEST PASSED: Correct error generated
Running test: Memory in hole doesn't decode (0)
        Decoding address: 0xb0000000
        TEST PASSED: Correct error generated
Running test: Memory in hole doesn't decode (1)
        Decoding address: 0x80000000
        TEST PASSED: Correct error generated
Running test: Memory in hole doesn't decode (2)
        Decoding address: 0xffffffff
        TEST PASSED: Correct error generated
Running test: Memory in hole doesn't decode (3)
        Decoding address: 0xcba89754
        TEST PASSED: Correct error generated
Running test: DRAM Hole DFv3 4ch (0)
        Decoding address: 0x7fffffff
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (1)
        Decoding address: 0x7ffffdff
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (2)
        Decoding address: 0x7ffffbff
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (3)
        Decoding address: 0x7ffff9ff
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (4)
        Decoding address: 0x100000000
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (5)
        Decoding address: 0x100000200
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (6)
        Decoding address: 0x100000400
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv3 4ch (7)
        Decoding address: 0x100000600
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv4 4ch Shenanigans (0)
        Decoding address: 0x100000000
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv4 4ch Shenanigans (1)
        Decoding address: 0x100001000
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv4 4ch Shenanigans (2)
        Decoding address: 0x100002000
        TEST PASSED: Successfully decoded PA
Running test: DRAM Hole DFv4 4ch Shenanigans (3)
        Decoding address: 0x100003000
        TEST PASSED: Successfully decoded PA
Running test: ILV: 1/1/4 4-way Channel (0)
        Decoding address: 0x1ff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 1/1/4 4-way Channel (1)
        Decoding address: 0x3ff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 1/1/4 4-way Channel (2)
        Decoding address: 0x5ff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 1/1/4 4-way Channel (3)
        Decoding address: 0x7ff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 1/1/4 4-way Channel (4)
        Decoding address: 0x42231679
        TEST PASSED: Successfully decoded PA
Running test: ILV: 2/1/4 2P-way, 4-way Channel (0)
        Decoding address: 0x21ff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 2/1/4 2P-way, 4-way Channel (1)
        Decoding address: 0x23ff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 2/1/4 2P-way, 4-way Channel (2)
        Decoding address: 0xbadc201ff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/1/4 2p-way, 4-way channel (3)
        Decoding address: 0xbadc205ff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/1/4 2p-way, 4-way channel (4)
        Decoding address: 0xbadc209ff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/1/4 2p-way, 4-way channel (5)
        Decoding address: 0xbadc20dff
        TEST PASSED: Successfully decoded PA
Running test: ILV: 2/1/4 2P-way, 4-way Channel (6)
        Decoding address: 0xbadc211ff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/1/4 2p-way, 4-way channel (7)
        Decoding address: 0xbadc215ff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/1/4 2p-way, 4-way channel (8)
        Decoding address: 0xbadc219ff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/1/4 2p-way, 4-way channel (9)
        Decoding address: 0xbadc21dff
        TEST PASSED: Successfully decoded PA
Running test: ilv: 1/2/2 2-way die, 2-way channel (0)
        Decoding address: 0x12233cfbb
        TEST PASSED: Successfully decoded PA
Running test: ilv: 1/2/2 2-way die, 2-way channel (1)
        Decoding address: 0x12233efbb
        TEST PASSED: Successfully decoded PA
Running test: ilv: 1/2/2 2-way die, 2-way channel (2)
        Decoding address: 0x12233ffbb
        TEST PASSED: Successfully decoded PA
Running test: ilv: 1/2/2 2-way die, 2-way channel (3)
        Decoding address: 0x12233dfbb
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (0)
        Decoding address: 0xffed37f42
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (1)
        Decoding address: 0xffed37e42
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (2)
        Decoding address: 0xffed37d42
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (3)
        Decoding address: 0xffed37c42
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (4)
        Decoding address: 0xffed37b42
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (5)
        Decoding address: 0xffed37a42
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (6)
        Decoding address: 0xffed37942
        TEST PASSED: Successfully decoded PA
Running test: ilv: 2/2/2 2-way sock, 2-way die, 2-way channel (7)
        Decoding address: 0xffed37842
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (0)
        Decoding address: 0x12345603
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (1)
        Decoding address: 0x12345703
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (2)
        Decoding address: 0x1ba9876543
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (3)
        Decoding address: 0x1ba9876643
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (4)
        Decoding address: 0x1c70000000
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (5)
        Decoding address: 0x1c70000100
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (6)
        Decoding address: 0x23456789ab
        TEST PASSED: Successfully decoded PA
Running test: Multi-rule (7)
        Decoding address: 0x2345678aab
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (0)
        Decoding address: 0x123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (1)
        Decoding address: 0x323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (2)
        Decoding address: 0x1123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (3)
        Decoding address: 0x1323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (4)
        Decoding address: 0x2123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (5)
        Decoding address: 0x2323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (6)
        Decoding address: 0x3123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (7)
        Decoding address: 0x3323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (8)
        Decoding address: 0x4123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (9)
        Decoding address: 0x4323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (10)
        Decoding address: 0x5123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (11)
        Decoding address: 0x5323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (12)
        Decoding address: 0x6123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (13)
        Decoding address: 0x6323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (14)
        Decoding address: 0x7123
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (15)
        Decoding address: 0x7323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (16)
        Decoding address: 0x17323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (17)
        Decoding address: 0x217323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (18)
        Decoding address: 0x40217323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (19)
        Decoding address: 0x240217323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (20)
        Decoding address: 0x240617323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (21)
        Decoding address: 0x240617323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (22)
        Decoding address: 0x240687323
        TEST PASSED: Successfully decoded PA
Running test: NPS 8ch, 2P ilv (23)
        Decoding address: 0x2c0687323
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (0)
        Decoding address: 0x167
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (1)
        Decoding address: 0x367
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (2)
        Decoding address: 0x4167
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (3)
        Decoding address: 0x14167
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (4)
        Decoding address: 0x40014167
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (5)
        Decoding address: 0x214167
        TEST PASSED: Successfully decoded PA
Running test: NPS 2ch, 1P (6)
        Decoding address: 0x40214167
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (0)
        Decoding address: 0xcd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (1)
        Decoding address: 0x1cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (2)
        Decoding address: 0x2cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (3)
        Decoding address: 0x3cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (4)
        Decoding address: 0x4cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (5)
        Decoding address: 0x5cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (6)
        Decoding address: 0x6cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (7)
        Decoding address: 0x3ecd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (8)
        Decoding address: 0x3fcd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (9)
        Decoding address: 0x40cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (10)
        Decoding address: 0x41cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (11)
        Decoding address: 0x80cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (12)
        Decoding address: 0x81cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (13)
        Decoding address: 0xc0cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (14)
        Decoding address: 0xc1cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (15)
        Decoding address: 0x100cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (16)
        Decoding address: 0x101cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (17)
        Decoding address: 0x140cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 5ch, 1P (18)
        Decoding address: 0x141cd
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (0)
        Decoding address: 0xbc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (1)
        Decoding address: 0x1bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (2)
        Decoding address: 0x20bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (3)
        Decoding address: 0x21bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (4)
        Decoding address: 0x40bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (5)
        Decoding address: 0x41bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (6)
        Decoding address: 0x60bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (7)
        Decoding address: 0x61bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (8)
        Decoding address: 0x80bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (9)
        Decoding address: 0x81bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (10)
        Decoding address: 0xa0bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (11)
        Decoding address: 0xa1bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (12)
        Decoding address: 0x120bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (13)
        Decoding address: 0x220bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (14)
        Decoding address: 0x320bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (15)
        Decoding address: 0x420bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (16)
        Decoding address: 0x720bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (17)
        Decoding address: 0x1000020bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (18)
        Decoding address: 0x1800020bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (19)
        Decoding address: 0x1c00020bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (20)
        Decoding address: 0x1c00060bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (21)
        Decoding address: 0x1c00040bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (22)
        Decoding address: 0x1c00041bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 6ch, 1P (23)
        Decoding address: 0x1c00061bc
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (0)
        Decoding address: 0xad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (1)
        Decoding address: 0x1ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (2)
        Decoding address: 0x40ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (3)
        Decoding address: 0x41ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (4)
        Decoding address: 0x80ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (5)
        Decoding address: 0x81ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (6)
        Decoding address: 0x1fc0ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (7)
        Decoding address: 0x1fc1ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (8)
        Decoding address: 0x2000ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (9)
        Decoding address: 0x2001ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (10)
        Decoding address: 0x2040ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (11)
        Decoding address: 0x2041ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (12)
        Decoding address: 0x2080ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (13)
        Decoding address: 0x2081ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (14)
        Decoding address: 0x20c0ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (15)
        Decoding address: 0x20c1ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (16)
        Decoding address: 0x10020c0ad
        TEST PASSED: Successfully decoded PA
Running test: NPS 3ch, 2P (17)
        Decoding address: 0x10020c1ad
        TEST PASSED: Successfully decoded PA
Running test: Milan Remap (0)
        Decoding address: 0x138
        TEST PASSED: Successfully decoded PA
Running test: Milan Remap (1)
        Decoding address: 0x1138
        TEST PASSED: Successfully decoded PA
Running test: Milan Remap (2)
        Decoding address: 0x2138
        TEST PASSED: Successfully decoded PA
Running test: Milan Remap (3)
        Decoding address: 0x3138
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (0)
        Decoding address: 0x163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (1)
        Decoding address: 0x1163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (2)
        Decoding address: 0x2163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (3)
        Decoding address: 0x3163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (4)
        Decoding address: 0x900000163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (5)
        Decoding address: 0x900001163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (6)
        Decoding address: 0x900002163
        TEST PASSED: Successfully decoded PA
Running test: DFv4 Remap (7)
        Decoding address: 0x900003163
        TEST PASSED: Successfully decoded PA
326/326 tests passed
Actions #3

Updated by Electric Monk 21 days ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit 71815ce76261aa773c97600750fdce92334d1990

commit  71815ce76261aa773c97600750fdce92334d1990
Author: Robert Mustacchi <rm@fingolfin.org>
Date:   2022-07-20T15:48:24.000Z

    14727 Want AMD Unified Memory Controller Driver
    Reviewed by: Keith M Wesolowski <wesolows@oxide.computer>
    Reviewed by: Richard Lowe <richlowe@richlowe.net>
    Reviewed by: C Fraire <cfraire@me.com>
    Approved by: Garrett D'Amore <garrett@damore.org>

Actions

Also available in: Atom PDF