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

Commit e693b7a0 authored by qctecmdr Service's avatar qctecmdr Service Committed by Gerrit - the friendly Code Review server
Browse files

Merge "drm/msm: call deprecated arm iommu APIs temporarily"

parents 4e67573b b3800138
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2016-2018, The Linux Foundation. All rights reserved.
 * Copyright (c) 2016-2019, The Linux Foundation. All rights reserved.
 */
&soc {
	mdss_mdp: qcom,mdss_mdp@ae00000 {
@@ -27,10 +27,13 @@
		clock-rate = <0 0 0 0 300000000 19200000 300000000>;
		clock-max-rate = <0 0 0 0 460000000 19200000 460000000>;

		sde-vdd-supply = <&mdss_core_gdsc>;

		/* interrupt config */
		interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
		interrupt-controller;
		iommus = <&apps_smmu 0x820 0x402>;
		qcom,iommu-dma = "disabled";

		/* hw blocks */
		qcom,sde-off = <0x1000>;
@@ -216,7 +219,7 @@

			qcom,platform-supply-entry@0 {
				reg = <0>;
				qcom,supply-name = "mmcx";
				qcom,supply-name = "sde-vdd";
				qcom,supply-min-voltage = <0>;
				qcom,supply-max-voltage = <0>;
				qcom,supply-enable-load = <0>;
@@ -227,6 +230,7 @@
		smmu_sde_sec: qcom,smmu_sde_sec_cb {
			compatible = "qcom,smmu_sde_sec";
			iommus = <&apps_smmu 0x821 0x400>;
			qcom,iommu-dma = "disabled";
		};

		/* data and reg bus scale settings */
+8 −8
Original line number Diff line number Diff line
/*
 * Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
 * Copyright (c) 2015-2019, The Linux Foundation. All rights reserved.
 * Copyright (C) 2013 Red Hat
 * Author: Rob Clark <robdclark@gmail.com>
 *
@@ -79,7 +79,7 @@ static int msm_smmu_attach(struct msm_mmu *mmu, const char * const *names,
	if (client->domain_attached)
		return 0;

	rc = arm_iommu_attach_device(client->dev,
	rc = __depr_arm_iommu_attach_device(client->dev,
			client->mmu_mapping);
	if (rc) {
		dev_err(client->dev, "iommu attach dev failed (%d)\n",
@@ -109,7 +109,7 @@ static void msm_smmu_detach(struct msm_mmu *mmu, const char * const *names,
		return;

	pm_runtime_get_sync(mmu->dev);
	arm_iommu_detach_device(client->dev);
	__depr_arm_iommu_detach_device(client->dev);
	pm_runtime_put_sync(mmu->dev);

	client->domain_attached = false;
@@ -467,8 +467,8 @@ static int _msm_smmu_create_mapping(struct msm_smmu_client *client,
	int rc;
	int mdphtw_llc_enable = 1;

	client->mmu_mapping = arm_iommu_create_mapping(&platform_bus_type,
			domain->va_start, domain->va_size);
	client->mmu_mapping = __depr_arm_iommu_create_mapping(
			&platform_bus_type, domain->va_start, domain->va_size);
	if (IS_ERR(client->mmu_mapping)) {
		dev_err(client->dev,
			"iommu create mapping failed for domain=%s\n",
@@ -513,7 +513,7 @@ static int _msm_smmu_create_mapping(struct msm_smmu_client *client,
	return 0;

error:
	arm_iommu_release_mapping(client->mmu_mapping);
	__depr_arm_iommu_release_mapping(client->mmu_mapping);
	return rc;
}

@@ -565,10 +565,10 @@ static int msm_smmu_remove(struct platform_device *pdev)

	client = platform_get_drvdata(pdev);
	if (client->domain_attached) {
		arm_iommu_detach_device(client->dev);
		__depr_arm_iommu_detach_device(client->dev);
		client->domain_attached = false;
	}
	arm_iommu_release_mapping(client->mmu_mapping);
	__depr_arm_iommu_release_mapping(client->mmu_mapping);

	return 0;
}