diff options
author | Hiroshi DOYU <hdoyu@nvidia.com> | 2011-11-21 15:14:03 +0200 |
---|---|---|
committer | Simone Willett <swillett@nvidia.com> | 2012-02-09 12:54:28 -0800 |
commit | 18c630a3a03b83596c93612250edb4970f8a8b14 (patch) | |
tree | dc88f8fa617c309531a1c88e8dc3f90f98e62262 /arch/arm/mach-tegra/iovmm-gart.c | |
parent | bf18512d175eaacc45ee1006cc578834d11d7aca (diff) |
ARM: tegra: gart: Introduce GART_PAGE_SIZE macro
A bit nicer for readibility.
Signed-off-by: Hiroshi DOYU <hdoyu@nvidia.com>
Reviewed-on: http://git-master/r/66362
(cherry picked from commit b8f0aad888dd6b72462a207520d3585951c065f9)
Change-Id: I4e4fa5b32a06c8ffee6a9ad002ae0c93b1bf7e80
Signed-off-by: Pritesh Raithatha <praithatha@nvidia.com>
Reviewed-on: http://git-master/r/79989
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/iovmm-gart.c')
-rw-r--r-- | arch/arm/mach-tegra/iovmm-gart.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/arch/arm/mach-tegra/iovmm-gart.c b/arch/arm/mach-tegra/iovmm-gart.c index 3ed676b890a5..ad1ce3a7afc3 100644 --- a/arch/arm/mach-tegra/iovmm-gart.c +++ b/arch/arm/mach-tegra/iovmm-gart.c @@ -40,8 +40,9 @@ #define VMM_NAME "iovmm-gart" #define DRIVER_NAME "tegra_gart" -#define GART_PAGE_SHIFT (12) -#define GART_PAGE_MASK (~((1<<GART_PAGE_SHIFT)-1)) +#define GART_PAGE_SHIFT 12 +#define GART_PAGE_SIZE (1 << GART_PAGE_SHIFT) +#define GART_PAGE_MASK (~(GART_PAGE_SIZE - 1)) struct gart_device { void __iomem *regs; @@ -116,7 +117,7 @@ static int gart_suspend(struct tegra_iovmm_device *dev) for (i = 0; i < gart->page_count; i++) { writel(reg, gart->regs + GART_ENTRY_ADDR); gart->savedata[i] = readl(gart->regs + GART_ENTRY_DATA); - reg += 1 << GART_PAGE_SHIFT; + reg += GART_PAGE_SIZE; } spin_unlock(&gart->pte_lock); return 0; @@ -130,7 +131,7 @@ static void do_gart_setup(struct gart_device *gart, const u32 *data) reg = gart->iovmm_base; for (i = 0; i < gart->page_count; i++) { gart_set_pte(gart, reg, data ? data[i] : 0); - reg += 1 << GART_PAGE_SHIFT; + reg += GART_PAGE_SIZE; } writel(1, gart->regs + GART_CONFIG); FLUSH_GART_REGS(gart); @@ -285,7 +286,8 @@ static int gart_map(struct tegra_iovmm_domain *domain, gart_set_pte(gart, gart_page, GART_PTE(pfn)); FLUSH_GART_REGS(gart); - gart_page += 1 << GART_PAGE_SHIFT; + gart_page += GART_PAGE_SIZE; + spin_unlock(&gart->pte_lock); } @@ -295,7 +297,7 @@ fail: spin_lock(&gart->pte_lock); while (i--) { iovma->ops->release(iovma, i << PAGE_SHIFT); - gart_page -= 1 << GART_PAGE_SHIFT; + gart_page -= GART_PAGE_SIZE; gart_set_pte(gart, gart_page, 0); } FLUSH_GART_REGS(gart); @@ -321,7 +323,7 @@ static void gart_unmap(struct tegra_iovmm_domain *domain, iovma->ops->release(iovma, i << PAGE_SHIFT); gart_set_pte(gart, gart_page, 0); - gart_page += 1 << GART_PAGE_SHIFT; + gart_page += GART_PAGE_SIZE; } FLUSH_GART_REGS(gart); spin_unlock(&gart->pte_lock); |