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

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

Merge "msm: kgsl: Fix skipping aperture programming"

parents 49596184 bc87c9ff
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1440,6 +1440,9 @@ static int adreno_probe(struct platform_device *pdev)
	if (adreno_support_64bit(adreno_dev))
		device->mmu.features |= KGSL_MMU_64BIT;

	if (adreno_is_a6xx(adreno_dev))
		device->mmu.features |= KGSL_MMU_SMMU_APERTURE;

	device->pwrctrl.bus_width = adreno_dev->gpucore->bus_width;

	status = kgsl_device_platform_probe(device);
+4 −4
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-only
/*
 * Copyright (c) 2011-2019, The Linux Foundation. All rights reserved.
 * Copyright (c) 2011-2020, The Linux Foundation. All rights reserved.
 */

#include <linux/compat.h>
@@ -1203,8 +1203,8 @@ static int _init_global_pt(struct kgsl_mmu *mmu, struct kgsl_pagetable *pt)
		goto done;
	}

	if (!MMU_FEATURE(mmu, KGSL_MMU_GLOBAL_PAGETABLE) &&
		scm_is_call_available(SCM_SVC_MP, CP_SMMU_APERTURE_ID)) {
	if (kgsl_mmu_is_perprocess(mmu) && MMU_FEATURE(mmu,
				KGSL_MMU_SMMU_APERTURE)) {
		struct scm_desc desc = {0};

		desc.args[0] = 0xFFFF0000 | ((CP_APERTURE_REG & 0xff) << 8) |
@@ -1222,7 +1222,7 @@ static int _init_global_pt(struct kgsl_mmu *mmu, struct kgsl_pagetable *pt)
			dev_err(device->dev,
				"SMMU aperture programming call failed with error %d\n",
				ret);
			return ret;
			goto done;
		}
	}

+3 −1
Original line number Diff line number Diff line
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (c) 2002,2007-2019, The Linux Foundation. All rights reserved.
 * Copyright (c) 2002,2007-2020, The Linux Foundation. All rights reserved.
 */
#ifndef __KGSL_MMU_H
#define __KGSL_MMU_H
@@ -135,6 +135,8 @@ struct kgsl_mmu_pt_ops {
#define KGSL_MMU_NEED_GUARD_PAGE BIT(9)
/* The device supports IO coherency */
#define KGSL_MMU_IO_COHERENT BIT(10)
/* The device supports aperture programming from secure world */
#define KGSL_MMU_SMMU_APERTURE BIT(11)

/**
 * struct kgsl_mmu - Master definition for KGSL MMU devices