iommu/arm-smmu: Add global SMR masking property
Subsystems (3)
Robin Murphy
reviewerRFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
The current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)
Documentation/devicetree/bindings/iommu/arm,smmu.txt +8 -0
@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with + the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :
drivers/iommu/arm-smmu.c +3 -1
@@ -1534,13 +1534,15 @@ static int arm_smmu_domain_set_attr(struct iommu_domain *domain,static int arm_smmu_of_xlate (struct device *dev,struct of_phandle_args *args) { -u32 fwid =0 ; +u32 mask, fwid =0 ;if (args->args_count >0 ) fwid |= (u16 )args->args[0 ];if (args->args_count >1 ) fwid |= (u16 )args->args[1 ] <<SMR_MASK_SHIFT ; +else if (!of_property_read_u32 (args->np,"stream-match-mask" , &mask)) + fwid |= (u16 )mask <<SMR_MASK_SHIFT ;return iommu_fwspec_add_ids (dev, &fwid,1 ); }
Signature · 1 line
2.10.2.dirty
RFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
Quoted 20 lines
-----Original Message-----
From: iommu-bounces at lists.linux-foundation.org [mailto:iommu- bounces at lists.linux-foundation.org] On Behalf Of Robin Murphy
Sent: Friday, December 16, 2016 18:49
To: iommu at lists.linux-foundation.org; devicetree at vger.kernel.org; linux-arm- kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyThe current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
Quoted 1 line
CC Stuart Yoder <[email protected]>
Quoted 59 lines
Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +8
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with + the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :drivers/iommu/arm-smmu.c +3
-1@@ -1534,13 +1534,15 @@ static int arm_smmu_domain_set_attr(structiommu_domain *domain, static int arm_smmu_of_xlate(struct device *dev, struct of_phandle_args *args) { - u32 fwid = 0; + u32 mask, fwid = 0;if (args->args_count >0 ) fwid |= (u16 )args->args[0 ];if (args->args_count >1 ) fwid |= (u16 )args->args[1 ] <<SMR_MASK_SHIFT ; +else if (!of_property_read_u32 (args->np,"stream-match-mask" , &mask)) + fwid |= (u16 )mask <<SMR_MASK_SHIFT ;return
iommu_fwspec_add_ids(dev, &fwid, 1);
}
--
2.10.2.dirty_______________________________________________
iommu mailing list
iommu at lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
RFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
Hi Robin,
Quoted 33 lines
-----Original Message-----
From: iommu-bounces at lists.linux-foundation.org [mailto:iommu- bounces at lists.linux-foundation.org] On Behalf Of Nipun Gupta
Sent: Sunday, December 18, 2016 2:37 AM
To: Robin Murphy <[email protected]>; iommu at lists.linux- foundation.org; devicetree at vger.kernel.org; linux-arm- kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: RE: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyQuoted 9 lines
-----Original Message-----
From: iommu-bounces at lists.linux-foundation.org [mailto:iommu- bounces at lists.linux-foundation.org] On Behalf Of Robin Murphy
Sent: Friday, December 16, 2016 18:49
To: iommu at lists.linux-foundation.org; devicetree at vger.kernel.org; linux-arm- kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: [RFC PATCH] iommu/arm-smmu: Add global SMR maskingproperty
Quoted 9 lines
The current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
Quoted 3 lines
Quoted 1 line
CC Stuart Yoder <[email protected]>Tested-by Nipun Gupta <[email protected]>
We have verified this patches with PCI and FSL-MC bus devices.
I do not see any comment on this patch, I know there were holidays around, can we assume this as accepted and we can develop u-boot patches.
Thanks
-Bharat
Quoted 64 lines
drivers/iommu/arm-smmu.c
Quoted 31 lines
Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +8
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with + the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :drivers/iommu/arm-smmu.c +0
-0index
Quoted 24 lines
8f7281444551..f1abcb7dde36100644drivers/iommu/arm-smmu.c +3
-1@@ -1534,13 +1534,15 @@ static int arm_smmu_domain_set_attr(structiommu_domain *domain, static int arm_smmu_of_xlate(struct device *dev, struct of_phandle_args *args) { - u32 fwid = 0; + u32 mask, fwid = 0;if (args->args_count >0 ) fwid |= (u16 )args->args[0 ];if (args->args_count >1 ) fwid |= (u16 )args->args[1 ] <<SMR_MASK_SHIFT ; +else if (!of_property_read_u32 (args->np,"stream-match-mask" , &mask)) + fwid |= (u16 )mask <<SMR_MASK_SHIFT ;return
iommu_fwspec_add_ids(dev, &fwid, 1); }
--
2.10.2.dirtyQuoted 4 lines
_______________________________________________
iommu mailing list
iommu at lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu_______________________________________________
iommu mailing list
iommu at lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
RFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
In reply to Nipun GuptaHi Robin/Will,
This patch is currently not applied on the tree.
I had verified the patch and it seems good.
Is ack required on the patch or do I need to send a non RFC patch (with Robin's signoff)? This is very much required to support SMMU on NXP platform.
Thanks,
Nipun
Quoted 95 lines
-----Original Message-----
From: Nipun Gupta
Sent: Sunday, December 18, 2016 2:37
To: Robin Murphy <[email protected]>; iommu at lists.linux- foundation.org; devicetree at vger.kernel.org; linux-arm- kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: RE: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyQuoted 5 lines
-----Original Message-----
From: iommu-bounces at lists.linux-foundation.org [mailto:iommu- bounces at lists.linux-foundation.org] On Behalf Of Robin Murphy
Sent: Friday, December 16, 2016 18:49
To: iommu at lists.linux-foundation.org; devicetree at vger.kernel.org; linux-arm-
Quoted 13 lines
kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyThe current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
Quoted 1 line
CC Stuart Yoder <[email protected]>Tested-by Nipun Gupta <[email protected]>Quoted 34 lines
Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +8
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with + the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :drivers/iommu/arm-smmu.c +0
-0drivers/iommu/arm-smmu.c static int arm_smmu_domain_set_attr(struct · line 1536
Quoted 3 lines
drivers/iommu/arm-smmu.c +0
-0@@ -1534,13 +1534,15 @@ static int arm_smmu_domain_set_attr(structiommu_domain *domain, static int arm_smmu_of_xlate(struct device *dev, struct of_phandle_args*args)
Quoted 22 lines
drivers/iommu/arm-smmu.c +3
-1{ -u32 fwid =0 ; +u32 mask, fwid =0 ;if (args->args_count >0 ) fwid |= (u16 )args->args[0 ];if (args->args_count >1 ) fwid |= (u16 )args->args[1 ] <<SMR_MASK_SHIFT ; +else if (!of_property_read_u32 (args->np,"stream-match-mask" , &mask)) + fwid |= (u16 )mask <<SMR_MASK_SHIFT ;return
iommu_fwspec_add_ids(dev, &fwid, 1);
}
--
2.10.2.dirty_______________________________________________
iommu mailing list
iommu at lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
Robin Murphy
reviewerRFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
Quoted 7 lines · Nipun Gupta
Hi Robin/Will,
This patch is currently not applied on the tree.
I had verified the patch and it seems good.
Is ack required on the patch or do I need to send a non RFC patch (with Robin's signoff)? This is very much required to support SMMU on NXP platform.
It's still sat in my "patches to do something with" queue - I don't think we ever reached a concrete decision on the property name for a DT maintainer ack, but I've tweaked the description per Will's comment; thanks for the reminder. I'll send an rc1-based version out next week to reboot the discussion.
Robin.
Quoted 100 lines
Thanks,
NipunQuoted 95 lines
-----Original Message-----
From: Nipun Gupta
Sent: Sunday, December 18, 2016 2:37
To: Robin Murphy <[email protected]>; iommu at lists.linux- foundation.org; devicetree at vger.kernel.org; linux-arm- kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: RE: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyQuoted 5 lines
-----Original Message-----
From: iommu-bounces at lists.linux-foundation.org [mailto:iommu- bounces at lists.linux-foundation.org] On Behalf Of Robin Murphy
Sent: Friday, December 16, 2016 18:49
To: iommu at lists.linux-foundation.org; devicetree at vger.kernel.org; linux-arm-
Quoted 13 lines
kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyThe current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
Quoted 1 line
CC Stuart Yoder <[email protected]>Tested-by Nipun Gupta <[email protected]>Quoted 34 lines
Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +8
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with + the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :drivers/iommu/arm-smmu.c +0
-0drivers/iommu/arm-smmu.c static int arm_smmu_domain_set_attr(struct · line 1536
Quoted 3 lines
drivers/iommu/arm-smmu.c +0
-0@@ -1534,13 +1534,15 @@ static int arm_smmu_domain_set_attr(structiommu_domain *domain, static int arm_smmu_of_xlate(struct device *dev, struct of_phandle_args*args)
Quoted 22 lines
drivers/iommu/arm-smmu.c +3
-1{ -u32 fwid =0 ; +u32 mask, fwid =0 ;if (args->args_count >0 ) fwid |= (u16 )args->args[0 ];if (args->args_count >1 ) fwid |= (u16 )args->args[1 ] <<SMR_MASK_SHIFT ; +else if (!of_property_read_u32 (args->np,"stream-match-mask" , &mask)) + fwid |= (u16 )mask <<SMR_MASK_SHIFT ;return
iommu_fwspec_add_ids(dev, &fwid, 1);
}
--
2.10.2.dirty_______________________________________________
iommu mailing list
iommu at lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
RFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
Thanks Robin,
This would be of great help.
Regards,
Nipun
Quoted 128 lines
-----Original Message-----
From: Robin Murphy [mailto:robin.murphy at arm.com]
Sent: Thursday, March 02, 2017 22:18
To: Nipun Gupta <[email protected]>; iommu at lists.linux-foundation.org; devicetree at vger.kernel.org; linux-arm-kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; stuyoder at gmail.com; Bharat Bhushan <[email protected]>
Subject: Re: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyQuoted 6 lines · Nipun Gupta
Hi Robin/Will,
This patch is currently not applied on the tree.
I had verified the patch and it seems good.
Is ack required on the patch or do I need to send a non RFC patch (with Robin'ssignoff)?
Quoted 1 line
This is very much required to support SMMU on NXP platform.
It's still sat in my "patches to do something with" queue - I don't think we ever reached a concrete decision on the property name for a DT maintainer ack, but I've tweaked the description per Will's comment; thanks for the reminder. I'll send an rc1-based version out next week to reboot the discussion.
Robin.
Quoted 14 lines
Thanks,
NipunQuoted 9 lines
-----Original Message-----
From: Nipun Gupta
Sent: Sunday, December 18, 2016 2:37
To: Robin Murphy <[email protected]>; iommu at lists.linux- foundation.org; devicetree at vger.kernel.org; linux-arm- kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: RE: [RFC PATCH] iommu/arm-smmu: Add global SMR maskingproperty
Quoted 86 lines
Quoted 86 lines
Quoted 8 lines
-----Original Message-----
From: iommu-bounces at lists.linux-foundation.org [mailto:iommu- bounces at lists.linux-foundation.org] On Behalf Of Robin Murphy
Sent: Friday, December 16, 2016 18:49
To: iommu at lists.linux-foundation.org; devicetree at vger.kernel.org; linux-arm-
Quoted 13 lines
kernel at lists.infradead.org
Cc: mark.rutland at arm.com; will.deacon at arm.com; Stuart Yoder <[email protected]>
Subject: [RFC PATCH] iommu/arm-smmu: Add global SMR masking propertyThe current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
Quoted 1 line
CC Stuart Yoder <[email protected]>Tested-by Nipun Gupta <[email protected]>Quoted 34 lines
Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +8
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with + the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :drivers/iommu/arm-smmu.c +0
-0drivers/iommu/arm-smmu.c static int arm_smmu_domain_set_attr(struct · line 1536
Quoted 3 lines
drivers/iommu/arm-smmu.c +0
-0@@ -1534,13 +1534,15 @@ static int arm_smmu_domain_set_attr(structiommu_domain *domain, static int arm_smmu_of_xlate(struct device *dev, struct of_phandle_args*args)
Quoted 22 lines
drivers/iommu/arm-smmu.c +3
-1{ -u32 fwid =0 ; +u32 mask, fwid =0 ;if (args->args_count >0 ) fwid |= (u16 )args->args[0 ];if (args->args_count >1 ) fwid |= (u16 )args->args[1 ] <<SMR_MASK_SHIFT ; +else if (!of_property_read_u32 (args->np,"stream-match-mask" , &mask)) + fwid |= (u16 )mask <<SMR_MASK_SHIFT ;return
iommu_fwspec_add_ids(dev, &fwid, 1);
}
--
2.10.2.dirty_______________________________________________
iommu mailing list
iommu at lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu
Rob Herring
maintainerRFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
In reply to Robin MurphyQuoted 23 lines · Robin Murphy
The current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
CC Stuart Yoder <[email protected]>Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +0
-0
Documentation/devicetree/bindings/iommu/arm,smmu.txt conditions. · line 63
Quoted 4 lines
Documentation/devicetree/bindings/iommu/arm,smmu.txt +1
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration. +- stream-match-mask : Specifies a fixed SMR mask value to combine with
Needs a vendor prefix.
Otherwise looks fine.
Quoted 10 lines
Documentation/devicetree/bindings/iommu/arm,smmu.txt +7
-0+ the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs). + ** Deprecated properties: - mmu-masters (deprecated in favour of the generic "iommus" binding) :
RFC PATCH 1/1 iommu/arm-smmu: Add global SMR masking property
Quoted 27 lines · Rob Herring
Quoted 26 lines · Robin Murphy
The current SMR masking support using a 2-cell iommu-specifier is primarily intended to handle individual masters with large and/or complex Stream ID assignments; it quickly gets a bit clunky in other SMR use-cases where we just want to consistently mask out the same part of every Stream ID (e.g. for MMU-500 configurations where the appended TBU number gets in the way unnecessarily). Let's add a new property to allow a single global mask value to better fit the latter situation.
CC Stuart Yoder <[email protected]>Signed-off-by Robin Murphy <[email protected]>---
Compile-tested only...
Documentation/devicetree/bindings/iommu/arm,smmu.txt | 8 ++++++++ drivers/iommu/arm-smmu.c | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-)Documentation/devicetree/bindings/iommu/arm,smmu.txt +0
-0@@ -60,6 +60,14 @@ conditions. aliases of secure registers have to be used during SMMU configuration.
Quoted 3 lines
Documentation/devicetree/bindings/iommu/arm,smmu.txt conditions. · line 63
Quoted 1 line
Documentation/devicetree/bindings/iommu/arm,smmu.txt +1
-0+- stream-match-mask : Specifies a fixed SMR mask value to combine withNeeds a vendor prefix.
Why does this need a vendor prefix? I'm not fussed either way, but since the stream-match-mask is an optional architectural concept and not specific to an implementation, it seems strange to me that it would need a prefix whereas something like #global-interrupts does not.
Quoted 6 lines
Documentation/devicetree/bindings/iommu/arm,smmu.txt conditions. · line 69
Quoted 6 lines
Documentation/devicetree/bindings/iommu/arm,smmu.txt +6
-0+ the Stream ID value from every iommu-specifier. This + may be used instead of an "#iommu-cells" value of 2 + when there is no need for per-master SMR masks, but + it is still desired to mask some portion of every + Stream ID (e.g. for certain MMU-500 configurations + given globally unique external IDs).
Robin -- it might be worth a sentence here saying that the property is ignored if stream matching isn't supported by the hardware.
Will