diff options
author | Hiroshi DOYU <Hiroshi.DOYU@nokia.com> | 2009-10-22 14:46:32 -0700 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2009-10-22 14:46:32 -0700 |
commit | dcc730dc9d7614fdaf6bce73d6e8ffe47c8820b1 (patch) | |
tree | 2849196332e34b47ef91a528e8769ee1e8ae264d /arch/arm | |
parent | 9da65a99e5e6a074c586474961dbf560e439df50 (diff) | |
download | linux-dcc730dc9d7614fdaf6bce73d6e8ffe47c8820b1.tar.bz2 |
omap: iommu: fix wrong condition check for SUPERSECTION
A bit (2 << 0) is set both on SECTION and SUPERSECTION. To identify
SUPERSECTION correctly, other bits should be compared too.
Reported-by: "Srinivas Pulukuru" <srinivas.pulukuru@ti.com>
Signed-off-by: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/plat-omap/iommu.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/plat-omap/iommu.c b/arch/arm/plat-omap/iommu.c index 4b6012707307..94584f167a82 100644 --- a/arch/arm/plat-omap/iommu.c +++ b/arch/arm/plat-omap/iommu.c @@ -664,7 +664,7 @@ static size_t iopgtable_clear_entry_core(struct iommu *obj, u32 da) nent = 1; /* for the next L1 entry */ } else { bytes = IOPGD_SIZE; - if (*iopgd & IOPGD_SUPER) { + if ((*iopgd & IOPGD_SUPER) == IOPGD_SUPER) { nent *= 16; /* rewind to the 1st entry */ iopgd = (u32 *)((u32)iopgd & IOSUPER_MASK); |