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

Commit 50e0173f authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "iommu: Use proper bus for domain allocation in client drivers"

parents 4cdfdf34 45c412cc
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -493,7 +493,7 @@ static struct mdp4_platform_config *mdp4_get_config(struct platform_device *dev)
#ifdef CONFIG_OF
	/* TODO */
	config.max_clk = 266667000;
	config.iommu = iommu_domain_alloc(&platform_bus_type);
	config.iommu = iommu_domain_alloc(msm_iommu_get_bus(&dev->dev));
#else
	config.max_clk = 200000000;

+1 −1
Original line number Diff line number Diff line
@@ -481,7 +481,7 @@ static struct mdp5_platform_config *mdp5_get_config(struct platform_device *dev)
#ifdef CONFIG_OF
	/* TODO */
#endif
	config.iommu = iommu_domain_alloc(&platform_bus_type);
	config.iommu = iommu_domain_alloc(msm_iommu_get_bus(&dev->dev));
	/* TODO hard-coded in downstream mdss, but should it be? */
	config.max_clk = 200000000;
	/* TODO get from DT: */
+1 −1
Original line number Diff line number Diff line
@@ -1396,7 +1396,7 @@ static int cam_smmu_setup_cb(struct cam_context_bank_info *cb,
	}

	/* create a virtual mapping */
	cb->mapping = arm_iommu_create_mapping(&platform_bus_type,
	cb->mapping = arm_iommu_create_mapping(msm_iommu_get_bus(dev),
		cb->va_start, cb->va_len);
	if (IS_ERR(cb->mapping)) {
		pr_err("Error: create mapping Failed\n");
+2 −1
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@
#include <linux/err.h>
#include <linux/io.h>
#include <linux/iommu.h>
#include <linux/qcom_iommu.h>
#include <linux/iopoll.h>
#include <linux/kernel.h>
#include <linux/module.h>
@@ -153,7 +154,7 @@ static int venus_setup_cb(struct device *dev,
	size_t va_size = size;

	venus_data->mapping = arm_iommu_create_mapping(
		&platform_bus_type, va_start, va_size);
		msm_iommu_get_bus(dev), va_start, va_size);
	if (IS_ERR_OR_NULL(venus_data->mapping)) {
		dprintk(VIDC_ERR, "%s: failed to create mapping for %s\n",
		__func__, dev_name(dev));
+4 −3
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@
#include <linux/msm-bus-board.h>
#include <linux/netdevice.h>
#include <linux/delay.h>
#include <linux/qcom_iommu.h>
#include "ipa_i.h"
#include "ipa_rm_i.h"

@@ -3798,7 +3799,7 @@ static int ipa_smmu_wlan_cb_probe(struct device *dev)
	IPADBG("sub pdev=%p\n", dev);

	cb->dev = dev;
	cb->iommu = iommu_domain_alloc(&platform_bus_type);
	cb->iommu = iommu_domain_alloc(msm_iommu_get_bus(dev));
	if (!cb->iommu) {
		IPAERR("could not alloc iommu domain\n");
		/* assume this failure is because iommu driver is not ready */
@@ -3858,7 +3859,7 @@ static int ipa_smmu_uc_cb_probe(struct device *dev)
	}

	cb->dev = dev;
	cb->mapping = arm_iommu_create_mapping(&platform_bus_type,
	cb->mapping = arm_iommu_create_mapping(msm_iommu_get_bus(dev),
			IPA_SMMU_UC_VA_START, IPA_SMMU_UC_VA_SIZE);
	if (IS_ERR(cb->mapping)) {
		IPADBG("Fail to create mapping\n");
@@ -3905,7 +3906,7 @@ static int ipa_smmu_ap_cb_probe(struct device *dev)
	}

	cb->dev = dev;
	cb->mapping = arm_iommu_create_mapping(&platform_bus_type,
	cb->mapping = arm_iommu_create_mapping(msm_iommu_get_bus(dev),
			IPA_SMMU_AP_VA_START, IPA_SMMU_AP_VA_SIZE);
	if (IS_ERR(cb->mapping)) {
		IPADBG("Fail to create mapping\n");
Loading