On Mon, Nov 05, 2018 at 10:56:50PM +0100, Borislav Petkov wrote: > On Mon, Nov 05, 2018 at 03:45:37PM -0600, Bjorn Helgaas wrote: > > amd_nb.c prevents us from achieving that goal. These patches don't > > add new functionality; they merely describe minor topographical > > differences in new hardware. We usually try to do that in a more > > generic way, e.g., via an ACPI method, so the new platform can update > > the ACPI method and use an old, already-qualified, already-shipped > > kernel. > > > > I'm not strenuously objecting to these because this isn't a *huge* > > deal, but I suspect it is a source of friction for distros that don't > > want to update and requalify their software for every new platform. > > Err, how is this any different from adding distro support for a new CPU > family? > > This is basically the same thing. When distros add support for new > hardware, they have to backport patches for upstream. These PCI devices > which are part of the CPU are part of that hardware enablement. > > So there's no way around doing that enablement. I don't think you can do > "old distro, new hardware" stuff without *some* hw enablement. Just depends on how hard you want to work on defining abstract interfaces. This isn't some complicated new device where the programming model changed on the new CPU. This is a thermometer that was already supported. ACPI provides plenty of functionality that could be used to support this generically, e.g., see drivers/acpi/thermal.c, drivers/thermal/int340x_thermal/processor_thermal_device.c, etc. But maybe there's some real value in the nitty-gritty device-specific code in amd_nb.c. If so, I guess you're stuck with updates like this and negotiating with the distros to do backports and new releases. Bjorn