equal
deleted
inserted
replaced
165 } |
165 } |
166 |
166 |
167 TUint32 DGobbler::AllocMultiPage(TUint32 aSize) |
167 TUint32 DGobbler::AllocMultiPage(TUint32 aSize) |
168 { |
168 { |
169 TUint32 sz = 1u << __e32_find_ms1_32(aSize); // round size down to power of 2 |
169 TUint32 sz = 1u << __e32_find_ms1_32(aSize); // round size down to power of 2 |
170 while (sz >= iPageSize) |
170 while (sz > iPageSize) |
171 { |
171 { |
172 TPhysAddr pa; |
172 TPhysAddr pa; |
173 TInt r = Epoc::AllocPhysicalRam(sz, pa); |
173 TInt r = Epoc::AllocPhysicalRam(sz, pa); |
174 if (r == KErrNone) |
174 if (r == KErrNone) |
175 return pa | __e32_find_ms1_32(sz); |
175 return pa | __e32_find_ms1_32(sz); |