On Tue, Dec 03, 2024 at 03:42:32PM -0500, Frank Li wrote: > On Mon, Nov 04, 2024 at 02:22:59PM -0500, Frank Li wrote: > > Some PCIe host bridges require special handling when enabling or disabling > > PCIe Endpoints. For example, the i.MX95 platform has a lookup table to map > > Requester IDs to StreamIDs, which are used by the SMMU and MSI controller > > to identify the source of DMA accesses. > > > > Without this mapping, DMA accesses may target unintended memory, which > > would corrupt memory or read the wrong data. > > > > Add a host bridge .enable_device() hook the imx6 driver can use to > > configure the Requester ID to StreamID mapping. The hardware table isn't > > big enough to map all possible Requester IDs, so this hook may fail if no > > table space is available. In that case, return failure from > > pci_enable_device(). > > > > It might make more sense to make pci_set_master() decline to enable bus > > mastering and return failure, but it currently doesn't have a way to return > > failure. > > > > Signed-off-by: Frank Li <Frank.Li@xxxxxxx> > > --- > > Bjorn Helgaas: > > Can I keep your acked tag? Compared V4, just use static helper > functions. Can you rebase this to pci/main (v6.13-rc1)? This would go via the PCI tree, so it will need to be rebased anyway, and then I can ack that. Bjorn