[parisc-linux] depi?
Frank Rowand
frank_rowand@hp.com
Mon, 15 Nov 1999 15:14:38 -0800
Philipp Rumpf wrote:
>
> > > ; First order of business is to adjust some pointers
> > > depi 3,1,2,%arg0 ; phys->virt(free mem ptr)
> > > depi 3,1,2, %sp ; phys->virt SP
> > > depi 3,1,2, %dp ; p2v DP
> >
> > DEPI is "Deposite Immediate". depi 3,1,2, %arg0
> > drops the value 3 into the upper 2 bits of register arg0.
> >
> > IIRC, it's: DEPI immediate_value, right_most_bit#, #bits, target_register
> >
> > But...strange code. It's setting the upper 2 bits of R26, R30, and R27.
>
> The way physical memory is mapped to kernel virtual memory is (with exceptions):
>
> physical address P is mapped at virtual address P + PAGE_OFFSET.
>
> PAGE_OFFSET currently is 0xc000 0000 which was a bad value and will be changed
> to either 0x8000 0000 or 0xe000 0000 in the near future. This is one of the
> reasons you should use tophys and tovirt instead of doing the depi by hand.
< stuff deleted >
This is just one of several recent messages dealing with the issues caused by
locating the kernel at virtual address 0xc0000000 instead of 0x00000000. I
still don't understand why the kernel can't be at zero, even though several
people have tried to explain it to me. Can anyone provide a clear
explanation?
Thanks!
-Frank