From: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
Dave Hansen <dave.hansen@linux.intel.com>,
Peter Anvin <hpa@zytor.com>, Bjorn Helgaas <bhelgaas@google.com>,
Muralidhara M K <muralidhara.mk@amd.com>,
Yazen Ghannam <yazen.ghannam@amd.com>,
Avadhut Naik <Avadhut.Naik@amd.com>,
Mario Limonciello <mario.limonciello@amd.com>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
x86@kernel.org
Subject: Re: [PATCH v1] x86/amd_nb: Add new PCI IDs for AMD family 0x1a model 60h
Date: Thu, 18 Jul 2024 23:37:31 +0530 [thread overview]
Message-ID: <95ea23bf-b628-4fdb-a4ef-0029f9df2ec2@amd.com> (raw)
In-Reply-To: <20240718171342.GA575689@bhelgaas>
On 7/18/2024 22:43, Bjorn Helgaas wrote:
> On Thu, Jul 18, 2024 at 07:32:58PM +0530, Shyam Sundar S K wrote:
>> Add the new PCI Device IDs to the root IDs and misc ids list to support
>> new generation of AMD 1Ah family 60h Models of processors.
>>
>> Signed-off-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
>> ---
>> (As the amd_nb functions are used by PMC and PMF drivers, without these IDs
>> being present AMD PMF/PMC probe shall fail.)
>
> Is there any plan for making this generic so a kernel update is not
> needed? Obviously the *functionality* is not changed by this patch,
> so having to add a device ID for every new processor just makes work
> for distros and users.
Regarding AMD processors, there are numerous PCI IDs defined in the
PPRs/BKDG. I'm not sure if there's a generic way to address this
without a kernel update.
>
>> arch/x86/kernel/amd_nb.c | 3 +++
>> include/linux/pci_ids.h | 1 +
>> 2 files changed, 4 insertions(+)
>>
>> diff --git a/arch/x86/kernel/amd_nb.c b/arch/x86/kernel/amd_nb.c
>> index 059e5c16af05..61eadde08511 100644
>> --- a/arch/x86/kernel/amd_nb.c
>> +++ b/arch/x86/kernel/amd_nb.c
>> @@ -26,6 +26,7 @@
>> #define PCI_DEVICE_ID_AMD_19H_M70H_ROOT 0x14e8
>> #define PCI_DEVICE_ID_AMD_1AH_M00H_ROOT 0x153a
>> #define PCI_DEVICE_ID_AMD_1AH_M20H_ROOT 0x1507
>> +#define PCI_DEVICE_ID_AMD_1AH_M60H_ROOT 0x1122
>> #define PCI_DEVICE_ID_AMD_MI200_ROOT 0x14bb
>> #define PCI_DEVICE_ID_AMD_MI300_ROOT 0x14f8
>>
>> @@ -63,6 +64,7 @@ static const struct pci_device_id amd_root_ids[] = {
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M70H_ROOT) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M00H_ROOT) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M20H_ROOT) },
>> + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M60H_ROOT) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI200_ROOT) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI300_ROOT) },
>> {}
>> @@ -95,6 +97,7 @@ static const struct pci_device_id amd_nb_misc_ids[] = {
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M78H_DF_F3) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M00H_DF_F3) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M20H_DF_F3) },
>> + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M60H_DF_F3) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M70H_DF_F3) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI200_DF_F3) },
>> { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI300_DF_F3) },
>> diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
>> index 76a8f2d6bd64..bbe8f3dfa813 100644
>> --- a/include/linux/pci_ids.h
>> +++ b/include/linux/pci_ids.h
>> @@ -580,6 +580,7 @@
>> #define PCI_DEVICE_ID_AMD_19H_M78H_DF_F3 0x12fb
>> #define PCI_DEVICE_ID_AMD_1AH_M00H_DF_F3 0x12c3
>> #define PCI_DEVICE_ID_AMD_1AH_M20H_DF_F3 0x16fb
>> +#define PCI_DEVICE_ID_AMD_1AH_M60H_DF_F3 0x124b
>
> Why not add this in amd_nb.c, as you did for
> PCI_DEVICE_ID_AMD_1AH_M60H_ROOT? There's already a
> PCI_DEVICE_ID_AMD_CNB17H_F4 definition there. No need to update
> pci_ids.h unless PCI_DEVICE_ID_AMD_1AH_M60H_DF_F3 is used in more than
> one place.
>
> Based on previous history, I suppose PCI_DEVICE_ID_AMD_1AH_M60H_DF_F3
> will someday be used by k10temp.c? Ideally a pci_ids.h addition would
> be in the same patch that adds uses in both amd_nb.c and k10temp.c so
> it's clear that the new definition is used in two places.
>
Okay, I understand your point. I will add
PCI_DEVICE_ID_AMD_1AH_M60H_DF_F3 to k10temp.c in v2.
Thanks,
Shyam
>> #define PCI_DEVICE_ID_AMD_1AH_M70H_DF_F3 0x12bb
>> #define PCI_DEVICE_ID_AMD_MI200_DF_F3 0x14d3
>> #define PCI_DEVICE_ID_AMD_MI300_DF_F3 0x152b
>> --
>> 2.25.1
>>
next prev parent reply other threads:[~2024-07-18 18:07 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-18 14:02 [PATCH v1] x86/amd_nb: Add new PCI IDs for AMD family 0x1a model 60h Shyam Sundar S K
2024-07-18 15:43 ` Yazen Ghannam
2024-07-18 16:49 ` Shyam Sundar S K
2024-07-19 14:18 ` Yazen Ghannam
2024-07-18 17:13 ` Bjorn Helgaas
2024-07-18 18:07 ` Shyam Sundar S K [this message]
2024-07-19 14:28 ` Yazen Ghannam
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=95ea23bf-b628-4fdb-a4ef-0029f9df2ec2@amd.com \
--to=shyam-sundar.s-k@amd.com \
--cc=Avadhut.Naik@amd.com \
--cc=bhelgaas@google.com \
--cc=bp@alien8.de \
--cc=dave.hansen@linux.intel.com \
--cc=helgaas@kernel.org \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=mario.limonciello@amd.com \
--cc=mingo@redhat.com \
--cc=muralidhara.mk@amd.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
--cc=yazen.ghannam@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.