Re: [PATCH] perf/x86/intel/uncore: add support for Haswell ULT IMC uncore

From: Bjorn Helgaas
Date: Mon Apr 20 2015 - 15:35:03 EST


On Mon, Apr 20, 2015 at 1:58 PM, Stephane Eranian <eranian@xxxxxxxxxx> wrote:
> On Mon, Apr 20, 2015 at 11:56 AM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote:
>>
>> On Mon, Apr 20, 2015 at 1:42 PM, Sonny Rao <sonnyrao@xxxxxxxxxxxx> wrote:
>> > This uncore is the same as the Haswell desktop part but uses a
>> > different PCI ID.
>> >
>> > Signed-off-by: Sonny Rao <sonnyrao@xxxxxxxxxxxx>
>> > ---
>> > arch/x86/kernel/cpu/perf_event_intel_uncore_snb.c | 5 +++++
>> > include/linux/pci_ids.h | 1 +
>> > 2 files changed, 6 insertions(+)
>> >
>> > diff --git a/arch/x86/kernel/cpu/perf_event_intel_uncore_snb.c b/arch/x86/kernel/cpu/perf_event_intel_uncore_snb.c
>> > index 3001015..0bda6fc 100644
>> > --- a/arch/x86/kernel/cpu/perf_event_intel_uncore_snb.c
>> > +++ b/arch/x86/kernel/cpu/perf_event_intel_uncore_snb.c
>> > @@ -472,6 +472,10 @@ static const struct pci_device_id hsw_uncore_pci_ids[] = {
>> > PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_HSW_IMC),
>> > .driver_data = UNCORE_PCI_DEV_DATA(SNB_PCI_UNCORE_IMC, 0),
>> > },
>> > + { /* IMC */
>> > + PCI_DEVICE(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_HSW_U_IMC),
>> > + .driver_data = UNCORE_PCI_DEV_DATA(SNB_PCI_UNCORE_IMC, 0),
>> > + },
>> > { /* end: all zeroes */ },
>> > };
>> >
>> > @@ -502,6 +506,7 @@ static const struct imc_uncore_pci_dev desktop_imc_pci_ids[] = {
>> > IMC_DEV(IVB_IMC, &ivb_uncore_pci_driver), /* 3rd Gen Core processor */
>> > IMC_DEV(IVB_E3_IMC, &ivb_uncore_pci_driver), /* Xeon E3-1200 v2/3rd Gen Core processor */
>> > IMC_DEV(HSW_IMC, &hsw_uncore_pci_driver), /* 4th Gen Core Processor */
>> > + IMC_DEV(HSW_U_IMC, &hsw_uncore_pci_driver), /* 4th Gen Core ULT Mobile Processor */
>> > { /* end marker */ }
>> > };
>> >
>> > diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h
>> > index 38cff8f..e5ae042 100644
>> > --- a/include/linux/pci_ids.h
>> > +++ b/include/linux/pci_ids.h
>> > @@ -2545,6 +2545,7 @@
>> > #define PCI_DEVICE_ID_INTEL_IVB_IMC 0x0154
>> > #define PCI_DEVICE_ID_INTEL_IVB_E3_IMC 0x0150
>> > #define PCI_DEVICE_ID_INTEL_HSW_IMC 0x0c00
>> > +#define PCI_DEVICE_ID_INTEL_HSW_U_IMC 0x0a04
>>
>> Please either use the 0x0a04 constant directly in
>> perf_event_intel_uncore_snb.c, or explain why the #define should be
>> here, e.g., maybe it will be used in multiple places. See the comment
>> at the top of pci_ids.h.
>>
> But then, the same reasoning would apply to the other 3 IMC defines,
> wouldn't it?

Yes. But if we made a mistake in the past, that doesn't mean we
should repeat it today.

>> > #define PCI_DEVICE_ID_INTEL_PXHD_0 0x0320
>> > #define PCI_DEVICE_ID_INTEL_PXHD_1 0x0321
>> > #define PCI_DEVICE_ID_INTEL_PXH_0 0x0329
>> > --
>> > 2.1.2
>> >
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/