* introducing a new architecture/machine; policy ? (and a question)
@ 2010-06-20 9:58 Frans Meulenbroeks
2010-06-20 10:10 ` Frans Meulenbroeks
` (2 more replies)
0 siblings, 3 replies; 28+ messages in thread
From: Frans Meulenbroeks @ 2010-06-20 9:58 UTC (permalink / raw)
To: openembedded-devel
Hi,
I'm about to complete bringing a new architecture (nios2 with mmu) and
machine (cyclone III FPGA starter kit, and maybe also the Nios2
Embeddeded Evaluation Kit (aka neek)) to oe.
Is there a policy on on the process how to do this.
Changes are fairly localised:
- add suport to binutils for the new architecture (currently based
upon binutils 2.17.50.0.12)
- add support to gcc for the new architecture (based upon gcc 4.1.2)
- added a kernel recipe (and a linux-libc-headers recipe for 2.6.34)
- some hardware specific changes to glibc 2.5
And some smaller changes (e.g. adding the machines, adding the
architecture to insane.bbclass and siteinfo.class, and a small patch
or two on other recipes (mainly busybox)).
Can I just commit these? It does not impact other architectures/machines.
Patches are fairly big (because of the new files that contain the
machine specific stuff), so posting them is impractical
If someone wants to review I can also make a branch, but this is only
useful if someone is actually going to review this (volunteers
welcome).
Please advise.
Some concluding remarks:
Only a minor part of the work is mine. Most comes from the nios2 git
(git://sopc.et.ntust.edu.tw/git/toolchain-mmu.git). The stuff on that
git is based upon a windriver version of the csl toolchain.
My activity was mostly isolating the nios2 specific stuff and create
patches for mainstream package versions.
That is also the reason why it is based upon old versions of
gcc/binutils/glibc: I didn't want to deviate too much from what is in
the git.
BTW: as nios2 is a programmable core, there may be different variants.
So you need to program the board with the appropriate .sof file.
The one I used for neek is the one found here:
http://www.nioswiki.com/Try_out_without_compilation
Should I put this sof file somewhere in the oe tree? No idea if this
is legally ok, and no idea where to put it.
Or should I put a reference somewhere? (and if so, where?)
Suggestions welcome!
Have fun! Frans
^ permalink raw reply [flat|nested] 28+ messages in thread* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-20 9:58 introducing a new architecture/machine; policy ? (and a question) Frans Meulenbroeks @ 2010-06-20 10:10 ` Frans Meulenbroeks 2010-06-20 12:35 ` Koen Kooi 2010-06-20 22:59 ` Khem Raj 2 siblings, 0 replies; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-20 10:10 UTC (permalink / raw) To: openembedded-devel 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: > Hi, > > I'm about to complete bringing a new architecture (nios2 with mmu) and > machine (cyclone III FPGA starter kit, and maybe also the Nios2 > Embeddeded Evaluation Kit (aka neek)) to oe. > Is there a policy on on the process how to do this. > > Changes are fairly localised: > - add suport to binutils for the new architecture (currently based > upon binutils 2.17.50.0.12) > - add support to gcc for the new architecture (based upon gcc 4.1.2) > - added a kernel recipe (and a linux-libc-headers recipe for 2.6.34) > - some hardware specific changes to glibc 2.5 > > And some smaller changes (e.g. adding the machines, adding the > architecture to insane.bbclass and siteinfo.class, and a small patch > or two on other recipes (mainly busybox)). > > Can I just commit these? It does not impact other architectures/machines. > Patches are fairly big (because of the new files that contain the > machine specific stuff), so posting them is impractical > If someone wants to review I can also make a branch, but this is only > useful if someone is actually going to review this (volunteers > welcome). > > Please advise. > > Some concluding remarks: > Only a minor part of the work is mine. Most comes from the nios2 git > (git://sopc.et.ntust.edu.tw/git/toolchain-mmu.git). The stuff on that > git is based upon a windriver version of the csl toolchain. > My activity was mostly isolating the nios2 specific stuff and create > patches for mainstream package versions. > That is also the reason why it is based upon old versions of > gcc/binutils/glibc: I didn't want to deviate too much from what is in > the git. > > BTW: as nios2 is a programmable core, there may be different variants. > So you need to program the board with the appropriate .sof file. > The one I used for neek is the one found here: > http://www.nioswiki.com/Try_out_without_compilation > Should I put this sof file somewhere in the oe tree? No idea if this > is legally ok, and no idea where to put it. > Or should I put a reference somewhere? (and if so, where?) > > Suggestions welcome! > > Have fun! Frans > Oops. forgot one thing: gcc for nios2 only seems to build on a 32 bit architecture. While cross compling gcc on a 64 bit architecture gcc bails out with an internal compilation error: segmentation fault. (actually only tried on ubunti 10.04, 64 bit). No idea yet on how to fix this. Moving to a different version of gcc did not help. Open to suggestions on how to fix this. Frans ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-20 9:58 introducing a new architecture/machine; policy ? (and a question) Frans Meulenbroeks 2010-06-20 10:10 ` Frans Meulenbroeks @ 2010-06-20 12:35 ` Koen Kooi 2010-06-20 15:38 ` Frans Meulenbroeks 2010-06-20 22:59 ` Khem Raj 2 siblings, 1 reply; 28+ messages in thread From: Koen Kooi @ 2010-06-20 12:35 UTC (permalink / raw) To: openembedded-devel -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 20-06-10 11:58, Frans Meulenbroeks wrote: > Hi, > > I'm about to complete bringing a new architecture (nios2 with mmu) and > machine (cyclone III FPGA starter kit, and maybe also the Nios2 > Embeddeded Evaluation Kit (aka neek)) to oe. > Is there a policy on on the process how to do this. Have a look at the nios2 patches Leon sent last december, they were reviewed on this list, but not committed. regards, Koen -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (Darwin) iD8DBQFMHgsMMkyGM64RGpERAjbyAKCx3AW4OPKg0UEVSHgKIKX877U+uACeNm9I 9UQaYv3tscAimq4FpFqjJ0A= =Xh3N -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-20 12:35 ` Koen Kooi @ 2010-06-20 15:38 ` Frans Meulenbroeks 2010-06-23 8:53 ` Frans Meulenbroeks 0 siblings, 1 reply; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-20 15:38 UTC (permalink / raw) To: openembedded-devel 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 20-06-10 11:58, Frans Meulenbroeks wrote: >> Hi, >> >> I'm about to complete bringing a new architecture (nios2 with mmu) and >> machine (cyclone III FPGA starter kit, and maybe also the Nios2 >> Embeddeded Evaluation Kit (aka neek)) to oe. >> Is there a policy on on the process how to do this. > > Have a look at the nios2 patches Leon sent last december, they were > reviewed on this list, but not committed. Koen, thanks for reminding me the look at the review comments. I'm well aware of the work of Leon and Walter (and they are well aware of my work). Note that what Leon posted was for a non-mmu nios2 core, whereas the changes I have is for an mmu core. Triggered by Koens reminder I revisited the review comments. Actually none but one are applicable for me. The one that is applicable is the one about pinning versions in machine descriptions. I have also done that, as there are simply no other versions of binutils and gcc that can be used by this hardware. Also I don't feel empowered to make changes in distribution specific files. The only alternative way that I can think of is doing something like: DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. No idea if that overrules the distro settings or not, but I can give it a try later today. Have fun! Frans. ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-20 15:38 ` Frans Meulenbroeks @ 2010-06-23 8:53 ` Frans Meulenbroeks 2010-06-23 9:24 ` Koen Kooi 0 siblings, 1 reply; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-23 8:53 UTC (permalink / raw) To: openembedded-devel 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: > 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: >> -----BEGIN PGP SIGNED MESSAGE----- >> Hash: SHA1 >> >> On 20-06-10 11:58, Frans Meulenbroeks wrote: >>> Hi, >>> >>> I'm about to complete bringing a new architecture (nios2 with mmu) and >>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 >>> Embeddeded Evaluation Kit (aka neek)) to oe. >>> Is there a policy on on the process how to do this. >> >> Have a look at the nios2 patches Leon sent last december, they were >> reviewed on this list, but not committed. > > Koen, thanks for reminding me the look at the review comments. > > I'm well aware of the work of Leon and Walter (and they are well aware > of my work). > Note that what Leon posted was for a non-mmu nios2 core, whereas the > changes I have is for an mmu core. > > Triggered by Koens reminder I revisited the review comments. Actually > none but one are applicable for me. > The one that is applicable is the one about pinning versions in > machine descriptions. > I have also done that, as there are simply no other versions of > binutils and gcc that can be used by this hardware. > Also I don't feel empowered to make changes in distribution specific files. > > The only alternative way that I can think of is doing something like: > DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. > No idea if that overrules the distro settings or not, but I can give > it a try later today. Well, tried it and apparently a distro pin has priority over a DEFAULT_PREFERENCE_nios2 in the recipe. Guess I'll have to do the pinning the the machine description as described above. Frans. ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 8:53 ` Frans Meulenbroeks @ 2010-06-23 9:24 ` Koen Kooi 2010-06-23 9:36 ` Graeme Gregory 2010-06-23 10:09 ` Frans Meulenbroeks 0 siblings, 2 replies; 28+ messages in thread From: Koen Kooi @ 2010-06-23 9:24 UTC (permalink / raw) To: openembedded-devel -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 23-06-10 10:53, Frans Meulenbroeks wrote: > 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: >> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: >>> -----BEGIN PGP SIGNED MESSAGE----- >>> Hash: SHA1 >>> >>> On 20-06-10 11:58, Frans Meulenbroeks wrote: >>>> Hi, >>>> >>>> I'm about to complete bringing a new architecture (nios2 with mmu) and >>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 >>>> Embeddeded Evaluation Kit (aka neek)) to oe. >>>> Is there a policy on on the process how to do this. >>> >>> Have a look at the nios2 patches Leon sent last december, they were >>> reviewed on this list, but not committed. >> >> Koen, thanks for reminding me the look at the review comments. >> >> I'm well aware of the work of Leon and Walter (and they are well aware >> of my work). >> Note that what Leon posted was for a non-mmu nios2 core, whereas the >> changes I have is for an mmu core. >> >> Triggered by Koens reminder I revisited the review comments. Actually >> none but one are applicable for me. >> The one that is applicable is the one about pinning versions in >> machine descriptions. >> I have also done that, as there are simply no other versions of >> binutils and gcc that can be used by this hardware. >> Also I don't feel empowered to make changes in distribution specific files. >> >> The only alternative way that I can think of is doing something like: >> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. >> No idea if that overrules the distro settings or not, but I can give >> it a try later today. > > Well, tried it and apparently a distro pin has priority over a > DEFAULT_PREFERENCE_nios2 in the recipe. > Guess I'll have to do the pinning the the machine description as > described above. NO! Machines *never* pin versions, that's what distros and to a lesser extent recipes are for. regards, Koen -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (Darwin) iD8DBQFMIdLYMkyGM64RGpERAlPnAKCdByYCC57ozSFv9XUpFP+F7oujgwCbBVC3 yqZUWZMlMXNv5b9ZuQwu6sI= =A9rs -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 9:24 ` Koen Kooi @ 2010-06-23 9:36 ` Graeme Gregory 2010-06-23 9:54 ` Frans Meulenbroeks 2010-06-23 10:09 ` Frans Meulenbroeks 1 sibling, 1 reply; 28+ messages in thread From: Graeme Gregory @ 2010-06-23 9:36 UTC (permalink / raw) To: openembedded-devel > >> Also I don't feel empowered to make changes in distribution > >> specific files. Why not, chances are Angstrom maintainers would be quite happy for you to patch angstrom*.conf if you ask us. Graeme ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 9:36 ` Graeme Gregory @ 2010-06-23 9:54 ` Frans Meulenbroeks 2010-06-23 10:03 ` Graeme Gregory 2010-06-23 17:15 ` Khem Raj 0 siblings, 2 replies; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-23 9:54 UTC (permalink / raw) To: openembedded-devel 2010/6/23 Graeme Gregory <dp@xora.org.uk>: >> >> Also I don't feel empowered to make changes in distribution >> >> specific files. > > Why not, chances are Angstrom maintainers would be quite happy for you > to patch angstrom*.conf if you ask us. > > Graeme distribution != angstrom There are more distributions out there. The root cause of the problem is that a distro can specify a version of a tool (let's take gcc as an example) that is not supported by a specific hardware architecture. I'd say what we really need is a way to allow a processor architecture to specify which versions of binutls and gcc and friends are supported for that hw architecture. Mind you I talk about processor architectures, not boards. (actually I guess this extends to every package that contains assembly files or inline assembly) The problem became more visible with nios2 as this is an architecture that is not (yet) supported by gcc. Patches for now exist only for 4.1.2. Frans. ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 9:54 ` Frans Meulenbroeks @ 2010-06-23 10:03 ` Graeme Gregory 2010-06-23 10:07 ` Philip Balister 2010-06-23 17:15 ` Khem Raj 1 sibling, 1 reply; 28+ messages in thread From: Graeme Gregory @ 2010-06-23 10:03 UTC (permalink / raw) To: openembedded-devel On Wed, 23 Jun 2010 11:54:21 +0200 Frans Meulenbroeks <fransmeulenbroeks@gmail.com> wrote: > 2010/6/23 Graeme Gregory <dp@xora.org.uk>: > >> >> Also I don't feel empowered to make changes in distribution > >> >> specific files. > > > > Why not, chances are Angstrom maintainers would be quite happy for > > you to patch angstrom*.conf if you ask us. > > > > Graeme > > distribution != angstrom > There are more distributions out there. > I think the other distros are almost as friendly as us :-) Anyway the sane-* files are free for all with Acks. Graeme ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 10:03 ` Graeme Gregory @ 2010-06-23 10:07 ` Philip Balister 2010-06-23 10:32 ` Koen Kooi 0 siblings, 1 reply; 28+ messages in thread From: Philip Balister @ 2010-06-23 10:07 UTC (permalink / raw) To: openembedded-devel On 06/23/2010 12:03 PM, Graeme Gregory wrote: > On Wed, 23 Jun 2010 11:54:21 +0200 > Frans Meulenbroeks<fransmeulenbroeks@gmail.com> wrote: > >> 2010/6/23 Graeme Gregory<dp@xora.org.uk>: >>>>>> Also I don't feel empowered to make changes in distribution >>>>>> specific files. >>> >>> Why not, chances are Angstrom maintainers would be quite happy for >>> you to patch angstrom*.conf if you ask us. >>> >>> Graeme >> >> distribution != angstrom >> There are more distributions out there. Right now, toolchain selection is done in distro files not machine files. I agree this is not the clearest approach, however adding the toolchain selection to the machine files may have unexpected side effects. I would ask DISTRO maintainers to add the needed overrides, and explore alternative methods as a separate effort. Philip >> > I think the other distros are almost as friendly as us :-) > > Anyway the sane-* files are free for all with Acks. > > Graeme > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 10:07 ` Philip Balister @ 2010-06-23 10:32 ` Koen Kooi 2010-06-23 11:16 ` Frans Meulenbroeks 0 siblings, 1 reply; 28+ messages in thread From: Koen Kooi @ 2010-06-23 10:32 UTC (permalink / raw) To: openembedded-devel -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 23-06-10 12:07, Philip Balister wrote: > On 06/23/2010 12:03 PM, Graeme Gregory wrote: >> On Wed, 23 Jun 2010 11:54:21 +0200 >> Frans Meulenbroeks<fransmeulenbroeks@gmail.com> wrote: >> >>> 2010/6/23 Graeme Gregory<dp@xora.org.uk>: >>>>>>> Also I don't feel empowered to make changes in distribution >>>>>>> specific files. >>>> >>>> Why not, chances are Angstrom maintainers would be quite happy for >>>> you to patch angstrom*.conf if you ask us. >>>> >>>> Graeme >>> >>> distribution != angstrom >>> There are more distributions out there. > > Right now, toolchain selection is done in distro files not machine > files. I agree this is not the clearest approach, however adding the > toolchain selection to the machine files may have unexpected side effects. Think of multimachine builds. What happens when someone else adds *another* nios2 based machine with different toolchain versions, how do I know which toolchain avahi_1.0_nios2.ipk was compiled with? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (Darwin) iD8DBQFMIeLXMkyGM64RGpERAk0iAKCcXvyrUxGj2ZlsiV52sVhddsqr5wCcDgIS Noq5qjHf0Qm7qObCuCRL1bM= =VOH+ -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 10:32 ` Koen Kooi @ 2010-06-23 11:16 ` Frans Meulenbroeks 2010-06-23 17:19 ` Khem Raj 0 siblings, 1 reply; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-23 11:16 UTC (permalink / raw) To: openembedded-devel 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 23-06-10 12:07, Philip Balister wrote: >> On 06/23/2010 12:03 PM, Graeme Gregory wrote: >>> On Wed, 23 Jun 2010 11:54:21 +0200 >>> Frans Meulenbroeks<fransmeulenbroeks@gmail.com> wrote: >>> >>>> 2010/6/23 Graeme Gregory<dp@xora.org.uk>: >>>>>>>> Also I don't feel empowered to make changes in distribution >>>>>>>> specific files. >>>>> >>>>> Why not, chances are Angstrom maintainers would be quite happy for >>>>> you to patch angstrom*.conf if you ask us. >>>>> >>>>> Graeme >>>> >>>> distribution != angstrom >>>> There are more distributions out there. >> >> Right now, toolchain selection is done in distro files not machine >> files. I agree this is not the clearest approach, however adding the >> toolchain selection to the machine files may have unexpected side effects. > > Think of multimachine builds. What happens when someone else adds > *another* nios2 based machine with different toolchain versions, how do > I know which toolchain avahi_1.0_nios2.ipk was compiled with If toolchain is interesting to know in ipk's it should be part of the name. And note that I am really in favour of an architecture specific solution, not a machine one. That is why I used an include file to contain the pinnings. And actually the situation with nios2 is much much worse. As it is a soft-core people can come up with all kind of variants. (e.g. with/without fp). Actually nios2 adds pragma's to gcc to select which instructions are there and which not. Not sure whether the latter is a good idea as it is one of the things that fail moving to a newer gcc. The good news is that most of the variants used have different peripherals, but seem to stick to just a few cpu cores. (nios2 is used as a generic name for the SoC as well as the core, doesn't help to separate things either). Frans ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 11:16 ` Frans Meulenbroeks @ 2010-06-23 17:19 ` Khem Raj 2010-06-23 19:55 ` Frans Meulenbroeks 0 siblings, 1 reply; 28+ messages in thread From: Khem Raj @ 2010-06-23 17:19 UTC (permalink / raw) To: openembedded-devel On (23/06/10 13:16), Frans Meulenbroeks wrote: > 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > On 23-06-10 12:07, Philip Balister wrote: > >> On 06/23/2010 12:03 PM, Graeme Gregory wrote: > >>> On Wed, 23 Jun 2010 11:54:21 +0200 > >>> Frans Meulenbroeks<fransmeulenbroeks@gmail.com> wrote: > >>> > >>>> 2010/6/23 Graeme Gregory<dp@xora.org.uk>: > >>>>>>>> Also I don't feel empowered to make changes in distribution > >>>>>>>> specific files. > >>>>> > >>>>> Why not, chances are Angstrom maintainers would be quite happy for > >>>>> you to patch angstrom*.conf if you ask us. > >>>>> > >>>>> Graeme > >>>> > >>>> distribution != angstrom > >>>> There are more distributions out there. > >> > >> Right now, toolchain selection is done in distro files not machine > >> files. I agree this is not the clearest approach, however adding the > >> toolchain selection to the machine files may have unexpected side effects. > > > > Think of multimachine builds. What happens when someone else adds > > *another* nios2 based machine with different toolchain versions, how do > > I know which toolchain avahi_1.0_nios2.ipk was compiled with > > If toolchain is interesting to know in ipk's it should be part of the name. > And note that I am really in favour of an architecture specific > solution, not a machine one. > That is why I used an include file to contain the pinnings. > > And actually the situation with nios2 is much much worse. > As it is a soft-core people can come up with all kind of variants. > (e.g. with/without fp). not new. Other arches have similar variants already in OE > Actually nios2 adds pragma's to gcc to select > which instructions are there and which not. Well I would have preferred commandline options that way you could have many variants and we could have overrides like we have arm sub-arches > Not sure whether the latter is a good idea as it is one of the things > that fail moving to a newer gcc. > > The good news is that most of the variants used have different > peripherals, but seem to stick to just a few cpu cores. > (nios2 is used as a generic name for the SoC as well as the core, > doesn't help to separate things either). > > Frans > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 17:19 ` Khem Raj @ 2010-06-23 19:55 ` Frans Meulenbroeks 2010-06-23 22:20 ` Khem Raj 0 siblings, 1 reply; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-23 19:55 UTC (permalink / raw) To: openembedded-devel 2010/6/23 Khem Raj <raj.khem@gmail.com>: > On (23/06/10 13:16), Frans Meulenbroeks wrote: >> 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: >> > -----BEGIN PGP SIGNED MESSAGE----- >> > Hash: SHA1 >> > >> > On 23-06-10 12:07, Philip Balister wrote: >> >> On 06/23/2010 12:03 PM, Graeme Gregory wrote: >> >>> On Wed, 23 Jun 2010 11:54:21 +0200 >> >>> Frans Meulenbroeks<fransmeulenbroeks@gmail.com> wrote: >> >>> >> >>>> 2010/6/23 Graeme Gregory<dp@xora.org.uk>: >> >>>>>>>> Also I don't feel empowered to make changes in distribution >> >>>>>>>> specific files. >> >>>>> >> >>>>> Why not, chances are Angstrom maintainers would be quite happy for >> >>>>> you to patch angstrom*.conf if you ask us. >> >>>>> >> >>>>> Graeme >> >>>> >> >>>> distribution != angstrom >> >>>> There are more distributions out there. >> >> >> >> Right now, toolchain selection is done in distro files not machine >> >> files. I agree this is not the clearest approach, however adding the >> >> toolchain selection to the machine files may have unexpected side effects. >> > >> > Think of multimachine builds. What happens when someone else adds >> > *another* nios2 based machine with different toolchain versions, how do >> > I know which toolchain avahi_1.0_nios2.ipk was compiled with >> >> If toolchain is interesting to know in ipk's it should be part of the name. >> And note that I am really in favour of an architecture specific >> solution, not a machine one. >> That is why I used an include file to contain the pinnings. >> >> And actually the situation with nios2 is much much worse. >> As it is a soft-core people can come up with all kind of variants. >> (e.g. with/without fp). > > not new. Other arches have similar variants already in OE I know, but at least in those architectures if you have a board the situation is static. In fpga's capable of having a nios2 machine, it is still possible to load different configurations. As such it is different from everything we have (as far as I know we have no microblaze boards yet). > > >> Actually nios2 adds pragma's to gcc to select >> which instructions are there and which not. > > Well I would have preferred commandline options that way you could > have many variants and we could have overrides like we have arm sub-arches You would indeed get many variants and many options. Anyway, the code I started with had the pragma's.There were other higher priority things to dig into (like getting it to compile on 64 bit hw). Frans > > >> Not sure whether the latter is a good idea as it is one of the things >> that fail moving to a newer gcc. >> >> The good news is that most of the variants used have different >> peripherals, but seem to stick to just a few cpu cores. >> (nios2 is used as a generic name for the SoC as well as the core, >> doesn't help to separate things either). >> >> Frans >> >> _______________________________________________ >> Openembedded-devel mailing list >> Openembedded-devel@lists.openembedded.org >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 19:55 ` Frans Meulenbroeks @ 2010-06-23 22:20 ` Khem Raj 0 siblings, 0 replies; 28+ messages in thread From: Khem Raj @ 2010-06-23 22:20 UTC (permalink / raw) To: openembedded-devel On (23/06/10 21:55), Frans Meulenbroeks wrote: > 2010/6/23 Khem Raj <raj.khem@gmail.com>: > > On (23/06/10 13:16), Frans Meulenbroeks wrote: > >> 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > >> > -----BEGIN PGP SIGNED MESSAGE----- > >> > Hash: SHA1 > >> > > >> > On 23-06-10 12:07, Philip Balister wrote: > >> >> On 06/23/2010 12:03 PM, Graeme Gregory wrote: > >> >>> On Wed, 23 Jun 2010 11:54:21 +0200 > >> >>> Frans Meulenbroeks<fransmeulenbroeks@gmail.com> wrote: > >> >>> > >> >>>> 2010/6/23 Graeme Gregory<dp@xora.org.uk>: > >> >>>>>>>> Also I don't feel empowered to make changes in distribution > >> >>>>>>>> specific files. > >> >>>>> > >> >>>>> Why not, chances are Angstrom maintainers would be quite happy for > >> >>>>> you to patch angstrom*.conf if you ask us. > >> >>>>> > >> >>>>> Graeme > >> >>>> > >> >>>> distribution != angstrom > >> >>>> There are more distributions out there. > >> >> > >> >> Right now, toolchain selection is done in distro files not machine > >> >> files. I agree this is not the clearest approach, however adding the > >> >> toolchain selection to the machine files may have unexpected side effects. > >> > > >> > Think of multimachine builds. What happens when someone else adds > >> > *another* nios2 based machine with different toolchain versions, how do > >> > I know which toolchain avahi_1.0_nios2.ipk was compiled with > >> > >> If toolchain is interesting to know in ipk's it should be part of the name. > >> And note that I am really in favour of an architecture specific > >> solution, not a machine one. > >> That is why I used an include file to contain the pinnings. > >> > >> And actually the situation with nios2 is much much worse. > >> As it is a soft-core people can come up with all kind of variants. > >> (e.g. with/without fp). > > > > not new. Other arches have similar variants already in OE > > I know, but at least in those architectures if you have a board the > situation is static. > In fpga's capable of having a nios2 machine, it is still possible to > load different configurations. how many ? if they are managable you can still use the existing relation of machine to them but if you really want to make it configurable then you might think of writing a class which would define these configurations somehow may be you can denote various configs through some bitbake var then. ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 9:54 ` Frans Meulenbroeks 2010-06-23 10:03 ` Graeme Gregory @ 2010-06-23 17:15 ` Khem Raj 2010-06-23 17:18 ` Tom Rini 1 sibling, 1 reply; 28+ messages in thread From: Khem Raj @ 2010-06-23 17:15 UTC (permalink / raw) To: openembedded-devel On (23/06/10 11:54), Frans Meulenbroeks wrote: > 2010/6/23 Graeme Gregory <dp@xora.org.uk>: > >> >> Also I don't feel empowered to make changes in distribution > >> >> specific files. > > > > Why not, chances are Angstrom maintainers would be quite happy for you > > to patch angstrom*.conf if you ask us. > > > > Graeme > > distribution != angstrom > There are more distributions out there. > > The root cause of the problem is that a distro can specify a version > of a tool (let's take gcc as an example) that is not supported by a > specific hardware architecture. > I'd say what we really need is a way to allow a processor architecture > to specify which versions of binutls and gcc and friends are supported > for that hw architecture. > Mind you I talk about processor architectures, not boards. > (actually I guess this extends to every package that contains assembly > files or inline assembly) > > The problem became more visible with nios2 as this is an architecture > that is not (yet) supported by gcc. Patches for now exist only for > 4.1.2. > some architectures may not support particular version of say gcc but still if that architecture is supported by a given distro then it should define the required version of say gcc in distro.conf with override for instance check conf/distro/include/sane-toolchain.inc which is serving a few distributions overrides default compiler versions for AVR32 you need to do something same for nios2 Thanks -Khem > Frans. > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 17:15 ` Khem Raj @ 2010-06-23 17:18 ` Tom Rini 0 siblings, 0 replies; 28+ messages in thread From: Tom Rini @ 2010-06-23 17:18 UTC (permalink / raw) To: openembedded-devel Khem Raj wrote: > some architectures may not support particular version of say gcc but > still if that architecture is supported by a given distro then it should > define the required version of say gcc in distro.conf with override > > for instance check conf/distro/include/sane-toolchain.inc which is serving > a few distributions overrides default compiler versions for AVR32 > you need to do something same for nios2 In short, some of us would love it if we could all rely on either sane-toolchain.inc or at least everyone using the same variables for picking a toolchain so that the "We must use x/y/z tools" could move to tune-ARCH.inc. But there's probably some issue that doesn't come to mind with moving that override control to the machine level. -- Tom Rini Mentor Graphics Corporation ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 9:24 ` Koen Kooi 2010-06-23 9:36 ` Graeme Gregory @ 2010-06-23 10:09 ` Frans Meulenbroeks 2010-06-23 10:30 ` Koen Kooi 2010-06-23 17:23 ` Khem Raj 1 sibling, 2 replies; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-23 10:09 UTC (permalink / raw) To: openembedded-devel 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 23-06-10 10:53, Frans Meulenbroeks wrote: >> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: >>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: >>>> -----BEGIN PGP SIGNED MESSAGE----- >>>> Hash: SHA1 >>>> >>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: >>>>> Hi, >>>>> >>>>> I'm about to complete bringing a new architecture (nios2 with mmu) and >>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 >>>>> Embeddeded Evaluation Kit (aka neek)) to oe. >>>>> Is there a policy on on the process how to do this. >>>> >>>> Have a look at the nios2 patches Leon sent last december, they were >>>> reviewed on this list, but not committed. >>> >>> Koen, thanks for reminding me the look at the review comments. >>> >>> I'm well aware of the work of Leon and Walter (and they are well aware >>> of my work). >>> Note that what Leon posted was for a non-mmu nios2 core, whereas the >>> changes I have is for an mmu core. >>> >>> Triggered by Koens reminder I revisited the review comments. Actually >>> none but one are applicable for me. >>> The one that is applicable is the one about pinning versions in >>> machine descriptions. >>> I have also done that, as there are simply no other versions of >>> binutils and gcc that can be used by this hardware. >>> Also I don't feel empowered to make changes in distribution specific files. >>> >>> The only alternative way that I can think of is doing something like: >>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. >>> No idea if that overrules the distro settings or not, but I can give >>> it a try later today. >> >> Well, tried it and apparently a distro pin has priority over a >> DEFAULT_PREFERENCE_nios2 in the recipe. >> Guess I'll have to do the pinning the the machine description as >> described above. > > NO! Machines *never* pin versions, that's what distros and to a lesser > extent recipes are for. The issue is that I have no way to specify which versions of a toolchain that are supported (and to enforce that only a supported version works). If the DEFAULT_PREFERENCE in recipes had priority above whatever a distro pins using DEFAULT_PREFERENCE in the recipe could work. (e.g. if DEFAULT_PREFERENCE = "-1" does mean something like: "does not work" and that is respected by the distro). Actually I do not want the machine to pin the recipe, I want the architecture to pin the recipe (or at least tell which versions are sound, and avoid that non-functional versions are used). If I cannot pin in a machine file, the only alternative seems to be to make gcc-nios2-* recipes and use a virtual/gcc in the conf file to select gcc-nios2 as the preferred versions (just like a lot of machines do with virtual/kernel). Seems like a waste of effort to me, but oh well BTW where did the rule come from that machines never pin versions? When was that decided? And as an owner of the machine file, isn't its contents something which is at my discretion ??? And as a final remark: I did a quick grep in conf/machine: $ grep PREFERRED_VERSION * -l | wc 71 71 1065 $ grep PREFERRED_VERSION * | wc 104 314 5761 So there are 71 machine descriptions that pin at least one package. In total these 71 contain 104 pins. Most of these pin kernel and/or u-boot but there are also two other machines that pin gcc. Frans. ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 10:09 ` Frans Meulenbroeks @ 2010-06-23 10:30 ` Koen Kooi 2010-06-23 17:23 ` Khem Raj 1 sibling, 0 replies; 28+ messages in thread From: Koen Kooi @ 2010-06-23 10:30 UTC (permalink / raw) To: openembedded-devel -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 23-06-10 12:09, Frans Meulenbroeks wrote: > 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: >> -----BEGIN PGP SIGNED MESSAGE----- >> Hash: SHA1 >> >> On 23-06-10 10:53, Frans Meulenbroeks wrote: >>> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: >>>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: >>>>> -----BEGIN PGP SIGNED MESSAGE----- >>>>> Hash: SHA1 >>>>> >>>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: >>>>>> Hi, >>>>>> >>>>>> I'm about to complete bringing a new architecture (nios2 with mmu) and >>>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 >>>>>> Embeddeded Evaluation Kit (aka neek)) to oe. >>>>>> Is there a policy on on the process how to do this. >>>>> >>>>> Have a look at the nios2 patches Leon sent last december, they were >>>>> reviewed on this list, but not committed. >>>> >>>> Koen, thanks for reminding me the look at the review comments. >>>> >>>> I'm well aware of the work of Leon and Walter (and they are well aware >>>> of my work). >>>> Note that what Leon posted was for a non-mmu nios2 core, whereas the >>>> changes I have is for an mmu core. >>>> >>>> Triggered by Koens reminder I revisited the review comments. Actually >>>> none but one are applicable for me. >>>> The one that is applicable is the one about pinning versions in >>>> machine descriptions. >>>> I have also done that, as there are simply no other versions of >>>> binutils and gcc that can be used by this hardware. >>>> Also I don't feel empowered to make changes in distribution specific files. >>>> >>>> The only alternative way that I can think of is doing something like: >>>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. >>>> No idea if that overrules the distro settings or not, but I can give >>>> it a try later today. >>> >>> Well, tried it and apparently a distro pin has priority over a >>> DEFAULT_PREFERENCE_nios2 in the recipe. >>> Guess I'll have to do the pinning the the machine description as >>> described above. >> >> NO! Machines *never* pin versions, that's what distros and to a lesser >> extent recipes are for. > > The issue is that I have no way to specify which versions of a > toolchain that are supported (and to enforce that only a supported > version works). You have no way to pin versions based on arch? Angstrom does that just fine for blackfin, avr32 and armv4: # Blackfin has its on gcc ANGSTROM_GCC_VERSION_bfin = "4.1.2" #avr32 only has support for gcc 4.2.2 ANGSTROM_GCC_VERSION_avr32 ?= "4.2.2" #armv4 needs at least gcc 4.4.2 for eabi ANGSTROM_GCC_VERSION_armv4 ?= "4.4.2" #Everybody else can just use this: ANGSTROM_GCC_VERSION ?= "4.3.3" PREFERRED_VERSION_gcc ?= "${ANGSTROM_GCC_VERSION}" PREFERRED_VERSION_gcc-cross ?= "${ANGSTROM_GCC_VERSION}" PREFERRED_VERSION_gcc-cross-sdk ?= "${ANGSTROM_GCC_VERSION}" PREFERRED_VERSION_gcc-cross-initial ?= "${ANGSTROM_GCC_VERSION}" PREFERRED_VERSION_gcc-cross-intermediate ?= "${ANGSTROM_GCC_VERSION}" So what's stopping you from creating a patch that does +ANGSTROM_GCC_VERSION_nios2-mmu = "4.1.2" And similar for binutils? For other distros you can use sane-toolchain or something. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (Darwin) iD8DBQFMIeJUMkyGM64RGpERAs9AAJ4smKJ3ErSKzGa5ge5AJecDNjukqACaA/t/ ljn0G+lPaOSpjcI+l8B6LaA= =vlrX -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 10:09 ` Frans Meulenbroeks 2010-06-23 10:30 ` Koen Kooi @ 2010-06-23 17:23 ` Khem Raj 2010-06-23 20:04 ` Frans Meulenbroeks 1 sibling, 1 reply; 28+ messages in thread From: Khem Raj @ 2010-06-23 17:23 UTC (permalink / raw) To: openembedded-devel On (23/06/10 12:09), Frans Meulenbroeks wrote: > 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > On 23-06-10 10:53, Frans Meulenbroeks wrote: > >> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: > >>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: > >>>> -----BEGIN PGP SIGNED MESSAGE----- > >>>> Hash: SHA1 > >>>> > >>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: > >>>>> Hi, > >>>>> > >>>>> I'm about to complete bringing a new architecture (nios2 with mmu) and > >>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 > >>>>> Embeddeded Evaluation Kit (aka neek)) to oe. > >>>>> Is there a policy on on the process how to do this. > >>>> > >>>> Have a look at the nios2 patches Leon sent last december, they were > >>>> reviewed on this list, but not committed. > >>> > >>> Koen, thanks for reminding me the look at the review comments. > >>> > >>> I'm well aware of the work of Leon and Walter (and they are well aware > >>> of my work). > >>> Note that what Leon posted was for a non-mmu nios2 core, whereas the > >>> changes I have is for an mmu core. > >>> > >>> Triggered by Koens reminder I revisited the review comments. Actually > >>> none but one are applicable for me. > >>> The one that is applicable is the one about pinning versions in > >>> machine descriptions. > >>> I have also done that, as there are simply no other versions of > >>> binutils and gcc that can be used by this hardware. > >>> Also I don't feel empowered to make changes in distribution specific files. > >>> > >>> The only alternative way that I can think of is doing something like: > >>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. > >>> No idea if that overrules the distro settings or not, but I can give > >>> it a try later today. > >> > >> Well, tried it and apparently a distro pin has priority over a > >> DEFAULT_PREFERENCE_nios2 in the recipe. > >> Guess I'll have to do the pinning the the machine description as > >> described above. > > > > NO! Machines *never* pin versions, that's what distros and to a lesser > > extent recipes are for. > > The issue is that I have no way to specify which versions of a > toolchain that are supported (and to enforce that only a supported > version works). > If the DEFAULT_PREFERENCE in recipes had priority above whatever a > distro pins using DEFAULT_PREFERENCE in the recipe could work. > (e.g. if DEFAULT_PREFERENCE = "-1" does mean something like: "does > not work" and that is respected by the distro). > > Actually I do not want the machine to pin the recipe, I want the > architecture to pin the recipe (or at least tell which versions are > sound, and avoid that non-functional versions are used). you can use the TARGET_ARCH override to do that > > If I cannot pin in a machine file, the only alternative seems to be to > make gcc-nios2-* recipes and use a virtual/gcc in the conf file to > select gcc-nios2 as the preferred versions (just like a lot of > machines do with virtual/kernel). Seems like a waste of effort to me, > but oh well Already suggested a solution in prior reply. > > BTW where did the rule come from that machines never pin versions? > When was that decided? > And as an owner of the machine file, isn't its contents something > which is at my discretion ??? Well yes but within bounds of design and common structure. You dont get a license to kill with maintainership if you know what I mean :) > > And as a final remark: > I did a quick grep in conf/machine: > $ grep PREFERRED_VERSION * -l | wc > 71 71 1065 > $ grep PREFERRED_VERSION * | wc > 104 314 5761 > > So there are 71 machine descriptions that pin at least one package. In > total these 71 contain 104 pins. > Most of these pin kernel and/or u-boot but there are also two other > machines that pin gcc. > > Frans. > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 17:23 ` Khem Raj @ 2010-06-23 20:04 ` Frans Meulenbroeks 2010-06-23 21:55 ` Adrian Alonso ` (2 more replies) 0 siblings, 3 replies; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-23 20:04 UTC (permalink / raw) To: openembedded-devel 2010/6/23 Khem Raj <raj.khem@gmail.com>: > On (23/06/10 12:09), Frans Meulenbroeks wrote: >> 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: >> > -----BEGIN PGP SIGNED MESSAGE----- >> > Hash: SHA1 >> > >> > On 23-06-10 10:53, Frans Meulenbroeks wrote: >> >> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: >> >>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: >> >>>> -----BEGIN PGP SIGNED MESSAGE----- >> >>>> Hash: SHA1 >> >>>> >> >>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: >> >>>>> Hi, >> >>>>> >> >>>>> I'm about to complete bringing a new architecture (nios2 with mmu) and >> >>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 >> >>>>> Embeddeded Evaluation Kit (aka neek)) to oe. >> >>>>> Is there a policy on on the process how to do this. >> >>>> >> >>>> Have a look at the nios2 patches Leon sent last december, they were >> >>>> reviewed on this list, but not committed. >> >>> >> >>> Koen, thanks for reminding me the look at the review comments. >> >>> >> >>> I'm well aware of the work of Leon and Walter (and they are well aware >> >>> of my work). >> >>> Note that what Leon posted was for a non-mmu nios2 core, whereas the >> >>> changes I have is for an mmu core. >> >>> >> >>> Triggered by Koens reminder I revisited the review comments. Actually >> >>> none but one are applicable for me. >> >>> The one that is applicable is the one about pinning versions in >> >>> machine descriptions. >> >>> I have also done that, as there are simply no other versions of >> >>> binutils and gcc that can be used by this hardware. >> >>> Also I don't feel empowered to make changes in distribution specific files. >> >>> >> >>> The only alternative way that I can think of is doing something like: >> >>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. >> >>> No idea if that overrules the distro settings or not, but I can give >> >>> it a try later today. >> >> >> >> Well, tried it and apparently a distro pin has priority over a >> >> DEFAULT_PREFERENCE_nios2 in the recipe. >> >> Guess I'll have to do the pinning the the machine description as >> >> described above. >> > >> > NO! Machines *never* pin versions, that's what distros and to a lesser >> > extent recipes are for. >> >> The issue is that I have no way to specify which versions of a >> toolchain that are supported (and to enforce that only a supported >> version works). >> If the DEFAULT_PREFERENCE in recipes had priority above whatever a >> distro pins using DEFAULT_PREFERENCE in the recipe could work. >> (e.g. if DEFAULT_PREFERENCE = "-1" does mean something like: "does >> not work" and that is respected by the distro). >> >> Actually I do not want the machine to pin the recipe, I want the >> architecture to pin the recipe (or at least tell which versions are >> sound, and avoid that non-functional versions are used). > > you can use the TARGET_ARCH override to do that I'm not fully sure how one would actually do that.Please explain it to me on irc. >> >> If I cannot pin in a machine file, the only alternative seems to be to >> make gcc-nios2-* recipes and use a virtual/gcc in the conf file to >> select gcc-nios2 as the preferred versions (just like a lot of >> machines do with virtual/kernel). Seems like a waste of effort to me, >> but oh well > > Already suggested a solution in prior reply. I can pin in sane-toolchain, but only a few distro's seem to use that. For now I think it is probably best to have gcc-nios recipes and define virtual/gcc in the machine configurations. (haven't really seen objections to that, and for virtual/kernel this seems common practise) The best solution is indeed to have a sane-toolchain.inc that defines the available versions for an architecture and that is used by every distro, but somehow I doubt if that will happen. > >> >> BTW where did the rule come from that machines never pin versions? >> When was that decided? >> And as an owner of the machine file, isn't its contents something >> which is at my discretion ??? > > Well yes but within bounds of design and common structure. You dont get a license to > kill with maintainership if you know what I mean :) I know what you mean, but I don't like it if people sell me crap like "NO! Machines *never* pin versions" while within a few seconds I can provide evidence that there are not one or two, but 71 machines that pin something in their conf. Frans. > >> >> And as a final remark: >> I did a quick grep in conf/machine: >> $ grep PREFERRED_VERSION * -l | wc >> 71 71 1065 >> $ grep PREFERRED_VERSION * | wc >> 104 314 5761 >> >> So there are 71 machine descriptions that pin at least one package. In >> total these 71 contain 104 pins. >> Most of these pin kernel and/or u-boot but there are also two other >> machines that pin gcc. >> >> Frans. >> >> _______________________________________________ >> Openembedded-devel mailing list >> Openembedded-devel@lists.openembedded.org >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 20:04 ` Frans Meulenbroeks @ 2010-06-23 21:55 ` Adrian Alonso 2010-06-23 22:16 ` Khem Raj 2010-06-23 22:26 ` Khem Raj 2010-06-24 9:27 ` Koen Kooi 2 siblings, 1 reply; 28+ messages in thread From: Adrian Alonso @ 2010-06-23 21:55 UTC (permalink / raw) To: openembedded-devel Hi, I'm working on xilinx platforms support (virtex4, virtex5, generic-microblaze) [1] and trying to do it as generic possible, in my case the target boards depending on the family can target a hard core arch (powerpc) or a soft-cpu (microblaze), As far of my work progress I select the supported combinations of gcc/binutils/glibc in distro conf files (angstrom-2008). In config machine files I add u-boot and linux preferred version since this recipes inherits xilinx-bsp.bbclass to able to copy some headers to match the hardware/software model. Also in xilinx-bsp I handle the possible combinations of configuring u-boot for the final arch. But I also require a way to override the final target-tune instead of introducing a new variable TARGET_TUNE see [2]; What could be a good approach to handle the final arch configuration options? Regards [1] http://www.gitorious.org/oe-microblaze/<http://www.gitorious.org/oe-microblaze/oe-microblaze/blobs/xilinx-support/conf/machine/xilinx-virtex4.conf> [2] http://www.gitorious.org/oe-microblaze/oe-microblaze/blobs/xilinx-support/conf/machine/xilinx-virtex4.conf On Wed, Jun 23, 2010 at 3:04 PM, Frans Meulenbroeks < fransmeulenbroeks@gmail.com> wrote: > 2010/6/23 Khem Raj <raj.khem@gmail.com>: > > On (23/06/10 12:09), Frans Meulenbroeks wrote: > >> 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > >> > -----BEGIN PGP SIGNED MESSAGE----- > >> > Hash: SHA1 > >> > > >> > On 23-06-10 10:53, Frans Meulenbroeks wrote: > >> >> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: > >> >>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: > >> >>>> -----BEGIN PGP SIGNED MESSAGE----- > >> >>>> Hash: SHA1 > >> >>>> > >> >>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: > >> >>>>> Hi, > >> >>>>> > >> >>>>> I'm about to complete bringing a new architecture (nios2 with mmu) > and > >> >>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 > >> >>>>> Embeddeded Evaluation Kit (aka neek)) to oe. > >> >>>>> Is there a policy on on the process how to do this. > >> >>>> > >> >>>> Have a look at the nios2 patches Leon sent last december, they were > >> >>>> reviewed on this list, but not committed. > >> >>> > >> >>> Koen, thanks for reminding me the look at the review comments. > >> >>> > >> >>> I'm well aware of the work of Leon and Walter (and they are well > aware > >> >>> of my work). > >> >>> Note that what Leon posted was for a non-mmu nios2 core, whereas the > >> >>> changes I have is for an mmu core. > >> >>> > >> >>> Triggered by Koens reminder I revisited the review comments. > Actually > >> >>> none but one are applicable for me. > >> >>> The one that is applicable is the one about pinning versions in > >> >>> machine descriptions. > >> >>> I have also done that, as there are simply no other versions of > >> >>> binutils and gcc that can be used by this hardware. > >> >>> Also I don't feel empowered to make changes in distribution specific > files. > >> >>> > >> >>> The only alternative way that I can think of is doing something > like: > >> >>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. > >> >>> No idea if that overrules the distro settings or not, but I can give > >> >>> it a try later today. > >> >> > >> >> Well, tried it and apparently a distro pin has priority over a > >> >> DEFAULT_PREFERENCE_nios2 in the recipe. > >> >> Guess I'll have to do the pinning the the machine description as > >> >> described above. > >> > > >> > NO! Machines *never* pin versions, that's what distros and to a lesser > >> > extent recipes are for. > >> > >> The issue is that I have no way to specify which versions of a > >> toolchain that are supported (and to enforce that only a supported > >> version works). > >> If the DEFAULT_PREFERENCE in recipes had priority above whatever a > >> distro pins using DEFAULT_PREFERENCE in the recipe could work. > >> (e.g. if DEFAULT_PREFERENCE = "-1" does mean something like: "does > >> not work" and that is respected by the distro). > >> > >> Actually I do not want the machine to pin the recipe, I want the > >> architecture to pin the recipe (or at least tell which versions are > >> sound, and avoid that non-functional versions are used). > > > > you can use the TARGET_ARCH override to do that > > I'm not fully sure how one would actually do that.Please explain it to > me on irc. > > >> > >> If I cannot pin in a machine file, the only alternative seems to be to > >> make gcc-nios2-* recipes and use a virtual/gcc in the conf file to > >> select gcc-nios2 as the preferred versions (just like a lot of > >> machines do with virtual/kernel). Seems like a waste of effort to me, > >> but oh well > > > > Already suggested a solution in prior reply. > > I can pin in sane-toolchain, but only a few distro's seem to use that. > For now I think it is probably best to have gcc-nios recipes and > define virtual/gcc in the machine configurations. (haven't really seen > objections to that, and for virtual/kernel this seems common practise) > The best solution is indeed to have a sane-toolchain.inc that defines > the available versions for an architecture and that is used by every > distro, but somehow I doubt if that will happen. > > > >> > >> BTW where did the rule come from that machines never pin versions? > >> When was that decided? > >> And as an owner of the machine file, isn't its contents something > >> which is at my discretion ??? > > > > Well yes but within bounds of design and common structure. You dont get a > license to > > kill with maintainership if you know what I mean :) > > I know what you mean, but I don't like it if people sell me crap like > "NO! Machines *never* pin versions" while within a few seconds I can > provide evidence that there are not one or two, but 71 machines that > pin something in their conf. > > Frans. > > > > >> > >> And as a final remark: > >> I did a quick grep in conf/machine: > >> $ grep PREFERRED_VERSION * -l | wc > >> 71 71 1065 > >> $ grep PREFERRED_VERSION * | wc > >> 104 314 5761 > >> > >> So there are 71 machine descriptions that pin at least one package. In > >> total these 71 contain 104 pins. > >> Most of these pin kernel and/or u-boot but there are also two other > >> machines that pin gcc. > >> > >> Frans. > >> > >> _______________________________________________ > >> Openembedded-devel mailing list > >> Openembedded-devel@lists.openembedded.org > >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > > > _______________________________________________ > > Openembedded-devel mailing list > > Openembedded-devel@lists.openembedded.org > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > -- Saludos Adrian Alonso http://aalonso.wordpress.com ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 21:55 ` Adrian Alonso @ 2010-06-23 22:16 ` Khem Raj 0 siblings, 0 replies; 28+ messages in thread From: Khem Raj @ 2010-06-23 22:16 UTC (permalink / raw) To: openembedded-devel On (23/06/10 16:55), Adrian Alonso wrote: > Hi, > > I'm working on xilinx platforms support (virtex4, virtex5, > generic-microblaze) [1] > and trying to do it as generic possible, in my case the target boards > depending on the > family can target a hard core arch (powerpc) or a soft-cpu (microblaze), > As far of my work progress I select the supported combinations of > gcc/binutils/glibc in > distro conf files (angstrom-2008). fine. > In config machine files I add u-boot and linux preferred version since this > recipes inherits > xilinx-bsp.bbclass to able to copy some headers to match the > hardware/software model. uboot and kernel are machine dependent. It would still be nice if you pinned the recipes instead. > Also in xilinx-bsp I handle the possible combinations of configuring u-boot > for the final arch. > > But I also require a way to override the final target-tune instead of > introducing a new variable > TARGET_TUNE see [2]; TARGET_TUNE seems to be a convenience var only so its ok even if you did not use it. > > What could be a good approach to handle the final arch configuration > options? > > Regards > > [1] http://www.gitorious.org/oe-microblaze/<http://www.gitorious.org/oe-microblaze/oe-microblaze/blobs/xilinx-support/conf/machine/xilinx-virtex4.conf> > [2] > http://www.gitorious.org/oe-microblaze/oe-microblaze/blobs/xilinx-support/conf/machine/xilinx-virtex4.conf > > On Wed, Jun 23, 2010 at 3:04 PM, Frans Meulenbroeks < > fransmeulenbroeks@gmail.com> wrote: > > > 2010/6/23 Khem Raj <raj.khem@gmail.com>: > > > On (23/06/10 12:09), Frans Meulenbroeks wrote: > > >> 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > > >> > -----BEGIN PGP SIGNED MESSAGE----- > > >> > Hash: SHA1 > > >> > > > >> > On 23-06-10 10:53, Frans Meulenbroeks wrote: > > >> >> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: > > >> >>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: > > >> >>>> -----BEGIN PGP SIGNED MESSAGE----- > > >> >>>> Hash: SHA1 > > >> >>>> > > >> >>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: > > >> >>>>> Hi, > > >> >>>>> > > >> >>>>> I'm about to complete bringing a new architecture (nios2 with mmu) > > and > > >> >>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 > > >> >>>>> Embeddeded Evaluation Kit (aka neek)) to oe. > > >> >>>>> Is there a policy on on the process how to do this. > > >> >>>> > > >> >>>> Have a look at the nios2 patches Leon sent last december, they were > > >> >>>> reviewed on this list, but not committed. > > >> >>> > > >> >>> Koen, thanks for reminding me the look at the review comments. > > >> >>> > > >> >>> I'm well aware of the work of Leon and Walter (and they are well > > aware > > >> >>> of my work). > > >> >>> Note that what Leon posted was for a non-mmu nios2 core, whereas the > > >> >>> changes I have is for an mmu core. > > >> >>> > > >> >>> Triggered by Koens reminder I revisited the review comments. > > Actually > > >> >>> none but one are applicable for me. > > >> >>> The one that is applicable is the one about pinning versions in > > >> >>> machine descriptions. > > >> >>> I have also done that, as there are simply no other versions of > > >> >>> binutils and gcc that can be used by this hardware. > > >> >>> Also I don't feel empowered to make changes in distribution specific > > files. > > >> >>> > > >> >>> The only alternative way that I can think of is doing something > > like: > > >> >>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. > > >> >>> No idea if that overrules the distro settings or not, but I can give > > >> >>> it a try later today. > > >> >> > > >> >> Well, tried it and apparently a distro pin has priority over a > > >> >> DEFAULT_PREFERENCE_nios2 in the recipe. > > >> >> Guess I'll have to do the pinning the the machine description as > > >> >> described above. > > >> > > > >> > NO! Machines *never* pin versions, that's what distros and to a lesser > > >> > extent recipes are for. > > >> > > >> The issue is that I have no way to specify which versions of a > > >> toolchain that are supported (and to enforce that only a supported > > >> version works). > > >> If the DEFAULT_PREFERENCE in recipes had priority above whatever a > > >> distro pins using DEFAULT_PREFERENCE in the recipe could work. > > >> (e.g. if DEFAULT_PREFERENCE = "-1" does mean something like: "does > > >> not work" and that is respected by the distro). > > >> > > >> Actually I do not want the machine to pin the recipe, I want the > > >> architecture to pin the recipe (or at least tell which versions are > > >> sound, and avoid that non-functional versions are used). > > > > > > you can use the TARGET_ARCH override to do that > > > > I'm not fully sure how one would actually do that.Please explain it to > > me on irc. > > > > >> > > >> If I cannot pin in a machine file, the only alternative seems to be to > > >> make gcc-nios2-* recipes and use a virtual/gcc in the conf file to > > >> select gcc-nios2 as the preferred versions (just like a lot of > > >> machines do with virtual/kernel). Seems like a waste of effort to me, > > >> but oh well > > > > > > Already suggested a solution in prior reply. > > > > I can pin in sane-toolchain, but only a few distro's seem to use that. > > For now I think it is probably best to have gcc-nios recipes and > > define virtual/gcc in the machine configurations. (haven't really seen > > objections to that, and for virtual/kernel this seems common practise) > > The best solution is indeed to have a sane-toolchain.inc that defines > > the available versions for an architecture and that is used by every > > distro, but somehow I doubt if that will happen. > > > > > >> > > >> BTW where did the rule come from that machines never pin versions? > > >> When was that decided? > > >> And as an owner of the machine file, isn't its contents something > > >> which is at my discretion ??? > > > > > > Well yes but within bounds of design and common structure. You dont get a > > license to > > > kill with maintainership if you know what I mean :) > > > > I know what you mean, but I don't like it if people sell me crap like > > "NO! Machines *never* pin versions" while within a few seconds I can > > provide evidence that there are not one or two, but 71 machines that > > pin something in their conf. > > > > Frans. > > > > > > > >> > > >> And as a final remark: > > >> I did a quick grep in conf/machine: > > >> $ grep PREFERRED_VERSION * -l | wc > > >> 71 71 1065 > > >> $ grep PREFERRED_VERSION * | wc > > >> 104 314 5761 > > >> > > >> So there are 71 machine descriptions that pin at least one package. In > > >> total these 71 contain 104 pins. > > >> Most of these pin kernel and/or u-boot but there are also two other > > >> machines that pin gcc. > > >> > > >> Frans. > > >> > > >> _______________________________________________ > > >> Openembedded-devel mailing list > > >> Openembedded-devel@lists.openembedded.org > > >> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > > > > > _______________________________________________ > > > Openembedded-devel mailing list > > > Openembedded-devel@lists.openembedded.org > > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > > > > > > _______________________________________________ > > Openembedded-devel mailing list > > Openembedded-devel@lists.openembedded.org > > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > > > > > > -- > Saludos > Adrian Alonso > http://aalonso.wordpress.com > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 20:04 ` Frans Meulenbroeks 2010-06-23 21:55 ` Adrian Alonso @ 2010-06-23 22:26 ` Khem Raj 2010-06-24 9:27 ` Koen Kooi 2 siblings, 0 replies; 28+ messages in thread From: Khem Raj @ 2010-06-23 22:26 UTC (permalink / raw) To: openembedded-devel On (23/06/10 22:04), Frans Meulenbroeks wrote: > 2010/6/23 Khem Raj <raj.khem@gmail.com>: > > On (23/06/10 12:09), Frans Meulenbroeks wrote: > >> 2010/6/23 Koen Kooi <k.kooi@student.utwente.nl>: > >> > -----BEGIN PGP SIGNED MESSAGE----- > >> > Hash: SHA1 > >> > > >> > On 23-06-10 10:53, Frans Meulenbroeks wrote: > >> >> 2010/6/20 Frans Meulenbroeks <fransmeulenbroeks@gmail.com>: > >> >>> 2010/6/20 Koen Kooi <k.kooi@student.utwente.nl>: > >> >>>> -----BEGIN PGP SIGNED MESSAGE----- > >> >>>> Hash: SHA1 > >> >>>> > >> >>>> On 20-06-10 11:58, Frans Meulenbroeks wrote: > >> >>>>> Hi, > >> >>>>> > >> >>>>> I'm about to complete bringing a new architecture (nios2 with mmu) and > >> >>>>> machine (cyclone III FPGA starter kit, and maybe also the Nios2 > >> >>>>> Embeddeded Evaluation Kit (aka neek)) to oe. > >> >>>>> Is there a policy on on the process how to do this. > >> >>>> > >> >>>> Have a look at the nios2 patches Leon sent last december, they were > >> >>>> reviewed on this list, but not committed. > >> >>> > >> >>> Koen, thanks for reminding me the look at the review comments. > >> >>> > >> >>> I'm well aware of the work of Leon and Walter (and they are well aware > >> >>> of my work). > >> >>> Note that what Leon posted was for a non-mmu nios2 core, whereas the > >> >>> changes I have is for an mmu core. > >> >>> > >> >>> Triggered by Koens reminder I revisited the review comments. Actually > >> >>> none but one are applicable for me. > >> >>> The one that is applicable is the one about pinning versions in > >> >>> machine descriptions. > >> >>> I have also done that, as there are simply no other versions of > >> >>> binutils and gcc that can be used by this hardware. > >> >>> Also I don't feel empowered to make changes in distribution specific files. > >> >>> > >> >>> The only alternative way that I can think of is doing something like: > >> >>> DEFAULT_PREFERENCE_nios2 = "1" in the recipes I need. > >> >>> No idea if that overrules the distro settings or not, but I can give > >> >>> it a try later today. > >> >> > >> >> Well, tried it and apparently a distro pin has priority over a > >> >> DEFAULT_PREFERENCE_nios2 in the recipe. > >> >> Guess I'll have to do the pinning the the machine description as > >> >> described above. > >> > > >> > NO! Machines *never* pin versions, that's what distros and to a lesser > >> > extent recipes are for. > >> > >> The issue is that I have no way to specify which versions of a > >> toolchain that are supported (and to enforce that only a supported > >> version works). > >> If the DEFAULT_PREFERENCE in recipes had priority above whatever a > >> distro pins using DEFAULT_PREFERENCE in the recipe could work. > >> (e.g. if DEFAULT_PREFERENCE = "-1" does mean something like: "does > >> not work" and that is respected by the distro). > >> > >> Actually I do not want the machine to pin the recipe, I want the > >> architecture to pin the recipe (or at least tell which versions are > >> sound, and avoid that non-functional versions are used). > > > > you can use the TARGET_ARCH override to do that > > I'm not fully sure how one would actually do that.Please explain it to > me on irc. > as I said see AVR32 in sane-toolchain.inc > >> > >> If I cannot pin in a machine file, the only alternative seems to be to > >> make gcc-nios2-* recipes and use a virtual/gcc in the conf file to > >> select gcc-nios2 as the preferred versions (just like a lot of > >> machines do with virtual/kernel). Seems like a waste of effort to me, > >> but oh well > > > > Already suggested a solution in prior reply. > > I can pin in sane-toolchain, but only a few distro's seem to use that. distro's are fairly independent so if you intend to support so many of them and then you have change distro files accordingly. > For now I think it is probably best to have gcc-nios recipes and > define virtual/gcc in the machine configurations. (haven't really seen > objections to that, and for virtual/kernel this seems common practise) why do you want to compicate already complicated gcc recipes and mechanisms. Goal should be to consolidate not to diverge. > The best solution is indeed to have a sane-toolchain.inc that defines > the available versions for an architecture and that is used by every > distro, but somehow I doubt if that will happen. well even this does come with some pricetag. There is a downside to it that changing versions in sane-toolchain.inc would require qualification on all distro's that use it. so more distro's harder it will be. But it could be an achievable goal but thats distro maintainer's choice and I am fine with whatever they choose. ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-23 20:04 ` Frans Meulenbroeks 2010-06-23 21:55 ` Adrian Alonso 2010-06-23 22:26 ` Khem Raj @ 2010-06-24 9:27 ` Koen Kooi 2010-06-24 11:23 ` Frans Meulenbroeks 2 siblings, 1 reply; 28+ messages in thread From: Koen Kooi @ 2010-06-24 9:27 UTC (permalink / raw) To: openembedded-devel -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 23-06-10 22:04, Frans Meulenbroeks wrote: > I can pin in sane-toolchain, but only a few distro's seem to use that. > For now I think it is probably best to have gcc-nios recipes and > define virtual/gcc in the machine configurations. (haven't really seen > objections to that, I object to that. Nios is no more special than avr32 or blackfin in this regard. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (Darwin) iD8DBQFMIyTlMkyGM64RGpERAuIUAJ9NiIi7TUVoRCXhHlE6JdapxKbBnwCeI6lw +//ekU5ga2zfxNiVwnZlL/Q= =QJca -----END PGP SIGNATURE----- ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-24 9:27 ` Koen Kooi @ 2010-06-24 11:23 ` Frans Meulenbroeks 2010-06-24 15:10 ` Khem Raj 0 siblings, 1 reply; 28+ messages in thread From: Frans Meulenbroeks @ 2010-06-24 11:23 UTC (permalink / raw) To: openembedded-devel 2010/6/24 Koen Kooi <k.kooi@student.utwente.nl>: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 23-06-10 22:04, Frans Meulenbroeks wrote: > >> I can pin in sane-toolchain, but only a few distro's seem to use that. >> For now I think it is probably best to have gcc-nios recipes and >> define virtual/gcc in the machine configurations. (haven't really seen >> objections to that, > > I object to that. Nios is no more special than avr32 or blackfin in this > regard. objection noted. btw: avr and bfin are supported gcc architectures, whereas nios2 isn't. Frans ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-24 11:23 ` Frans Meulenbroeks @ 2010-06-24 15:10 ` Khem Raj 0 siblings, 0 replies; 28+ messages in thread From: Khem Raj @ 2010-06-24 15:10 UTC (permalink / raw) To: openembedded-devel On (24/06/10 13:23), Frans Meulenbroeks wrote: > 2010/6/24 Koen Kooi <k.kooi@student.utwente.nl>: > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > On 23-06-10 22:04, Frans Meulenbroeks wrote: > > > >> I can pin in sane-toolchain, but only a few distro's seem to use that. > >> For now I think it is probably best to have gcc-nios recipes and > >> define virtual/gcc in the machine configurations. (haven't really seen > >> objections to that, > > > > I object to that. Nios is no more special than avr32 or blackfin in this > > regard. > > objection noted. > btw: avr and bfin are supported gcc architectures, whereas nios2 isn't. well nios2 has patches which are not upstream fully same is true for avr and bfin too. > > Frans > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel ^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: introducing a new architecture/machine; policy ? (and a question) 2010-06-20 9:58 introducing a new architecture/machine; policy ? (and a question) Frans Meulenbroeks 2010-06-20 10:10 ` Frans Meulenbroeks 2010-06-20 12:35 ` Koen Kooi @ 2010-06-20 22:59 ` Khem Raj 2 siblings, 0 replies; 28+ messages in thread From: Khem Raj @ 2010-06-20 22:59 UTC (permalink / raw) To: openembedded-devel On Sun, Jun 20, 2010 at 2:58 AM, Frans Meulenbroeks <fransmeulenbroeks@gmail.com> wrote: > Hi, > > I'm about to complete bringing a new architecture (nios2 with mmu) and > machine (cyclone III FPGA starter kit, and maybe also the Nios2 > Embeddeded Evaluation Kit (aka neek)) to oe. > Is there a policy on on the process how to do this. > > Changes are fairly localised: > - add suport to binutils for the new architecture (currently based > upon binutils 2.17.50.0.12) > - add support to gcc for the new architecture (based upon gcc 4.1.2) > - added a kernel recipe (and a linux-libc-headers recipe for 2.6.34) > - some hardware specific changes to glibc 2.5 > > And some smaller changes (e.g. adding the machines, adding the > architecture to insane.bbclass and siteinfo.class, and a small patch > or two on other recipes (mainly busybox)). > > Can I just commit these? It does not impact other architectures/machines. > Patches are fairly big (because of the new files that contain the > machine specific stuff), so posting them is impractical > If someone wants to review I can also make a branch, but this is only > useful if someone is actually going to review this (volunteers > welcome). you can commit them to a user branch and post your user branch for review if you want it reviewed. > > Please advise. > > Some concluding remarks: > Only a minor part of the work is mine. Most comes from the nios2 git > (git://sopc.et.ntust.edu.tw/git/toolchain-mmu.git). The stuff on that > git is based upon a windriver version of the csl toolchain. > My activity was mostly isolating the nios2 specific stuff and create > patches for mainstream package versions. > That is also the reason why it is based upon old versions of > gcc/binutils/glibc: I didn't want to deviate too much from what is in > the git. > > BTW: as nios2 is a programmable core, there may be different variants. > So you need to program the board with the appropriate .sof file. > The one I used for neek is the one found here: > http://www.nioswiki.com/Try_out_without_compilation > Should I put this sof file somewhere in the oe tree? No idea if this > is legally ok, and no idea where to put it. > Or should I put a reference somewhere? (and if so, where?) > > Suggestions welcome! > > Have fun! Frans > > _______________________________________________ > Openembedded-devel mailing list > Openembedded-devel@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel > ^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2010-06-24 15:15 UTC | newest] Thread overview: 28+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-06-20 9:58 introducing a new architecture/machine; policy ? (and a question) Frans Meulenbroeks 2010-06-20 10:10 ` Frans Meulenbroeks 2010-06-20 12:35 ` Koen Kooi 2010-06-20 15:38 ` Frans Meulenbroeks 2010-06-23 8:53 ` Frans Meulenbroeks 2010-06-23 9:24 ` Koen Kooi 2010-06-23 9:36 ` Graeme Gregory 2010-06-23 9:54 ` Frans Meulenbroeks 2010-06-23 10:03 ` Graeme Gregory 2010-06-23 10:07 ` Philip Balister 2010-06-23 10:32 ` Koen Kooi 2010-06-23 11:16 ` Frans Meulenbroeks 2010-06-23 17:19 ` Khem Raj 2010-06-23 19:55 ` Frans Meulenbroeks 2010-06-23 22:20 ` Khem Raj 2010-06-23 17:15 ` Khem Raj 2010-06-23 17:18 ` Tom Rini 2010-06-23 10:09 ` Frans Meulenbroeks 2010-06-23 10:30 ` Koen Kooi 2010-06-23 17:23 ` Khem Raj 2010-06-23 20:04 ` Frans Meulenbroeks 2010-06-23 21:55 ` Adrian Alonso 2010-06-23 22:16 ` Khem Raj 2010-06-23 22:26 ` Khem Raj 2010-06-24 9:27 ` Koen Kooi 2010-06-24 11:23 ` Frans Meulenbroeks 2010-06-24 15:10 ` Khem Raj 2010-06-20 22:59 ` Khem Raj
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox