Date
1 - 12 of 12
ppc e500v2 support?
Frans Meulenbroeks <fransmeulenbroeks@...>
Hi,
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
"calamari"). but gcc-cross-initial fails in do_compile when it tries
to run configure for the libgcc subdir.
The problem is similar to http://patchwork.openembedded.org/patch/2026/
Basically gcc-cross-initial fails building libgcc, config.log has:
cc1: error: not configured for ABI: 'spe'
I feel this is related to the generation of the host triplet.
OE has conf/distro/include/sane-toolchain.inc which has a func
compute_os_portion_of_target_triplet
this one adds gnuspe to the host triplet (and maybe some other things).
poky does not give me that part of the triplet.
Anyone an idea what is wrong (I can provide machine description etc,
but it is also all in the OE git).
Best regards, Frans
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
"calamari"). but gcc-cross-initial fails in do_compile when it tries
to run configure for the libgcc subdir.
The problem is similar to http://patchwork.openembedded.org/patch/2026/
Basically gcc-cross-initial fails building libgcc, config.log has:
cc1: error: not configured for ABI: 'spe'
I feel this is related to the generation of the host triplet.
OE has conf/distro/include/sane-toolchain.inc which has a func
compute_os_portion_of_target_triplet
this one adds gnuspe to the host triplet (and maybe some other things).
poky does not give me that part of the triplet.
Anyone an idea what is wrong (I can provide machine description etc,
but it is also all in the OE git).
Best regards, Frans
Mark Hatle <mark.hatle@...>
On 11/3/10 10:34 AM, Frans Meulenbroeks wrote:
It would certainly be interesting to me to add/enable e500 support, as well as other spe optimizations that eglibc might provide.
--Mark
Hi,At this point we have no added any e500 support to Poky.
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
"calamari"). but gcc-cross-initial fails in do_compile when it tries
to run configure for the libgcc subdir.
The problem is similar to http://patchwork.openembedded.org/patch/2026/
It would certainly be interesting to me to add/enable e500 support, as well as other spe optimizations that eglibc might provide.
--Mark
Basically gcc-cross-initial fails building libgcc, config.log has:
cc1: error: not configured for ABI: 'spe'
I feel this is related to the generation of the host triplet.
OE has conf/distro/include/sane-toolchain.inc which has a func
compute_os_portion_of_target_triplet
this one adds gnuspe to the host triplet (and maybe some other things).
poky does not give me that part of the triplet.
Anyone an idea what is wrong (I can provide machine description etc,
but it is also all in the OE git).
Best regards, Frans
_______________________________________________
yocto mailing list
yocto@...
https://lists.pokylinux.org/listinfo/yocto
Bruce Ashfield <bruce.ashfield@...>
On 10-11-03 11:34 AM, Frans Meulenbroeks wrote:
the yocto kernel (with a small local step for you), in
fact, I've got a full BSP for this, and any of the extra
features in the kernel (SPE, IEEE float, lttng, etc) will
all work for any e500* board.
When doing the initial freescale board work, I ran into
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
Cheers,
Bruce
Hi,I can definitely guarantee that this would work in
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
the yocto kernel (with a small local step for you), in
fact, I've got a full BSP for this, and any of the extra
features in the kernel (SPE, IEEE float, lttng, etc) will
all work for any e500* board.
When doing the initial freescale board work, I ran into
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
Cheers,
Bruce
"calamari"). but gcc-cross-initial fails in do_compile when it tries
to run configure for the libgcc subdir.
The problem is similar to http://patchwork.openembedded.org/patch/2026/
Basically gcc-cross-initial fails building libgcc, config.log has:
cc1: error: not configured for ABI: 'spe'
I feel this is related to the generation of the host triplet.
OE has conf/distro/include/sane-toolchain.inc which has a func
compute_os_portion_of_target_triplet
this one adds gnuspe to the host triplet (and maybe some other things).
poky does not give me that part of the triplet.
Anyone an idea what is wrong (I can provide machine description etc,
but it is also all in the OE git).
Best regards, Frans
_______________________________________________
yocto mailing list
yocto@...
https://lists.pokylinux.org/listinfo/yocto
Frans Meulenbroeks <fransmeulenbroeks@...>
2010/11/3 Bruce Ashfield <bruce.ashfield@...>:
Frans
On 10-11-03 11:34 AM, Frans Meulenbroeks wrote:Sounds good. Is there anything you could share as a starting point?I can definitely guarantee that this would work in
Hi,
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
the yocto kernel (with a small local step for you), in
fact, I've got a full BSP for this, and any of the extra
features in the kernel (SPE, IEEE float, lttng, etc) will
all work for any e500* board.
Frans
When doing the initial freescale board work, I ran into
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
Cheers,
Bruce"calamari"). but gcc-cross-initial fails in do_compile when it tries
to run configure for the libgcc subdir.
The problem is similar to http://patchwork.openembedded.org/patch/2026/
Basically gcc-cross-initial fails building libgcc, config.log has:
cc1: error: not configured for ABI: 'spe'
I feel this is related to the generation of the host triplet.
OE has conf/distro/include/sane-toolchain.inc which has a func
compute_os_portion_of_target_triplet
this one adds gnuspe to the host triplet (and maybe some other things).
poky does not give me that part of the triplet.
Anyone an idea what is wrong (I can provide machine description etc,
but it is also all in the OE git).
Best regards, Frans
_______________________________________________
yocto mailing list
yocto@...
https://lists.pokylinux.org/listinfo/yocto
Bruce Ashfield <bruce.ashfield@...>
On 10-11-03 03:32 PM, Frans Meulenbroeks wrote:
currently has a couple of different steps that are local
to your build (but eventually merge to the kernel tree if
a board is supported) which allow you to work directly in
the kernel git repo for your board work.
In the near future I'll have some updates for BSP
bootstrapping, both code and documents. But I'm more
than happy to walk through this right now if there
is interest.
Cheers,
Bruce
2010/11/3 Bruce Ashfield<bruce.ashfield@...>:There is. And I'll clean it up a bit. The BSP bootstrapOn 10-11-03 11:34 AM, Frans Meulenbroeks wrote:Sounds good. Is there anything you could share as a starting point?I can definitely guarantee that this would work in
Hi,
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
the yocto kernel (with a small local step for you), in
fact, I've got a full BSP for this, and any of the extra
features in the kernel (SPE, IEEE float, lttng, etc) will
all work for any e500* board.
currently has a couple of different steps that are local
to your build (but eventually merge to the kernel tree if
a board is supported) which allow you to work directly in
the kernel git repo for your board work.
In the near future I'll have some updates for BSP
bootstrapping, both code and documents. But I'm more
than happy to walk through this right now if there
is interest.
Cheers,
Bruce
Frans
When doing the initial freescale board work, I ran into
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
Cheers,
Bruce"calamari"). but gcc-cross-initial fails in do_compile when it tries
to run configure for the libgcc subdir.
The problem is similar to http://patchwork.openembedded.org/patch/2026/
Basically gcc-cross-initial fails building libgcc, config.log has:
cc1: error: not configured for ABI: 'spe'
I feel this is related to the generation of the host triplet.
OE has conf/distro/include/sane-toolchain.inc which has a func
compute_os_portion_of_target_triplet
this one adds gnuspe to the host triplet (and maybe some other things).
poky does not give me that part of the triplet.
Anyone an idea what is wrong (I can provide machine description etc,
but it is also all in the OE git).
Best regards, Frans
_______________________________________________
yocto mailing list
yocto@...
https://lists.pokylinux.org/listinfo/yocto
Leon Woestenberg <leon.woestenberg@...>
Hello Bruce,
On Wed, Nov 3, 2010 at 4:49 PM, Bruce Ashfield
<bruce.ashfield@...> wrote:
I added e500v2 support to OpenEmbedded more than one year ago and have
not seen issues yet in userspace GCC.
Recently been playing with SPE which also ran fine:
http://www.sidebranch.nl/spe-apu
Regards,
--
Leon
On Wed, Nov 3, 2010 at 4:49 PM, Bruce Ashfield
<bruce.ashfield@...> wrote:
On 10-11-03 11:34 AM, Frans Meulenbroeks wrote:Was combo did you see problems with?When doing the initial freescale board work, I ran into
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
I added e500v2 support to OpenEmbedded more than one year ago and have
not seen issues yet in userspace GCC.
Recently been playing with SPE which also ran fine:
http://www.sidebranch.nl/spe-apu
Regards,
--
Leon
Bruce Ashfield <bruce.ashfield@...>
On 10-11-04 09:53 AM, Leon Woestenberg wrote:
and working (we've had SPE/e500/e500v2 BSPs working for
quite some time), the issue was specific to -Os and gcc 4.5
bootstrap building.
These have all largely been resolved now, and a minor kernel
patch has the powerpc kernel boot code building and working,
and cleanups can happen in our post yocto 0.9 efforts.
Cheers,
Bruce
Hello Bruce,It was particular to the mpc8315e config.
On Wed, Nov 3, 2010 at 4:49 PM, Bruce Ashfield
<bruce.ashfield@...> wrote:On 10-11-03 11:34 AM, Frans Meulenbroeks wrote:Was combo did you see problems with?When doing the initial freescale board work, I ran into
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
Runtime on the target is fine, since this is all well known
I added e500v2 support to OpenEmbedded more than one year ago and have
not seen issues yet in userspace GCC.
Recently been playing with SPE which also ran fine:
http://www.sidebranch.nl/spe-apu
and working (we've had SPE/e500/e500v2 BSPs working for
quite some time), the issue was specific to -Os and gcc 4.5
bootstrap building.
These have all largely been resolved now, and a minor kernel
patch has the powerpc kernel boot code building and working,
and cleanups can happen in our post yocto 0.9 efforts.
Cheers,
Bruce
Regards,
Mark Hatle <mark.hatle@...>
On 11/4/10 8:53 AM, Leon Woestenberg wrote:
My quick looking of my own e500v1 & e500v2 support includes both libc patches and compiler patches.
Just an FYI.. the compiler flags for e500v1:
-mcpu=8540 -mfloat-gprs=single -mspe=yes -mabi=spe
and for e500v2:
-mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe
Neither of those would be compatible with the existing "ppc" packaging arch. We will need to generate at least one new packaging arch type, likely 2 (one for each). Maybe called ppc_spe or something similar?
The key thing is that each of these cpu's has not only additional SPE instructions, but also additional registers, specific to those instructions, to pass values from function to function. It's not just using the PPC soft-float ABI..
--Mark
Hello Bruce,I'm not sure we have all of the pieces in place yet in the toolchain.
On Wed, Nov 3, 2010 at 4:49 PM, Bruce Ashfield
<bruce.ashfield@...> wrote:On 10-11-03 11:34 AM, Frans Meulenbroeks wrote:Was combo did you see problems with?When doing the initial freescale board work, I ran into
I'm trying to add my powerpc board to yocto (as a test). This board
mpc8536ds has an e500v2 core. It works under OE (MACHINE =
similar (same) problems with userspace (and gcc), and
ended up backing off to a more generic optimization level
to get things working. So there are a definitely few things
to do. I was experimenting with FPU settings, but haven't
gone back to look again.
I added e500v2 support to OpenEmbedded more than one year ago and have
not seen issues yet in userspace GCC.
Recently been playing with SPE which also ran fine:
http://www.sidebranch.nl/spe-apu
Regards,
My quick looking of my own e500v1 & e500v2 support includes both libc patches and compiler patches.
Just an FYI.. the compiler flags for e500v1:
-mcpu=8540 -mfloat-gprs=single -mspe=yes -mabi=spe
and for e500v2:
-mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe
Neither of those would be compatible with the existing "ppc" packaging arch. We will need to generate at least one new packaging arch type, likely 2 (one for each). Maybe called ppc_spe or something similar?
The key thing is that each of these cpu's has not only additional SPE instructions, but also additional registers, specific to those instructions, to pass values from function to function. It's not just using the PPC soft-float ABI..
--Mark
Leon Woestenberg <leon.woestenberg@...>
Hello Mark,
On Thu, Nov 4, 2010 at 6:20 PM, Mark Hatle <mark.hatle@...> wrote:
TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float
-mfloat-gprs=double"
BASE_PACKAGE_ARCH = "ppce500v2"
FEED_ARCH = "ppce500v2"
PACKAGE_EXTRA_ARCHS += "ppce500v2"
Does that make sense?
Regards,
--
Leon 'likewise' Woestenberg
On Thu, Nov 4, 2010 at 6:20 PM, Mark Hatle <mark.hatle@...> wrote:
On 11/4/10 8:53 AM, Leon Woestenberg wrote:In OpenEmbedded we use the core variant as the packaging name:
Just an FYI.. the compiler flags for e500v1:
-mcpu=8540 -mfloat-gprs=single -mspe=yes -mabi=spe
and for e500v2:
-mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe
Neither of those would be compatible with the existing "ppc" packaging arch.
We will need to generate at least one new packaging arch type, likely 2
(one for each). Maybe called ppc_spe or something similar?
TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float
-mfloat-gprs=double"
BASE_PACKAGE_ARCH = "ppce500v2"
FEED_ARCH = "ppce500v2"
PACKAGE_EXTRA_ARCHS += "ppce500v2"
Does that make sense?
Regards,
--
Leon 'likewise' Woestenberg
Mark Hatle <mark.hatle@...>
On 11/4/10 1:02 PM, Leon Woestenberg wrote:
The reason I bring this up is that over the years at Wind River, and my previous experience at MontaVista... and watching Emdebian and other projects.. _everyone_ names their package architectures differently.. because people only have a small view on the problem. We finally have enough history to have a chance at indicating what the actual ABIs are, and how the compatibility matrix may fill out. (also giving us a change to finally give these architectures reasonable naming schemes!)
--Mark
Hello Mark,I think this is an area we need to coordinate.. I'm not against calling is ppce500v2 for right now. However, I think this is a place we need to coordinate efforts. I'm going to attempt to pull together a list of Linux ABIs & potential optimizations in the Yocto wiki.
On Thu, Nov 4, 2010 at 6:20 PM, Mark Hatle<mark.hatle@...> wrote:On 11/4/10 8:53 AM, Leon Woestenberg wrote:In OpenEmbedded we use the core variant as the packaging name:
Just an FYI.. the compiler flags for e500v1:
-mcpu=8540 -mfloat-gprs=single -mspe=yes -mabi=spe
and for e500v2:
-mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe
Neither of those would be compatible with the existing "ppc" packaging arch.
We will need to generate at least one new packaging arch type, likely 2
(one for each). Maybe called ppc_spe or something similar?
TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float
-mfloat-gprs=double"
BASE_PACKAGE_ARCH = "ppce500v2"
FEED_ARCH = "ppce500v2"
PACKAGE_EXTRA_ARCHS += "ppce500v2"
Does that make sense?
Regards,
The reason I bring this up is that over the years at Wind River, and my previous experience at MontaVista... and watching Emdebian and other projects.. _everyone_ names their package architectures differently.. because people only have a small view on the problem. We finally have enough history to have a chance at indicating what the actual ABIs are, and how the compatibility matrix may fill out. (also giving us a change to finally give these architectures reasonable naming schemes!)
--Mark
Leon Woestenberg <leon.woestenberg@...>
Hello Mark,
On Thu, Nov 4, 2010 at 7:18 PM, Mark Hatle <mark.hatle@...> wrote:
topic every few years.
To bring in the OpenEmbedded arch namespace and our optimizations,
from the "master" branch at OpenEmbedded:
http://cgit.openembedded.org/cgit.cgi/openembedded/tree/conf/machine/include?h=master
Regards,
--
Leon
On Thu, Nov 4, 2010 at 7:18 PM, Mark Hatle <mark.hatle@...> wrote:
On 11/4/10 1:02 PM, Leon Woestenberg wrote:I don't see how we could be "final" on this, it seems a returningI think this is an area we need to coordinate.. I'm not against calling isand for e500v2:In OpenEmbedded we use the core variant as the packaging name:
-mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe
Neither of those would be compatible with the existing "ppc" packaging
arch.
We will need to generate at least one new packaging arch type, likely 2
(one for each). Maybe called ppc_spe or something similar?
TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float
-mfloat-gprs=double"
BASE_PACKAGE_ARCH = "ppce500v2"
FEED_ARCH = "ppce500v2"
PACKAGE_EXTRA_ARCHS += "ppce500v2"
Does that make sense?
ppce500v2 for right now. However, I think this is a place we need to
coordinate efforts. I'm going to attempt to pull together a list of Linux
ABIs & potential optimizations in the Yocto wiki.
The reason I bring this up is that over the years at Wind River, and my
previous experience at MontaVista... and watching Emdebian and other
projects.. _everyone_ names their package architectures differently..
because people only have a small view on the problem. We finally have
enough history to have a chance at indicating what the actual ABIs are, and
how the compatibility matrix may fill out. (also giving us a change to
finally give these architectures reasonable naming schemes!)
topic every few years.
To bring in the OpenEmbedded arch namespace and our optimizations,
from the "master" branch at OpenEmbedded:
http://cgit.openembedded.org/cgit.cgi/openembedded/tree/conf/machine/include?h=master
Regards,
--
Leon
Mark Hatle <mark.hatle@...>
On 11/4/10 1:43 PM, Leon Woestenberg wrote:
Then within the Yocto Project's build environment we can promote these namings as part of the implementation...
Open Embedded, and everyone else has legacy associated with their names, which we can try to either coordinate -- or at least help document...
--Mark
Hello Mark,This is a place where I think the Yocto Project can help. We're likely never going to have a final answer.. but what we'll be able to do is give these impromptu ABIs reasonable names so when people talk, everyone can be talking about the same thing..
On Thu, Nov 4, 2010 at 7:18 PM, Mark Hatle<mark.hatle@...> wrote:On 11/4/10 1:02 PM, Leon Woestenberg wrote:I don't see how we could be "final" on this, it seems a returningI think this is an area we need to coordinate.. I'm not against calling isand for e500v2:In OpenEmbedded we use the core variant as the packaging name:
-mcpu=8548 -mfloat-gprs=double -mspe=yes -mabi=spe
Neither of those would be compatible with the existing "ppc" packaging
arch.
We will need to generate at least one new packaging arch type, likely 2
(one for each). Maybe called ppc_spe or something similar?
TARGET_CC_ARCH = "-mcpu=8548 -mspe=yes -mabi=spe -mhard-float
-mfloat-gprs=double"
BASE_PACKAGE_ARCH = "ppce500v2"
FEED_ARCH = "ppce500v2"
PACKAGE_EXTRA_ARCHS += "ppce500v2"
Does that make sense?
ppce500v2 for right now. However, I think this is a place we need to
coordinate efforts. I'm going to attempt to pull together a list of Linux
ABIs& potential optimizations in the Yocto wiki.
The reason I bring this up is that over the years at Wind River, and my
previous experience at MontaVista... and watching Emdebian and other
projects.. _everyone_ names their package architectures differently..
because people only have a small view on the problem. We finally have
enough history to have a chance at indicating what the actual ABIs are, and
how the compatibility matrix may fill out. (also giving us a change to
finally give these architectures reasonable naming schemes!)
topic every few years.
To bring in the OpenEmbedded arch namespace and our optimizations,
from the "master" branch at OpenEmbedded:
http://cgit.openembedded.org/cgit.cgi/openembedded/tree/conf/machine/include?h=master
Then within the Yocto Project's build environment we can promote these namings as part of the implementation...
Open Embedded, and everyone else has legacy associated with their names, which we can try to either coordinate -- or at least help document...
--Mark
Regards,