[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1b5835f4-cc09-4cdd-ab75-6159793c242f@kernel.org>
Date: Sun, 13 Apr 2025 14:27:28 -0500
From: Mario Limonciello <superm1@...nel.org>
To: Ingo Molnar <mingo@...nel.org>, Borislav Petkov <bp@...en8.de>
Cc: Jean Delvare <jdelvare@...e.com>, Andi Shyti <andi.shyti@...nel.org>,
Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
Jonathan Corbet <corbet@....net>,
Mario Limonciello <mario.limonciello@....com>,
Yazen Ghannam <yazen.ghannam@....com>, Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, Dave Hansen <dave.hansen@...ux.intel.com>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@...nel.org>,
"H . Peter Anvin" <hpa@...or.com>,
Shyam Sundar S K <Shyam-sundar.S-k@....com>,
Hans de Goede <hdegoede@...hat.com>,
"open list:DOCUMENTATION" <linux-doc@...r.kernel.org>,
open list <linux-kernel@...r.kernel.org>,
"open list:I2C/SMBUS CONTROLLER DRIVERS FOR PC" <linux-i2c@...r.kernel.org>,
"open list:AMD PMC DRIVER" <platform-driver-x86@...r.kernel.org>
Subject: Re: [PATCH v3 2/4] i2c: piix4: Move SB800_PIIX4_FCH_PM_ADDR
definition to amd_node.h
On 4/13/25 03:44, Ingo Molnar wrote:
>
> * Ingo Molnar <mingo@...nel.org> wrote:
>
>>
>> * Borislav Petkov <bp@...en8.de> wrote:
>>
>>> I was aiming more for a header which contains non-CPU defines -
>>> i.e., platform. But the FCH is only one part of that platform. But
>>> let's start with amd/fch.h - "amd/" subpath element would allow us
>>> to trivially put other headers there too - and see where it gets
>>> us. We can (and will) always refactor later if needed...
>>
>> Yeah, agreed on opening the <asm/amd/> namespace for this.
>
> Here's a tree that establishes <asm/amd/> and moves existing headers
> there:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/mingo/tip.git WIP.x86/platform
>
> Mario, could you base your series on top of this tree?
>
Sure.
One problem that I notice though is that by using <asm/amd/fch.h> that
drivers/i2c/busses/i2c-piix4.c has some compile failures on non-x86.
This is the same problem that lkp robot raised for v3 when it was on
<asm/amd_node.h>:
https://lore.kernel.org/linux-doc/20250410200202.2974062-1-superm1@kernel.org/T/#mc33abfcdc434c85fbc94d03498759db631efcf53
What's the preferred way to handle it?
The three ways that immediately jump out to me:
1) Add '#if CONFIG_X86' around all related code.
2) Move applicable code to drivers/i2c/busses/i2c-amd-fch.c (similar to
how we have i2c-amd-asf-plat.c) but modify drivers/i2c/busses/Makefile
to only compile it for x86.
3) Idea two but also add a new Kconfig for CONFIG_I2C_AMD_FCH that
depends on CONFIG_X86.
I am /leaning/ on the refactor with idea 3.
> Thanks,
>
> Ingo
>
> ===============>
> Ingo Molnar (6):
> x86/platform/amd: Move the <asm/amd-ibs.h> header to <asm/amd/ibs.h>
> x86/platform/amd: Add standard header guards to <asm/amd/ibs.h>
> x86/platform/amd: Move the <asm/amd_nb.h> header to <asm/amd/nb.h>
> x86/platform/amd: Move the <asm/amd_hsmp.h> header to <asm/amd/hsmp.h>
> x86/platform/amd: Clean up the <asm/amd/hsmp.h> header guards a bit
> x86/platform/amd: Move the <asm/amd_node.h> header to <asm/amd/node.h>
>
> Documentation/userspace-api/ioctl/ioctl-number.rst | 2 +-
> MAINTAINERS | 6 +++---
> arch/x86/events/amd/ibs.c | 2 +-
> arch/x86/include/asm/{amd_hsmp.h => amd/hsmp.h} | 4 ++--
> arch/x86/include/asm/{amd-ibs.h => amd/ibs.h} | 5 +++++
> arch/x86/include/asm/{amd_nb.h => amd/nb.h} | 2 +-
> arch/x86/include/asm/{amd_node.h => amd/node.h} | 0
> arch/x86/kernel/amd_gart_64.c | 2 +-
> arch/x86/kernel/amd_nb.c | 2 +-
> arch/x86/kernel/amd_node.c | 2 +-
> arch/x86/kernel/aperture_64.c | 2 +-
> arch/x86/kernel/cpu/cacheinfo.c | 2 +-
> arch/x86/kernel/cpu/mce/inject.c | 2 +-
> arch/x86/mm/amdtopology.c | 2 +-
> arch/x86/mm/numa.c | 2 +-
> arch/x86/pci/amd_bus.c | 2 +-
> arch/x86/pci/fixup.c | 2 +-
> drivers/char/agp/amd64-agp.c | 2 +-
> drivers/edac/amd64_edac.c | 4 ++--
> drivers/hwmon/k10temp.c | 2 +-
> drivers/platform/x86/amd/hsmp/acpi.c | 4 ++--
> drivers/platform/x86/amd/hsmp/hsmp.c | 2 +-
> drivers/platform/x86/amd/hsmp/plat.c | 4 ++--
> drivers/platform/x86/amd/pmc/mp1_stb.c | 2 +-
> drivers/platform/x86/amd/pmc/pmc.c | 2 +-
> drivers/platform/x86/amd/pmf/core.c | 2 +-
> drivers/pnp/quirks.c | 2 +-
> drivers/ras/amd/atl/internal.h | 4 ++--
> sound/soc/amd/acp/acp-rembrandt.c | 2 +-
> sound/soc/amd/acp/acp63.c | 2 +-
> sound/soc/amd/acp/acp70.c | 2 +-
> sound/soc/sof/amd/acp.c | 2 +-
> tools/perf/check-headers.sh | 2 +-
> tools/perf/util/amd-sample-raw.c | 2 +-
> 34 files changed, 44 insertions(+), 39 deletions(-)
> rename arch/x86/include/asm/{amd_hsmp.h => amd/hsmp.h} (91%)
> rename arch/x86/include/asm/{amd-ibs.h => amd/ibs.h} (98%)
> rename arch/x86/include/asm/{amd_nb.h => amd/nb.h} (98%)
> rename arch/x86/include/asm/{amd_node.h => amd/node.h} (100%)
>
Powered by blists - more mailing lists