 
	
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V2 1/2] xen: arm: introduce Cortex-A7 support
 At 06:43 -0600 on 03 Jul (1372833795), Bamvor Jian Zhang wrote:
> Hi, Ian
> 
>  >>>Wrote "Ian Campbell <Ian.Campbell@xxxxxxxxxx>"> On Tue,
>  Tue, 2013-07-02 at 21:11 +0800, Bamvor Jian Zhang wrote:
> > >  
> > > +        /* Set return address(PIC) */
> > > +        /* XXX: it only work while thumb2 is not enable in xen */
> > 
> > That's true of lots/all of our asm. Lets ignore that for now (no need to
> > comment).
> ok
> > Since we already have physoffset in r10 would it be clearer to make use
> > of that?
> sorry if i am wrong. do u mean change "adr lr, 1f" to something like 
> "add lr, pc, r10"?
No, I think this code is correct as it stands. 
But it is a bit strange that the CPUinfo struct contains _code_ to jump
to a routine, rather than just containing the address of the routine
itself.  If it just contained the address, the structures could be
defined in C (so we'd be certain that they matched the offset and size
constants we use here).  And then this asm would indeed use physoffset,
something like:
        ldr   r1, [r1, #PROCINFO_cpu_init]   /* r1 := vaddr(init func) */
        adr   lr, 1f                         /* Save return address */
        add   pc, r1, r10                    /* Call paddr(init func) */
1:
The way you've done it is certainly very clever, but we don't need to
optimize single instructions out of the boot time and I think this is
clearer.
Cheers,
Tim.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
 
 
 | 
|  | Lists.xenproject.org is hosted with RackSpace, monitoring our |