On Tue, Feb 18, 2025 at 10:10:09PM +1100, Alexey Kardashevskiy wrote: > So far PCI BARs could not be mapped as encrypted so there was no > need in API supporting encrypted mappings. TDISP is adding such > support so add pci_iomap_range_encrypted() to allow PCI drivers > do the encrypted mapping when needed. Match subject capitalization, rewrap. > +void __iomem *pci_iomap_range_encrypted(struct pci_dev *dev, > + int bar, > + unsigned long offset, > + unsigned long maxlen) > +{ > + resource_size_t start = pci_resource_start(dev, bar); > + resource_size_t len = pci_resource_len(dev, bar); > + unsigned long flags = pci_resource_flags(dev, bar); > + > + if (len <= offset || !start) > + return NULL; > + len -= offset; > + start += offset; > + if (maxlen && len > maxlen) > + len = maxlen; > + if (flags & IORESOURCE_IO) > + return NULL; > + if ((flags & IORESOURCE_MEM) && (flags & IORESOURCE_VALIDATED)) > + return ioremap_encrypted(start, len); > + /* What? */ "What?" indeed. This could be removed or made to say something intelligible. > + return NULL; > +} > +EXPORT_SYMBOL(pci_iomap_range_encrypted); > + > /** > * pci_iomap_wc_range - create a virtual WC mapping cookie for a PCI BAR > * @dev: PCI device that owns the BAR > -- > 2.47.1 >