Hi, > - unsigned long align = 1 << (TARGET_PAGE_BITS + BITS_PER_LEVEL); > + unsigned long align = 1UL << (TARGET_PAGE_BITS + BITS_PER_LEVEL);
> There were 2 issues here: without the UL suffix on align I was getting > incorrect first/last addresses since the high bits of align weren't > being cleared, Ah, thanks, I'll add that. > and then offset appeared to be shifted twice. Yep, noticed that too meanwhile, fixed in the branch pushed half an hour ago. I've dropped the other shift though ;) cheers, Gerd