On the first day of the Linux 6.14 merge window there were a number of new AMD CPU features submitted. That’s continued today with so far having the new “amd_node” driver to talk about for splitting up the modern Zen-era code and more of the legacy AMD Northbridge code from the pre-Zen days.
AMD Linux engineers have been working to restructure more of the AMD processor code around the legacy Northbridge code and the more modern “node” concept from the Zen CPU era tor the past several number of years with SoC-based designs.
This decoupling of the AMD “node” code into the new amd_node driver from the legacy Northbridge code in “amd_nb” can help better differentiate the code paths from the aging legacy AMD Opteron / Athlon / FX / Sempron / Phenom days and the current Ryzen and EPYC platforms. For the amd_node driver it will also help ease enablement of future generation platforms needing rather redundant PCI IDs to be added each time. Plus with the better separation in AMD_NB and AMD_NODE, for those that may only be wanting to build kernels targeting either the modern or legacy platforms.
For Linux 6.14 is just the initial bits of this AMD “node” restructuring from the legacy Northbridge code. The x86/misc pull request sent out a short time ago explains:
“The first part of a restructuring of AMD’s representation of a northbridge which is legacy now, and the creation of the new AMD node concept which represents the Zen architecture of having a collection of I/O devices within an SoC. Those nodes comprise the so-called data fabric on Zen. This has at least one practical advantage of not having to add a PCI ID each time a new data fabric PCI device releases. Eventually, the lot more uniform provider of data fabric functionality amd_node.c will be used by all the drivers which need it.”
Linux 6.14 is shaping up to be another very busy kernel cycle with many new features landing.