EDAC/amd64: Rework hw_info_{get,put}
authorYazen Ghannam <yazen.ghannam@amd.com>
Fri, 27 Jan 2023 17:04:08 +0000 (17:04 +0000)
committerBorislav Petkov (AMD) <bp@alien8.de>
Fri, 24 Mar 2023 12:03:20 +0000 (13:03 +0100)
commit9a97a7f4d7b26cb61cdbb328b9d8982d94c99170
tree5454703433a126ce0d5cf8082155b7352543ee0e
parented623d55eef46d0ca7557b9665b4693931bfb507
EDAC/amd64: Rework hw_info_{get,put}

The bulk of system-specific information is gathered at init time with
hw_info_get(). This function calls a number of helper functions, and
many of these helper functions are split between a modern UMC/DF path
and a legacy DCT path.

Split hw_info_get() into legacy and modern versions. This creates two
separate code paths early on, and legacy and modern helper functions can
be called directly in the appropriate code path.

Also, simplify hw_info_put() and share it between legacy and modern
systems. NULL pointer checks are done in pci_dev_put() and kfree(), so
they can be called unconditionally.

Signed-off-by: Yazen Ghannam <yazen.ghannam@amd.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Link: https://lore.kernel.org/r/20230127170419.1824692-12-yazen.ghannam@amd.com
drivers/edac/amd64_edac.c
drivers/edac/amd64_edac.h