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

Commit 8e73bf65 authored by Magnus Damm's avatar Magnus Damm Committed by Joerg Roedel
Browse files

iommu/ipmmu-vmsa: Break out domain allocation code



Break out the domain allocation code into a separate function.

This is preparation for future code sharing.

Signed-off-by: default avatarMagnus Damm <damm+renesas@opensource.se>
Reviewed-by: default avatarJoerg Roedel <jroedel@suse.de>
Reviewed-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
parent 383fef5f
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -509,13 +509,10 @@ static irqreturn_t ipmmu_irq(int irq, void *dev)
 * IOMMU Operations
 */

static struct iommu_domain *ipmmu_domain_alloc(unsigned type)
static struct iommu_domain *__ipmmu_domain_alloc(unsigned type)
{
	struct ipmmu_vmsa_domain *domain;

	if (type != IOMMU_DOMAIN_UNMANAGED)
		return NULL;

	domain = kzalloc(sizeof(*domain), GFP_KERNEL);
	if (!domain)
		return NULL;
@@ -525,6 +522,14 @@ static struct iommu_domain *ipmmu_domain_alloc(unsigned type)
	return &domain->io_domain;
}

static struct iommu_domain *ipmmu_domain_alloc(unsigned type)
{
	if (type != IOMMU_DOMAIN_UNMANAGED)
		return NULL;

	return __ipmmu_domain_alloc(type);
}

static void ipmmu_domain_free(struct iommu_domain *io_domain)
{
	struct ipmmu_vmsa_domain *domain = to_vmsa_domain(io_domain);