Skip to content

Commit f8faf34

Browse files
superm1suryasaimadhu
authored andcommitted
x86/amd_nb: Add AMD PCI IDs for SMN communication
Add support for SMN communication on family 17h model A0h and family 19h models 60h-70h. [ bp: Merge into a single patch. ] Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Yazen Ghannam <yazen.ghannam@amd.com> Acked-by: Bjorn Helgaas <bhelgaas@google.com> # pci_ids.h Acked-by: Guenter Roeck <linux@roeck-us.net> Link: https://lore.kernel.org/r/20220719195256.1516-1-mario.limonciello@amd.com
1 parent 229e73d commit f8faf34

2 files changed

Lines changed: 16 additions & 0 deletions

File tree

arch/x86/kernel/amd_nb.c

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,23 @@
1919
#define PCI_DEVICE_ID_AMD_17H_M10H_ROOT 0x15d0
2020
#define PCI_DEVICE_ID_AMD_17H_M30H_ROOT 0x1480
2121
#define PCI_DEVICE_ID_AMD_17H_M60H_ROOT 0x1630
22+
#define PCI_DEVICE_ID_AMD_17H_MA0H_ROOT 0x14b5
2223
#define PCI_DEVICE_ID_AMD_19H_M10H_ROOT 0x14a4
24+
#define PCI_DEVICE_ID_AMD_19H_M60H_ROOT 0x14d8
25+
#define PCI_DEVICE_ID_AMD_19H_M70H_ROOT 0x14e8
2326
#define PCI_DEVICE_ID_AMD_17H_DF_F4 0x1464
2427
#define PCI_DEVICE_ID_AMD_17H_M10H_DF_F4 0x15ec
2528
#define PCI_DEVICE_ID_AMD_17H_M30H_DF_F4 0x1494
2629
#define PCI_DEVICE_ID_AMD_17H_M60H_DF_F4 0x144c
2730
#define PCI_DEVICE_ID_AMD_17H_M70H_DF_F4 0x1444
31+
#define PCI_DEVICE_ID_AMD_17H_MA0H_DF_F4 0x1728
2832
#define PCI_DEVICE_ID_AMD_19H_DF_F4 0x1654
2933
#define PCI_DEVICE_ID_AMD_19H_M10H_DF_F4 0x14b1
3034
#define PCI_DEVICE_ID_AMD_19H_M40H_ROOT 0x14b5
3135
#define PCI_DEVICE_ID_AMD_19H_M40H_DF_F4 0x167d
3236
#define PCI_DEVICE_ID_AMD_19H_M50H_DF_F4 0x166e
37+
#define PCI_DEVICE_ID_AMD_19H_M60H_DF_F4 0x14e4
38+
#define PCI_DEVICE_ID_AMD_19H_M70H_DF_F4 0x14f4
3339

3440
/* Protect the PCI config register pairs used for SMN. */
3541
static DEFINE_MUTEX(smn_mutex);
@@ -41,8 +47,11 @@ static const struct pci_device_id amd_root_ids[] = {
4147
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M10H_ROOT) },
4248
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M30H_ROOT) },
4349
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M60H_ROOT) },
50+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_MA0H_ROOT) },
4451
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M10H_ROOT) },
4552
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M40H_ROOT) },
53+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M60H_ROOT) },
54+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M70H_ROOT) },
4655
{}
4756
};
4857

@@ -61,12 +70,15 @@ static const struct pci_device_id amd_nb_misc_ids[] = {
6170
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M10H_DF_F3) },
6271
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M30H_DF_F3) },
6372
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M60H_DF_F3) },
73+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_MA0H_DF_F3) },
6474
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CNB17H_F3) },
6575
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M70H_DF_F3) },
6676
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_DF_F3) },
6777
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M10H_DF_F3) },
6878
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M40H_DF_F3) },
6979
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M50H_DF_F3) },
80+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M60H_DF_F3) },
81+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M70H_DF_F3) },
7082
{}
7183
};
7284

@@ -81,6 +93,7 @@ static const struct pci_device_id amd_nb_link_ids[] = {
8193
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M30H_DF_F4) },
8294
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M60H_DF_F4) },
8395
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_M70H_DF_F4) },
96+
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_17H_MA0H_DF_F4) },
8497
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_DF_F4) },
8598
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M10H_DF_F4) },
8699
{ PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M40H_DF_F4) },

include/linux/pci_ids.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -556,10 +556,13 @@
556556
#define PCI_DEVICE_ID_AMD_17H_M30H_DF_F3 0x1493
557557
#define PCI_DEVICE_ID_AMD_17H_M60H_DF_F3 0x144b
558558
#define PCI_DEVICE_ID_AMD_17H_M70H_DF_F3 0x1443
559+
#define PCI_DEVICE_ID_AMD_17H_MA0H_DF_F3 0x1727
559560
#define PCI_DEVICE_ID_AMD_19H_DF_F3 0x1653
560561
#define PCI_DEVICE_ID_AMD_19H_M10H_DF_F3 0x14b0
561562
#define PCI_DEVICE_ID_AMD_19H_M40H_DF_F3 0x167c
562563
#define PCI_DEVICE_ID_AMD_19H_M50H_DF_F3 0x166d
564+
#define PCI_DEVICE_ID_AMD_19H_M60H_DF_F3 0x14e3
565+
#define PCI_DEVICE_ID_AMD_19H_M70H_DF_F3 0x14f3
563566
#define PCI_DEVICE_ID_AMD_CNB17H_F3 0x1703
564567
#define PCI_DEVICE_ID_AMD_LANCE 0x2000
565568
#define PCI_DEVICE_ID_AMD_LANCE_HOME 0x2001

0 commit comments

Comments
 (0)