Hi Rodrigo,

Looks like "Lu Baolu" has acked patch here 
https://lore.kernel.org/linux-iommu/20220223062957.31797-1-tejaskumarx.surendrakumar.upadh...@intel.com/T/#u
 . Can you please push it in drm-intel?

Thanks,
Tejas

> -----Original Message-----
> From: Surendrakumar Upadhyay, TejaskumarX
> <[email protected]>
> Sent: 25 February 2022 10:43
> To: [email protected]
> Cc: Surendrakumar Upadhyay, TejaskumarX
> <[email protected]>; Talla, RavitejaX Goud
> <[email protected]>; Vivi, Rodrigo <[email protected]>;
> [email protected]
> Subject: [PATCH V2] iommu/vt-d: Add RPLS to quirk list to skip TE disabling
> 
> The VT-d spec requires (10.4.4 Global Command Register, TE
> field) that:
> 
> Hardware implementations supporting DMA draining must drain any in-flight
> DMA read/write requests queued within the Root-Complex before
> completing the translation enable command and reflecting the status of the
> command through the TES field in the Global Status register.
> 
> Unfortunately, some integrated graphic devices fail to do so after some kind
> of power state transition. As the result, the system might stuck in
> iommu_disable_translati on(), waiting for the completion of TE transition.
> 
> This adds RPLS to a quirk list for those devices and skips TE disabling if the
> qurik hits.
> 
> Fixes: b1012ca8dc4f9 "iommu/vt-d: Skip TE disabling on quirky gfx dedicated
> iommu"
> Tested-by: Raviteja Goud Talla <[email protected]>
> Cc: Rodrigo Vivi <[email protected]>
> Cc: [email protected]
> Signed-off-by: Tejas Upadhyay
> <[email protected]>
> ---
>  drivers/iommu/intel/iommu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
> index 92fea3fbbb11..be9487516617 100644
> --- a/drivers/iommu/intel/iommu.c
> +++ b/drivers/iommu/intel/iommu.c
> @@ -5743,7 +5743,7 @@ static void quirk_igfx_skip_te_disable(struct
> pci_dev *dev)
>       ver = (dev->device >> 8) & 0xff;
>       if (ver != 0x45 && ver != 0x46 && ver != 0x4c &&
>           ver != 0x4e && ver != 0x8a && ver != 0x98 &&
> -         ver != 0x9a)
> +         ver != 0x9a && ver != 0xa7)
>               return;
> 
>       if (risky_device(dev))
> --
> 2.34.1

_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to