On 2022/2/8 19:56, John Garry wrote: > On 08/02/2022 11:21, Yicong Yang wrote: >>> This patch should be earlier in the series, before the PTT driver, and the comment on hisi_ptt_check_iommu_mapping() should mention what is going on here. >>> >> ok I'll reorder the serives and modify the comments of hisi_ptt_check_iommu_mapping() like: >> >> /* >> * The DMA of PTT trace can only use direct mapping, due to some >> * hardware restriction. Check whether there is an iommu or the >> * policy of the iommu domain is passthrough, otherwise the trace >> * cannot work. > > IOMMU, capitalize acronyms > ok. >> * >> * The PTT device is supposed to behind the arm smmu v3, which >> * should have passthrough the device by a quirk. Otherwise user >> * should manually set the iommu domain type to identity through >> * sysfs. > > Sorry, but I don't really understand your meaning here. > > I did not think that if we have a default domain then we can change via sysfs to anything else. > ok I think the last sentence maybe misleading and better drop it. >> */ >> >>>> Signed-off-by: Yicong Yang<yangyicong@xxxxxxxxxxxxx> >>>> --- >>>> drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c | 16 ++++++++++++++++ >>>> 1 file changed, 16 insertions(+) >>>> >>>> diff --git a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c >>>> index 6dc6d8b6b368..6f67a2b1dd27 100644 >>>> --- a/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c >>>> +++ b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c >>>> @@ -2838,6 +2838,21 @@ static int arm_smmu_dev_disable_feature(struct device *dev, >>>> } >>>> } >>>> +#define IS_HISI_PTT_DEVICE(pdev) ((pdev)->vendor == PCI_VENDOR_ID_HUAWEI && \ >>>> + (pdev)->device == 0xa12e) >>> I assume that not all revisions will require this check, right? > > So if you are very confident that the next revision will be fixed then I would add a check for this current broken revision. > >>> >> For current revisions it's necessary. >> > > .