Skip to content

Commit

Permalink
ARM: tegra: Special-case the 3D clamps on Tegra124
Browse files Browse the repository at this point in the history
A separate register is used to remove the clamps for the GPU on
Tegra124. In order to be able to use the same API, special-case
this particular partition.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
  • Loading branch information
Thierry Reding authored and Stephen Warren committed Dec 16, 2013
1 parent 9a71657 commit c537376
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions arch/arm/mach-tegra/powergate.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@

#define PWRGATE_STATUS 0x38

#define GPU_RG_CNTRL 0x2d4

static int tegra_num_powerdomains;
static int tegra_num_cpu_domains;
static const u8 *tegra_cpu_domains;
Expand Down Expand Up @@ -136,6 +138,17 @@ int tegra_powergate_remove_clamping(int id)
if (id < 0 || id >= tegra_num_powerdomains)
return -EINVAL;

/*
* The Tegra124 GPU has a separate register (with different semantics)
* to remove clamps.
*/
if (tegra_chip_id == TEGRA124) {
if (id == TEGRA_POWERGATE_3D) {
pmc_write(0, GPU_RG_CNTRL);
return 0;
}
}

/*
* Tegra 2 has a bug where PCIE and VDE clamping masks are
* swapped relatively to the partition ids
Expand Down

0 comments on commit c537376

Please sign in to comment.