On Tue, Jun 24, 2025 at 03:30:34PM -0500, Mario Limonciello wrote: > From: Mario Limonciello <mario.limonciello@xxxxxxx> > > Several places in the kernel do class shifting to match whether a > PCI device is display class. Introduce a helper for those places to > use. > > Reviewed-by: Daniel Dadap <ddadap@xxxxxxxxxx> > Reviewed-by: Simona Vetter <simona.vetter@xxxxxxxx> > Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx> Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> Not sure how this should be merged, let me know if you want me to do something with it. > --- > include/linux/pci.h | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/include/linux/pci.h b/include/linux/pci.h > index 05e68f35f3923..e77754e43c629 100644 > --- a/include/linux/pci.h > +++ b/include/linux/pci.h > @@ -744,6 +744,21 @@ static inline bool pci_is_vga(struct pci_dev *pdev) > return false; > } > > +/** > + * pci_is_display - Check if a PCI device is a display controller > + * @pdev: Pointer to the PCI device structure > + * > + * This function determines whether the given PCI device corresponds > + * to a display controller. Display controllers are typically used > + * for graphical output and are identified based on their class code. > + * > + * Return: true if the PCI device is a display controller, false otherwise. > + */ > +static inline bool pci_is_display(struct pci_dev *pdev) > +{ > + return (pdev->class >> 16) == PCI_BASE_CLASS_DISPLAY; > +} > + > #define for_each_pci_bridge(dev, bus) \ > list_for_each_entry(dev, &bus->devices, bus_list) \ > if (!pci_is_bridge(dev)) {} else > -- > 2.43.0 >