Skip to content

Commit e2be595

Browse files
yghannamsuryasaimadhu
authored andcommitted
EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh
Add a new family type for AMD Family 19h Models 10h to 1Fh. Use this new family type for Models A0h to AFh also. Increase the maximum number of controllers from 8 to 12. Signed-off-by: Yazen Ghannam <[email protected]> Signed-off-by: Borislav Petkov <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent f957112 commit e2be595

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

drivers/edac/amd64_edac.c

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2650,6 +2650,16 @@ static struct amd64_family_type family_types[] = {
26502650
.dbam_to_cs = f17_addr_mask_to_cs_size,
26512651
}
26522652
},
2653+
[F19_M10H_CPUS] = {
2654+
.ctl_name = "F19h_M10h",
2655+
.f0_id = PCI_DEVICE_ID_AMD_19H_M10H_DF_F0,
2656+
.f6_id = PCI_DEVICE_ID_AMD_19H_M10H_DF_F6,
2657+
.max_mcs = 12,
2658+
.ops = {
2659+
.early_channel_count = f17_early_channel_count,
2660+
.dbam_to_cs = f17_addr_mask_to_cs_size,
2661+
}
2662+
},
26532663
};
26542664

26552665
/*
@@ -3687,11 +3697,20 @@ static struct amd64_family_type *per_family_init(struct amd64_pvt *pvt)
36873697
break;
36883698

36893699
case 0x19:
3690-
if (pvt->model >= 0x20 && pvt->model <= 0x2f) {
3700+
if (pvt->model >= 0x10 && pvt->model <= 0x1f) {
3701+
fam_type = &family_types[F19_M10H_CPUS];
3702+
pvt->ops = &family_types[F19_M10H_CPUS].ops;
3703+
break;
3704+
} else if (pvt->model >= 0x20 && pvt->model <= 0x2f) {
36913705
fam_type = &family_types[F17_M70H_CPUS];
36923706
pvt->ops = &family_types[F17_M70H_CPUS].ops;
36933707
fam_type->ctl_name = "F19h_M20h";
36943708
break;
3709+
} else if (pvt->model >= 0xa0 && pvt->model <= 0xaf) {
3710+
fam_type = &family_types[F19_M10H_CPUS];
3711+
pvt->ops = &family_types[F19_M10H_CPUS].ops;
3712+
fam_type->ctl_name = "F19h_MA0h";
3713+
break;
36953714
}
36963715
fam_type = &family_types[F19_CPUS];
36973716
pvt->ops = &family_types[F19_CPUS].ops;

drivers/edac/amd64_edac.h

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@
9696
/* Hardware limit on ChipSelect rows per MC and processors per system */
9797
#define NUM_CHIPSELECTS 8
9898
#define DRAM_RANGES 8
99-
#define NUM_CONTROLLERS 8
99+
#define NUM_CONTROLLERS 12
100100

101101
#define ON true
102102
#define OFF false
@@ -126,6 +126,8 @@
126126
#define PCI_DEVICE_ID_AMD_17H_M70H_DF_F6 0x1446
127127
#define PCI_DEVICE_ID_AMD_19H_DF_F0 0x1650
128128
#define PCI_DEVICE_ID_AMD_19H_DF_F6 0x1656
129+
#define PCI_DEVICE_ID_AMD_19H_M10H_DF_F0 0x14ad
130+
#define PCI_DEVICE_ID_AMD_19H_M10H_DF_F6 0x14b3
129131

130132
/*
131133
* Function 1 - Address Map
@@ -298,6 +300,7 @@ enum amd_families {
298300
F17_M60H_CPUS,
299301
F17_M70H_CPUS,
300302
F19_CPUS,
303+
F19_M10H_CPUS,
301304
NUM_FAMILIES,
302305
};
303306

0 commit comments

Comments
 (0)