Commit a43b9ec0 authored by Tony Luck's avatar Tony Luck Committed by Iwona Winiarska
Browse files

peci, hwmon: Switch to new Intel CPU model defines



Update peci subsystem to use the same vendor-family-model
combined definition that core x86 code uses.

Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
Acked-by: default avatarGuenter Roeck <linux@roeck-us.net>
Reviewed-by: default avatarIwona Winiarska <iwona.winiarska@intel.com>
Link: https://lore.kernel.org/r/20240529171920.62571-1-tony.luck@intel.com


Signed-off-by: default avatarIwona Winiarska <iwona.winiarska@intel.com>
parent 6ba59ff4
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -360,10 +360,10 @@ static int init_core_mask(struct peci_cputemp *priv)
	int ret;

	/* Get the RESOLVED_CORES register value */
	switch (peci_dev->info.model) {
	case INTEL_FAM6_ICELAKE_X:
	case INTEL_FAM6_ICELAKE_D:
	case INTEL_FAM6_SAPPHIRERAPIDS_X:
	switch (peci_dev->info.x86_vfm) {
	case INTEL_ICELAKE_X:
	case INTEL_ICELAKE_D:
	case INTEL_SAPPHIRERAPIDS_X:
		ret = peci_ep_pci_local_read(peci_dev, 0, reg->bus, reg->dev,
					     reg->func, reg->offset + 4, &data);
		if (ret)
+2 −3
Original line number Diff line number Diff line
@@ -163,9 +163,8 @@ EXPORT_SYMBOL_NS_GPL(devm_peci_controller_add, PECI);
static const struct peci_device_id *
peci_bus_match_device_id(const struct peci_device_id *id, struct peci_device *device)
{
	while (id->family != 0) {
		if (id->family == device->info.family &&
		    id->model == device->info.model)
	while (id->x86_vfm != 0) {
		if (id->x86_vfm == device->info.x86_vfm)
			return id;
		id++;
	}
+7 −14
Original line number Diff line number Diff line
@@ -294,38 +294,31 @@ peci_cpu_probe(struct peci_device *device, const struct peci_device_id *id)

static const struct peci_device_id peci_cpu_device_ids[] = {
	{ /* Haswell Xeon */
		.family	= 6,
		.model	= INTEL_FAM6_HASWELL_X,
		.x86_vfm = INTEL_HASWELL_X,
		.data	= "hsx",
	},
	{ /* Broadwell Xeon */
		.family	= 6,
		.model	= INTEL_FAM6_BROADWELL_X,
		.x86_vfm = INTEL_BROADWELL_X,
		.data	= "bdx",
	},
	{ /* Broadwell Xeon D */
		.family	= 6,
		.model	= INTEL_FAM6_BROADWELL_D,
		.x86_vfm = INTEL_BROADWELL_D,
		.data	= "bdxd",
	},
	{ /* Skylake Xeon */
		.family	= 6,
		.model	= INTEL_FAM6_SKYLAKE_X,
		.x86_vfm = INTEL_SKYLAKE_X,
		.data	= "skx",
	},
	{ /* Icelake Xeon */
		.family	= 6,
		.model	= INTEL_FAM6_ICELAKE_X,
		.x86_vfm = INTEL_ICELAKE_X,
		.data	= "icx",
	},
	{ /* Icelake Xeon D */
		.family	= 6,
		.model	= INTEL_FAM6_ICELAKE_D,
		.x86_vfm = INTEL_ICELAKE_D,
		.data	= "icxd",
	},
	{ /* Sapphire Rapids Xeon */
		.family	= 6,
		.model	= INTEL_FAM6_SAPPHIRERAPIDS_X,
		.x86_vfm = INTEL_SAPPHIRERAPIDS_X,
		.data	= "spr",
	},
	{ }
+1 −2
Original line number Diff line number Diff line
@@ -100,8 +100,7 @@ static int peci_device_info_init(struct peci_device *device)
	if (ret)
		return ret;

	device->info.family = peci_x86_cpu_family(cpu_id);
	device->info.model = peci_x86_cpu_model(cpu_id);
	device->info.x86_vfm = IFM(peci_x86_cpu_family(cpu_id), peci_x86_cpu_model(cpu_id));

	ret = peci_get_revision(device, &revision);
	if (ret)
+2 −4
Original line number Diff line number Diff line
@@ -66,13 +66,11 @@ struct peci_request *peci_xfer_ep_mmio64_readl(struct peci_device *device, u8 ba
/**
 * struct peci_device_id - PECI device data to match
 * @data: pointer to driver private data specific to device
 * @family: device family
 * @model: device model
 * @x86_vfm: device vendor-family-model
 */
struct peci_device_id {
	const void *data;
	u16 family;
	u8 model;
	u32 x86_vfm;
};

extern const struct device_type peci_device_type;
Loading