* Colin Cross <ccross@android.com>
* Erik Gilling <ccross@android.com>
*
- * Copyright (c) 2010-2013, NVIDIA CORPORATION. All rights reserved.
+ * Copyright (c) 2010-2014, NVIDIA CORPORATION. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
static struct tegra_iommu_mapping smmu_default_map[] = {
[SYSTEM_DEFAULT] = {TEGRA_IOMMU_BASE, TEGRA_IOMMU_SIZE},
[SYSTEM_PROTECTED] = {TEGRA_IOMMU_BASE, TEGRA_IOMMU_SIZE},
+ [PPCS1_ASID] = {TEGRA_IOMMU_BASE, TEGRA_IOMMU_SIZE},
[SYSTEM_DC] = {0x10000, (u32)~0},
[SYSTEM_DCB] = {0x10000, (u32)~0},
/* Non-zero base to account for gk20a driver's assumptions */
{
if (swgids & SWGID(PPCS))
return SYSTEM_PROTECTED;
+#if defined(CONFIG_ARCH_TEGRA_12x_SOC) || \
+ defined(CONFIG_ARCH_TEGRA_11x_SOC)
+ if (swgids & SWGID(PPCS1))
+ return PPCS1_ASID;
+#else
+ if (swgids & SWGID(PPCS1))
+ return SYSTEM_PROTECTED;
+#endif
if (swgids & SWGID(GPUB))
return SYSTEM_GK20A;
/*
* arch/arm/mach-tegra/include/mach/tegra_smmu.h
*
- * Copyright (c) 2011-2013, NVIDIA CORPORATION. All rights reserved.
+ * Copyright (c) 2011-2014, NVIDIA CORPORATION. All rights reserved.
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
/*
* ASID[0] for the system default
* ASID[1] for PPCS, which has SDMMC
+ * ASID[2] for PPCS1
* ASID[3][4] open for drivers, first come, first served.
*/
enum {
SYSTEM_DEFAULT,
SYSTEM_PROTECTED,
+ PPCS1_ASID,
SYSTEM_DC,
SYSTEM_DCB,
SYSTEM_GK20A,