diff mbox series

[v14,09/10] ACPI/IORT: Enable stall support for platform devices

Message ID 20210401154718.307519-10-jean-philippe@linaro.org
State Superseded
Headers show
Series iommu: I/O page faults for SMMUv3 | expand

Commit Message

Jean-Philippe Brucker April 1, 2021, 3:47 p.m. UTC
Copy the "Stall supported" bit, that tells whether a named component
supports stall, into the dma-can-stall device property.

Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

---
 drivers/acpi/arm64/iort.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

-- 
2.31.1

Comments

Hanjun Guo April 2, 2021, 12:45 a.m. UTC | #1
On 2021/4/1 23:47, Jean-Philippe Brucker wrote:
> Copy the "Stall supported" bit, that tells whether a named component

> supports stall, into the dma-can-stall device property.

> 

> Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

> Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

> ---

>   drivers/acpi/arm64/iort.c | 4 +++-

>   1 file changed, 3 insertions(+), 1 deletion(-)

> 

> diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c

> index 3912a1f6058e..0828f70cb782 100644

> --- a/drivers/acpi/arm64/iort.c

> +++ b/drivers/acpi/arm64/iort.c

> @@ -968,13 +968,15 @@ static int iort_pci_iommu_init(struct pci_dev *pdev, u16 alias, void *data)

>   static void iort_named_component_init(struct device *dev,

>   				      struct acpi_iort_node *node)

>   {

> -	struct property_entry props[2] = {};

> +	struct property_entry props[3] = {};

>   	struct acpi_iort_named_component *nc;

>   

>   	nc = (struct acpi_iort_named_component *)node->node_data;

>   	props[0] = PROPERTY_ENTRY_U32("pasid-num-bits",

>   				      FIELD_GET(ACPI_IORT_NC_PASID_BITS,

>   						nc->node_flags));

> +	if (nc->node_flags & ACPI_IORT_NC_STALL_SUPPORTED)

> +		props[1] = PROPERTY_ENTRY_BOOL("dma-can-stall");

>   

>   	if (device_add_properties(dev, props))

>   		dev_warn(dev, "Could not add device properties\n");


Acked-by: Hanjun Guo <guohanjun@huawei.com>
diff mbox series

Patch

diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c
index 3912a1f6058e..0828f70cb782 100644
--- a/drivers/acpi/arm64/iort.c
+++ b/drivers/acpi/arm64/iort.c
@@ -968,13 +968,15 @@  static int iort_pci_iommu_init(struct pci_dev *pdev, u16 alias, void *data)
 static void iort_named_component_init(struct device *dev,
 				      struct acpi_iort_node *node)
 {
-	struct property_entry props[2] = {};
+	struct property_entry props[3] = {};
 	struct acpi_iort_named_component *nc;
 
 	nc = (struct acpi_iort_named_component *)node->node_data;
 	props[0] = PROPERTY_ENTRY_U32("pasid-num-bits",
 				      FIELD_GET(ACPI_IORT_NC_PASID_BITS,
 						nc->node_flags));
+	if (nc->node_flags & ACPI_IORT_NC_STALL_SUPPORTED)
+		props[1] = PROPERTY_ENTRY_BOOL("dma-can-stall");
 
 	if (device_add_properties(dev, props))
 		dev_warn(dev, "Could not add device properties\n");