drivers/pci/controller/pci-host-common.c | 2 + drivers/pci/controller/pcie-apple.c | 75 +++++------------------- include/linux/pci-ecam.h | 4 ++ 3 files changed, 21 insertions(+), 60 deletions(-)
The Apple PCIe controller requires some additional attention when
enabling an endpoint device, so that the RID gets correctly mapped to
a SID on its way to the IOMMU.
So far, we have need relying on a custom bus notifier to perform this
task, but Frank Li's series [1] is a better approach as it puts the
complexity in the core code instead of the host controller driver, and
this series builds on that:
- allow the new {en,dis}able_device() to be provided via pci_ecam_ops
- convert the Apple PCIe driver to that infrastructure
Patches on top of 6.13-rc1, plus Frank's v7 series.
[1] https://lore.kernel.org/r/20241203-imx95_lut-v7-0-d0cd6293225e@nxp.com
Marc Zyngier (2):
PCI: host-generic: Allow {en,dis}able_device() to be provided via
pci_ecam_ops
PCI: apple: Convert to {en,dis}able_device() callbacks
drivers/pci/controller/pci-host-common.c | 2 +
drivers/pci/controller/pcie-apple.c | 75 +++++-------------------
include/linux/pci-ecam.h | 4 ++
3 files changed, 21 insertions(+), 60 deletions(-)
--
2.39.2
On Wed, Dec 04, 2024 at 03:01:43PM +0000, Marc Zyngier wrote:
> The Apple PCIe controller requires some additional attention when
> enabling an endpoint device, so that the RID gets correctly mapped to
> a SID on its way to the IOMMU.
>
> So far, we have need relying on a custom bus notifier to perform this
> task, but Frank Li's series [1] is a better approach as it puts the
> complexity in the core code instead of the host controller driver, and
> this series builds on that:
>
> - allow the new {en,dis}able_device() to be provided via pci_ecam_ops
>
> - convert the Apple PCIe driver to that infrastructure
>
> Patches on top of 6.13-rc1, plus Frank's v7 series.
>
> [1] https://lore.kernel.org/r/20241203-imx95_lut-v7-0-d0cd6293225e@nxp.com
>
> Marc Zyngier (2):
> PCI: host-generic: Allow {en,dis}able_device() to be provided via
> pci_ecam_ops
> PCI: apple: Convert to {en,dis}able_device() callbacks
>
> drivers/pci/controller/pci-host-common.c | 2 +
> drivers/pci/controller/pcie-apple.c | 75 +++++-------------------
> include/linux/pci-ecam.h | 4 ++
> 3 files changed, 21 insertions(+), 60 deletions(-)
Applied to pci/controller/iommu-map for v6.14, thank you!
Bjorn
On Wed, Dec 04, 2024 at 03:01:43PM +0000, Marc Zyngier wrote:
> The Apple PCIe controller requires some additional attention when
> enabling an endpoint device, so that the RID gets correctly mapped to
> a SID on its way to the IOMMU.
>
> So far, we have need relying on a custom bus notifier to perform this
> task, but Frank Li's series [1] is a better approach as it puts the
> complexity in the core code instead of the host controller driver, and
> this series builds on that:
>
> - allow the new {en,dis}able_device() to be provided via pci_ecam_ops
>
> - convert the Apple PCIe driver to that infrastructure
>
> Patches on top of 6.13-rc1, plus Frank's v7 series.
>
> [1] https://lore.kernel.org/r/20241203-imx95_lut-v7-0-d0cd6293225e@nxp.com
>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
- Mani
> Marc Zyngier (2):
> PCI: host-generic: Allow {en,dis}able_device() to be provided via
> pci_ecam_ops
> PCI: apple: Convert to {en,dis}able_device() callbacks
>
> drivers/pci/controller/pci-host-common.c | 2 +
> drivers/pci/controller/pcie-apple.c | 75 +++++-------------------
> include/linux/pci-ecam.h | 4 ++
> 3 files changed, 21 insertions(+), 60 deletions(-)
>
> --
> 2.39.2
>
--
மணிவண்ணன் சதாசிவம்
© 2016 - 2025 Red Hat, Inc.