Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4ed50bcf authored by Hamad Kadmany's avatar Hamad Kadmany
Browse files

msm_11ad: Set atomic attribute to SMMU driver



Set DOMAIN_ATTR_ATOMIC attribute to SMMU driver so that
it can handle DMA map/unmap operations from atomic context
which is required by 11ad driver

Change-Id: I7e538e6c41e5f40ff01dcfc9cbecf860ded22057
Signed-off-by: default avatarHamad Kadmany <hkadmany@codeaurora.org>
parent 2048a632
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -126,6 +126,7 @@ static int ops_resume(void *handle)
static int msm_11ad_smmu_init(struct msm11ad_ctx *ctx)
{
	int disable_htw = 1;
	int atomic_ctx = 1;
	int rc;

	if (!ctx->use_smmu)
@@ -151,6 +152,15 @@ static int msm_11ad_smmu_init(struct msm11ad_ctx *ctx)
			rc);
	}

	rc = iommu_domain_set_attr(ctx->mapping->domain,
				   DOMAIN_ATTR_ATOMIC,
				   &atomic_ctx);
	if (rc) {
		dev_err(ctx->dev, "Set atomic attribute to SMMU failed (%d)\n",
			rc);
		goto release_mapping;
	}

	rc = arm_iommu_attach_device(&ctx->pcidev->dev, ctx->mapping);
	if (rc) {
		dev_err(ctx->dev, "arm_iommu_attach_device failed (%d)\n", rc);