Bug 4841 - meta/conf/machine/include/tune-ppce300c3.inc: should be fpu-hard
Summary: meta/conf/machine/include/tune-ppce300c3.inc: should be fpu-hard
Status: CLOSED FIXED
Alias: None
Product: BSPs
Classification: Build System, Metadata & Runtime
Component: bsps-oe-core (show other bugs)
Version: 1.4.1
Hardware: x86 Multiple
: Medium+ normal
Target Milestone: 1.7 M4
Assignee: Bruce Ashfield
QA Contact: Mihail Stanciu
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2013-07-11 06:10 UTC by Roderick
Modified: 2014-10-17 11:39 UTC (History)
4 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
proposed patch (697 bytes, application/octet-stream)
2013-07-11 22:52 UTC, Roderick
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Roderick 2013-07-11 06:10:42 UTC
The e300c3 cores has an fpu and supports floating point instructions.  I've confirmed that -mhard-float compiles and boots core-image-minimal with no floating point related issue.  I've also compiled a program generating a floating point instruction and run it on the core I have in front of me (mpc8314e) 

The e300c2 does not have an fpu.  Maybe it is just a copy and past error.
Comment 1 Darren Hart 2013-07-11 13:59:20 UTC
When you say copy and paste error - where? Which document/file?

What are you looking for as a resolution here? For a new machine definition with a tune file using -mhard-float?

My ppc hardware is broken currently. Perhaps you would care to provide a patch and test results?
Comment 2 Roderick 2013-07-11 22:52:22 UTC
Created attachment 1324 [details]
proposed patch
Comment 3 Roderick 2013-07-11 23:04:56 UTC
(In reply to comment #1)

I apologize that my report wasn't detailed enough.

> When you say copy and paste error - where? Which document/file?

meta/conf/machine/include/tune-ppce300c2.inc .  As I explained, the e300c2 core does not have an fpu, the e300c3 does.

http://www.freescale.com/files/32bit/doc/ref_manual/e300coreRM.pdf

> What are you looking for as a resolution here? For a new machine definition
> with a tune file using -mhard-float?

To help ;-).  If it has an fpu, it would be nice to use it.

> My ppc hardware is broken currently. Perhaps you would care to provide a
> patch and test results?

I do not have MPC8315rdb, but a board based on the MPC8314e Soc, which also has an  e300c3 core.   Patch proposed.
Comment 4 Paul Eggleton 2014-09-25 15:15:52 UTC
This seems to have slipped through the cracks. Kevin is this something you could check into?
Comment 5 Kevin Hao 2014-09-28 05:47:48 UTC
This issue has been fixed in 1.7 by the following commit:
commit 3e528d3e4bc542ca2f654c54363c56af0fb9f61b
Author: Mats Kärrman <Mats.Karrman@tritech.se>
Date:   Tue Apr 1 16:20:34 2014 +0000

    Make ppce300c3 tune hard-float by default
    
    The tuning file for PowerPC e300c3 is soft-float. In OE-classic it was hard-
    float and it should be as the c3 has an fpu. I have modified the tuning file
    to include both a hard-float version (using the existing ppce300c3 name) and
    an optional soft-float version (called ppce300c3-nf).
    
    The following patch also passes a "--with-cpu=e300c3" argument to GLIBC.
    For this to have any effect the sqrt/sqrtf implementations added by the
    "glibc.fix_sqrt2.patch" are required and also an additional "Implies" file
    (added to the mentioned patch as a separate patch for eglibc_2.19).
    
    Tested with eglibc 2.19 on PowerPC MPC5125.
    
    (From OE-Core rev: 9d502ca8551fd461f869395b1b7e62d6dcf59a84)
    
    Signed-off-by: Mats Karrman <mats.karrman@tritech.se>
    Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Comment 7 Mihail Stanciu 2014-10-17 11:39:50 UTC
Verified on master: ccf5a4d2342c4fd40e4e0b332ea7e34e0bf175d4