[PATCH 1/1][SRU][OEM-6.0/Unstable] UBUNTU: SAUCE: iommu: intel-ipu: use IOMMU passthrough mode for Intel IPUs on Raptor Lake

Kai-Heng Feng kai.heng.feng at canonical.com
Wed Sep 14 09:09:40 UTC 2022


On Wed, Sep 14, 2022 at 1:50 AM You-Sheng Yang
<vicamo.yang at canonical.com> wrote:
>
> From: zouxiaoh <xiaohong.zou at intel.com>
>
> BugLink: https://bugs.launchpad.net/bugs/1989041
>
> Intel IPU(Image Processing Unit) has its own (IO)MMU hardware,
> The IPU driver allocates its own page table that is not mapped
> via the DMA, and thus the Intel IOMMU driver blocks access giving
> this error: DMAR: DRHD: handling fault status reg 3 DMAR:
> [DMA Read] Request device [00:05.0] PASID ffffffff
> fault addr 76406000 [fault reason 06] PTE Read access is not set
> As IPU is not an external facing device which is not risky, so use
> IOMMU passthrough mode for Intel IPUs.
>
> (backported from https://github.com/intel/ipu6-drivers/blob/89c6b99e4bec00a04b53f37cd8c3c01ce824a4ab/patch/IOMMU-passthrough-for-intel-ipu.diff)
> Signed-off-by: You-Sheng Yang <vicamo.yang at canonical.com>
> ---
>  drivers/iommu/intel/iommu.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
> index 5894a2ad638f..b602fd5084cd 100644
> --- a/drivers/iommu/intel/iommu.c
> +++ b/drivers/iommu/intel/iommu.c
> @@ -38,7 +38,8 @@
>  #define IS_USB_DEVICE(pdev) ((pdev->class >> 8) == PCI_CLASS_SERIAL_USB)
>  #define IS_ISA_DEVICE(pdev) ((pdev->class >> 8) == PCI_CLASS_BRIDGE_ISA)
>  #define IS_INTEL_IPU(pdev) ((pdev)->vendor == PCI_VENDOR_ID_INTEL &&   \
> -                          ((pdev)->device == 0x9a19 ||         \
> +                          ((pdev)->device == 0xa75d ||         \
> +                           (pdev)->device == 0x9a19 ||         \

Since it's not in IPU6 driver, maybe it's better to put it upstream?

Kai-Heng

>                             (pdev)->device == 0x9a39 ||         \
>                             (pdev)->device == 0x4e19 ||         \
>                             (pdev)->device == 0x465d ||         \
> --
> 2.37.2
>
>
> --
> kernel-team mailing list
> kernel-team at lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team



More information about the kernel-team mailing list