[PATCH] ARM:VFPv3:enable {d16-d31} access

DebBarma, Tarun Kanti tarun.kanti at ti.com
Thu May 27 00:37:40 EDT 2010


Russell,

> -----Original Message-----
> From: Russell King - ARM Linux [mailto:linux at arm.linux.org.uk]
> Sent: Thursday, May 27, 2010 1:40 AM
> To: DebBarma, Tarun Kanti
> Cc: linux-omap at vger.kernel.org; linux-arm-kernel at lists.infradead.org
> Subject: Re: [PATCH] ARM:VFPv3:enable {d16-d31} access
> 
> On Wed, May 26, 2010 at 05:13:24PM +0530, DebBarma, Tarun Kanti wrote:
> > 1) With the existing implementation I am not able to correctly
> > write/read {d0-d15} but not the {d16-d31} set
> >
> > 2) With my changes I am able to write/read correctly.
> 
> The reason this happens is simple.  In vfp_get_double(), we have:
> 
> 1:      fmrrd   r0, r1, d\dr
> 1:      mrrc    p11, 3, r0, r1, c\dr    @ fmrrd r0, r1, d\dr
> 
> but in vfp_put_double(), we have:
> 
> 1:      fmdrr   d\dr, r0, r1
> 1:      mcrr    p11, 3, r1, r2, c\dr    @ fmdrr r1, r2, d\dr
> 
> Note the different registers.  Change "r1, r2" to "r0, r1" and it
> should work.

Yes, that's right. I figured that out yesterday and confirmed the test results. Thanks!

Can I go ahead with next version of the patch?

BR
Tarun



More information about the linux-arm-kernel mailing list