On Tue, 24 Mar 2026, David E. Box wrote: > Change PMT class code to pass a discovery index rather than a direct struct > resource when creating entries. This allows the class to identify the > discovery source generically without assuming PCI BAR resources. For PCI > devices, the index still resolves to a resource in the intel_vsec_device. > Other discovery sources, such as ACPI, can use the same index without > needing a struct resource. > > Signed-off-by: David E. Box > --- > > V2 - No changes > > drivers/platform/x86/intel/pmt/class.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/platform/x86/intel/pmt/class.c b/drivers/platform/x86/intel/pmt/class.c > index d652b21261f0..3fcea6a6e763 100644 > --- a/drivers/platform/x86/intel/pmt/class.c > +++ b/drivers/platform/x86/intel/pmt/class.c > @@ -207,11 +207,12 @@ EXPORT_SYMBOL_GPL(intel_pmt_class); > > static int intel_pmt_populate_entry(struct intel_pmt_entry *entry, > struct intel_vsec_device *ivdev, > - struct resource *disc_res) > + int idx) > { > struct pci_dev *pci_dev = to_pci_dev(ivdev->dev); > struct device *dev = &ivdev->auxdev.dev; > struct intel_pmt_header *header = &entry->header; > + struct resource *disc_res; > u8 bir; > > /* > @@ -236,6 +237,7 @@ static int intel_pmt_populate_entry(struct intel_pmt_entry *entry, > * For access_type LOCAL, the base address is as follows: > * base address = end of discovery region + base offset > */ > + disc_res = &ivdev->resource[idx]; > entry->base_addr = disc_res->end + 1 + header->base_offset; > > /* > @@ -412,7 +414,7 @@ int intel_pmt_dev_create(struct intel_pmt_entry *entry, struct intel_pmt_namespa > return ret; > } > > - ret = intel_pmt_populate_entry(entry, intel_vsec_dev, &intel_vsec_dev->resource[idx]); > + ret = intel_pmt_populate_entry(entry, intel_vsec_dev, idx); > if (ret) > return ret; > > Reviewed-by: Ilpo Järvinen -- i.