]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
RAS/AMD/ATL: Add debug prints for DF register reads
authorYazen Ghannam <yazen.ghannam@amd.com>
Mon, 21 Oct 2024 15:21:58 +0000 (15:21 +0000)
committerBorislav Petkov (AMD) <bp@alien8.de>
Tue, 22 Oct 2024 16:55:57 +0000 (18:55 +0200)
The ATL will fail early if the DF register access fails due to missing
PCI IDs in the amd_nb code. There aren't any clear indicators on why the
ATL will fail to load in this case.

Add a couple of debug print statements to highlight reasons for failure.

A common scenario is missing support for new hardware. If the ATL fails
to load on a system, and there is interest to support it, then dynamic
debugging can be enabled to help find the cause for failure. If there is
no interest in supporting ATL on a new system, then these failures will
be silent.

Signed-off-by: Yazen Ghannam <yazen.ghannam@amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/20241021152158.2525669-1-yazen.ghannam@amd.com
drivers/ras/amd/atl/access.c

index ee4661ed28ba7816a079a73a29f22da48a00f0c1..c2334f8f9add0b171316af397bae1788e83b1d4f 100644 (file)
@@ -70,12 +70,16 @@ static int __df_indirect_read(u16 node, u8 func, u16 reg, u8 instance_id, u32 *l
        u32 ficaa = 0;
 
        node = get_accessible_node(node);
-       if (node >= amd_nb_num())
+       if (node >= amd_nb_num()) {
+               pr_debug("Node %u is out of bounds\n", node);
                goto out;
+       }
 
        F4 = node_to_amd_nb(node)->link;
-       if (!F4)
+       if (!F4) {
+               pr_debug("DF function 4 not found\n");
                goto out;
+       }
 
        /* Enable instance-specific access. */
        if (instance_id != DF_BROADCAST) {