* [PATCH 0/1] machine/tune: add tune-ppce300c3.inc @ 2012-09-06 18:43 Bruce Ashfield 2012-09-06 18:43 ` [PATCH 1/1] conf/tune: add tune-ppce300c3 Bruce Ashfield 0 siblings, 1 reply; 12+ messages in thread From: Bruce Ashfield @ 2012-09-06 18:43 UTC (permalink / raw) To: richard.purdie; +Cc: openembedded-core Richard/Saul, I was asked to pick up the languishing yocto bug #1192, which tells us that the mpc8315 reference board was using the incorrect tuning. To fix this, I created a new tune-ppce300c3, which is based on the tune-ppce300c2. core-image-minimal, and core-image-sato builds have passed, as well as boot tests. During the sato build, I had to fix flac to not use altivec. The examples already in flac didn't seem to work, since my tuning override wasn't working. To fix it, I added DEFAULTTUNE to the OVERRIDES for the package and sato now builds. I'll follow this with a pull request for the yocto reference BSP. I'm by no means a tuning or powerpc expert, but to the best of my knowledge, this is what we want to do. Anyone more familiar with the board can feel free to comment :) Cheers, Bruce The following changes since commit 55d82fd07f6bded10333735a99fcb176b3d26e6f: stash: disable x11 for gdkpixbuf (2012-09-05 14:55:14 -0400) are available in the git repository at: git://git.pokylinux.org/poky-contrib zedd/ppc-tune http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/ppc-tune Bruce Ashfield (1): conf/tune: add tune-ppce300c3 meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ 2 files changed, 16 insertions(+), 0 deletions(-) create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc -- 1.7.7 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 18:43 [PATCH 0/1] machine/tune: add tune-ppce300c3.inc Bruce Ashfield @ 2012-09-06 18:43 ` Bruce Ashfield 2012-09-06 22:19 ` Richard Purdie 0 siblings, 1 reply; 12+ messages in thread From: Bruce Ashfield @ 2012-09-06 18:43 UTC (permalink / raw) To: richard.purdie; +Cc: openembedded-core It has been pointed out several times that the yocto mpc8315e-rdb reference was using the wrong tuning (603e), since it is actually a e300c3 board. This commit creates a e300c3 tune file based on the e300c2 variant already in oe-core. This commit also inhibits altivec in flac when this new tuning is enabled. It was also noticed that the existing tune based overrides in the flac package would not be triggered since DEFAULTTUNE is not in the overrides list. To avoid doing per-board disabling of altivec DEFAULTTUNE is added to the local package OVERRIDES and then used to disable altivec. [YOCTO #1192] Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> asdfkljds Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> --- meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ 2 files changed, 16 insertions(+), 0 deletions(-) create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc new file mode 100644 index 0000000..3f5ac26 --- /dev/null +++ b/meta/conf/machine/include/tune-ppce300c3.inc @@ -0,0 +1,11 @@ +DEFAULTTUNE ?= "ppce300c3" + +require conf/machine/include/powerpc/arch-powerpc.inc + +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" + +AVAILTUNES += "ppce300c3" +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb index 3c5b73c..25db1c4 100644 --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ --without-xmms-exec-prefix \ --without-libiconv-prefix \ --without-id3lib" + +FLACOVERRIDE = ":${DEFAULTTUNE}" +OVERRIDES .= "${FLACOVERRIDE}" + EXTRA_OECONF_prepend_e500mc = "--disable-altivec " EXTRA_OECONF_prepend_e5500 = "--disable-altivec " EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " PACKAGES += "libflac libflac++ liboggflac liboggflac++" FILES_${PN} = "${bindir}/*" -- 1.7.7 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 18:43 ` [PATCH 1/1] conf/tune: add tune-ppce300c3 Bruce Ashfield @ 2012-09-06 22:19 ` Richard Purdie 2012-09-06 22:20 ` Bruce Ashfield 0 siblings, 1 reply; 12+ messages in thread From: Richard Purdie @ 2012-09-06 22:19 UTC (permalink / raw) To: Bruce Ashfield; +Cc: openembedded-core On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: > It has been pointed out several times that the yocto mpc8315e-rdb > reference was using the wrong tuning (603e), since it is actually > a e300c3 board. > > This commit creates a e300c3 tune file based on the e300c2 variant > already in oe-core. > > This commit also inhibits altivec in flac when this new tuning is > enabled. It was also noticed that the existing tune based overrides > in the flac package would not be triggered since DEFAULTTUNE is not > in the overrides list. To avoid doing per-board disabling of altivec > DEFAULTTUNE is added to the local package OVERRIDES and then used > to disable altivec. > > [YOCTO #1192] > > Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> > > asdfkljds > Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> > --- > meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ > meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ > 2 files changed, 16 insertions(+), 0 deletions(-) > create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc > > diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc > new file mode 100644 > index 0000000..3f5ac26 > --- /dev/null > +++ b/meta/conf/machine/include/tune-ppce300c3.inc > @@ -0,0 +1,11 @@ > +DEFAULTTUNE ?= "ppce300c3" > + > +require conf/machine/include/powerpc/arch-powerpc.inc > + > +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" > +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" > + > +AVAILTUNES += "ppce300c3" > +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" > +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" > +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" > diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb > index 3c5b73c..25db1c4 100644 > --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb > +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb > @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ > --without-xmms-exec-prefix \ > --without-libiconv-prefix \ > --without-id3lib" > + > +FLACOVERRIDE = ":${DEFAULTTUNE}" > +OVERRIDES .= "${FLACOVERRIDE}" > + > EXTRA_OECONF_prepend_e500mc = "--disable-altivec " > EXTRA_OECONF_prepend_e5500 = "--disable-altivec " > EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " > +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " > This is getting ugly and is kind of unsafe. Perhaps the architecture should be doing something like: MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} or even in this recipe just do: EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 22:19 ` Richard Purdie @ 2012-09-06 22:20 ` Bruce Ashfield 2012-09-06 22:35 ` Mark Hatle 0 siblings, 1 reply; 12+ messages in thread From: Bruce Ashfield @ 2012-09-06 22:20 UTC (permalink / raw) To: Richard Purdie; +Cc: openembedded-core On 12-09-06 6:19 PM, Richard Purdie wrote: > On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: >> It has been pointed out several times that the yocto mpc8315e-rdb >> reference was using the wrong tuning (603e), since it is actually >> a e300c3 board. >> >> This commit creates a e300c3 tune file based on the e300c2 variant >> already in oe-core. >> >> This commit also inhibits altivec in flac when this new tuning is >> enabled. It was also noticed that the existing tune based overrides >> in the flac package would not be triggered since DEFAULTTUNE is not >> in the overrides list. To avoid doing per-board disabling of altivec >> DEFAULTTUNE is added to the local package OVERRIDES and then used >> to disable altivec. >> >> [YOCTO #1192] >> >> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >> >> asdfkljds >> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >> --- >> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ >> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ >> 2 files changed, 16 insertions(+), 0 deletions(-) >> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc >> >> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc >> new file mode 100644 >> index 0000000..3f5ac26 >> --- /dev/null >> +++ b/meta/conf/machine/include/tune-ppce300c3.inc >> @@ -0,0 +1,11 @@ >> +DEFAULTTUNE ?= "ppce300c3" >> + >> +require conf/machine/include/powerpc/arch-powerpc.inc >> + >> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" >> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" >> + >> +AVAILTUNES += "ppce300c3" >> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" >> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" >> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" >> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb >> index 3c5b73c..25db1c4 100644 >> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb >> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb >> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ >> --without-xmms-exec-prefix \ >> --without-libiconv-prefix \ >> --without-id3lib" >> + >> +FLACOVERRIDE = ":${DEFAULTTUNE}" >> +OVERRIDES .= "${FLACOVERRIDE}" >> + >> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " >> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " >> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " >> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " >> > > This is getting ugly and is kind of unsafe. Perhaps the architecture > should be doing something like: > > MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} > > or even in this recipe just do: > > EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} I definitely considered this route. I can do that for the new arch, and the old ones, but can't test the old ones at the moment. Bruce > > Cheers, > > Richard > > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 22:20 ` Bruce Ashfield @ 2012-09-06 22:35 ` Mark Hatle 2012-09-06 22:59 ` Richard Purdie 0 siblings, 1 reply; 12+ messages in thread From: Mark Hatle @ 2012-09-06 22:35 UTC (permalink / raw) To: openembedded-core On 9/6/12 5:20 PM, Bruce Ashfield wrote: > On 12-09-06 6:19 PM, Richard Purdie wrote: >> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: >>> It has been pointed out several times that the yocto mpc8315e-rdb >>> reference was using the wrong tuning (603e), since it is actually >>> a e300c3 board. >>> >>> This commit creates a e300c3 tune file based on the e300c2 variant >>> already in oe-core. >>> >>> This commit also inhibits altivec in flac when this new tuning is >>> enabled. It was also noticed that the existing tune based overrides >>> in the flac package would not be triggered since DEFAULTTUNE is not >>> in the overrides list. To avoid doing per-board disabling of altivec >>> DEFAULTTUNE is added to the local package OVERRIDES and then used >>> to disable altivec. >>> >>> [YOCTO #1192] >>> >>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >>> >>> asdfkljds >>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >>> --- >>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ >>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ >>> 2 files changed, 16 insertions(+), 0 deletions(-) >>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc >>> >>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc >>> new file mode 100644 >>> index 0000000..3f5ac26 >>> --- /dev/null >>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc >>> @@ -0,0 +1,11 @@ >>> +DEFAULTTUNE ?= "ppce300c3" >>> + >>> +require conf/machine/include/powerpc/arch-powerpc.inc >>> + >>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" >>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" >>> + >>> +AVAILTUNES += "ppce300c3" >>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" >>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" >>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" >>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb >>> index 3c5b73c..25db1c4 100644 >>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb >>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb >>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ >>> --without-xmms-exec-prefix \ >>> --without-libiconv-prefix \ >>> --without-id3lib" >>> + >>> +FLACOVERRIDE = ":${DEFAULTTUNE}" >>> +OVERRIDES .= "${FLACOVERRIDE}" >>> + >>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " >>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " >>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " >>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " >>> >> >> This is getting ugly and is kind of unsafe. Perhaps the architecture >> should be doing something like: >> >> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} >> >> or even in this recipe just do: >> >> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} > > I definitely considered this route. I can do that for the new arch, and the > old ones, but can't test the old ones at the moment. The problem is actually in the flac. This recipe sees powerpc as the machine type, and immediately enabled altivec. By default altivec support is disabled in OE-Core. Perhaps one way we could address this is add a tune flag that says if the tune has altivec support or not.. then in the flac binary, disable it unless it's enabled? --Mark > Bruce > >> >> Cheers, >> >> Richard >> >> > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 22:35 ` Mark Hatle @ 2012-09-06 22:59 ` Richard Purdie 2012-09-06 23:07 ` Mark Hatle 0 siblings, 1 reply; 12+ messages in thread From: Richard Purdie @ 2012-09-06 22:59 UTC (permalink / raw) To: Mark Hatle; +Cc: openembedded-core On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: > On 9/6/12 5:20 PM, Bruce Ashfield wrote: > > On 12-09-06 6:19 PM, Richard Purdie wrote: > >> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: > >>> It has been pointed out several times that the yocto mpc8315e-rdb > >>> reference was using the wrong tuning (603e), since it is actually > >>> a e300c3 board. > >>> > >>> This commit creates a e300c3 tune file based on the e300c2 variant > >>> already in oe-core. > >>> > >>> This commit also inhibits altivec in flac when this new tuning is > >>> enabled. It was also noticed that the existing tune based overrides > >>> in the flac package would not be triggered since DEFAULTTUNE is not > >>> in the overrides list. To avoid doing per-board disabling of altivec > >>> DEFAULTTUNE is added to the local package OVERRIDES and then used > >>> to disable altivec. > >>> > >>> [YOCTO #1192] > >>> > >>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> > >>> > >>> asdfkljds > >>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> > >>> --- > >>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ > >>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ > >>> 2 files changed, 16 insertions(+), 0 deletions(-) > >>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc > >>> > >>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc > >>> new file mode 100644 > >>> index 0000000..3f5ac26 > >>> --- /dev/null > >>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc > >>> @@ -0,0 +1,11 @@ > >>> +DEFAULTTUNE ?= "ppce300c3" > >>> + > >>> +require conf/machine/include/powerpc/arch-powerpc.inc > >>> + > >>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" > >>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" > >>> + > >>> +AVAILTUNES += "ppce300c3" > >>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" > >>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" > >>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" > >>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>> index 3c5b73c..25db1c4 100644 > >>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ > >>> --without-xmms-exec-prefix \ > >>> --without-libiconv-prefix \ > >>> --without-id3lib" > >>> + > >>> +FLACOVERRIDE = ":${DEFAULTTUNE}" > >>> +OVERRIDES .= "${FLACOVERRIDE}" > >>> + > >>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " > >>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " > >>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " > >>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " > >>> > >> > >> This is getting ugly and is kind of unsafe. Perhaps the architecture > >> should be doing something like: > >> > >> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} > >> > >> or even in this recipe just do: > >> > >> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} > > > > I definitely considered this route. I can do that for the new arch, and the > > old ones, but can't test the old ones at the moment. > > The problem is actually in the flac. This recipe sees powerpc as the machine > type, and immediately enabled altivec. By default altivec support is disabled > in OE-Core. > > Perhaps one way we could address this is add a tune flag that says if the tune > has altivec support or not.. then in the flac binary, disable it unless it's > enabled? I think having altivec in the tune_features would be ideal. I'd love to get this cleaned up too but I lack much knowledge about powerpc... Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 22:59 ` Richard Purdie @ 2012-09-06 23:07 ` Mark Hatle 2012-09-06 23:32 ` Richard Purdie 2012-09-07 6:55 ` McClintock Matthew-B29882 0 siblings, 2 replies; 12+ messages in thread From: Mark Hatle @ 2012-09-06 23:07 UTC (permalink / raw) To: Richard Purdie; +Cc: openembedded-core On 9/6/12 5:59 PM, Richard Purdie wrote: > On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: >> On 9/6/12 5:20 PM, Bruce Ashfield wrote: >>> On 12-09-06 6:19 PM, Richard Purdie wrote: >>>> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: >>>>> It has been pointed out several times that the yocto mpc8315e-rdb >>>>> reference was using the wrong tuning (603e), since it is actually >>>>> a e300c3 board. >>>>> >>>>> This commit creates a e300c3 tune file based on the e300c2 variant >>>>> already in oe-core. >>>>> >>>>> This commit also inhibits altivec in flac when this new tuning is >>>>> enabled. It was also noticed that the existing tune based overrides >>>>> in the flac package would not be triggered since DEFAULTTUNE is not >>>>> in the overrides list. To avoid doing per-board disabling of altivec >>>>> DEFAULTTUNE is added to the local package OVERRIDES and then used >>>>> to disable altivec. >>>>> >>>>> [YOCTO #1192] >>>>> >>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >>>>> >>>>> asdfkljds >>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >>>>> --- >>>>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ >>>>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ >>>>> 2 files changed, 16 insertions(+), 0 deletions(-) >>>>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc >>>>> >>>>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc >>>>> new file mode 100644 >>>>> index 0000000..3f5ac26 >>>>> --- /dev/null >>>>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc >>>>> @@ -0,0 +1,11 @@ >>>>> +DEFAULTTUNE ?= "ppce300c3" >>>>> + >>>>> +require conf/machine/include/powerpc/arch-powerpc.inc >>>>> + >>>>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" >>>>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" >>>>> + >>>>> +AVAILTUNES += "ppce300c3" >>>>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" >>>>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" >>>>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" >>>>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>> index 3c5b73c..25db1c4 100644 >>>>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ >>>>> --without-xmms-exec-prefix \ >>>>> --without-libiconv-prefix \ >>>>> --without-id3lib" >>>>> + >>>>> +FLACOVERRIDE = ":${DEFAULTTUNE}" >>>>> +OVERRIDES .= "${FLACOVERRIDE}" >>>>> + >>>>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " >>>>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " >>>>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " >>>>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " >>>>> >>>> >>>> This is getting ugly and is kind of unsafe. Perhaps the architecture >>>> should be doing something like: >>>> >>>> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} >>>> >>>> or even in this recipe just do: >>>> >>>> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} >>> >>> I definitely considered this route. I can do that for the new arch, and the >>> old ones, but can't test the old ones at the moment. >> >> The problem is actually in the flac. This recipe sees powerpc as the machine >> type, and immediately enabled altivec. By default altivec support is disabled >> in OE-Core. >> >> Perhaps one way we could address this is add a tune flag that says if the tune >> has altivec support or not.. then in the flac binary, disable it unless it's >> enabled? > > I think having altivec in the tune_features would be ideal. I'd love to > get this cleaned up too but I lack much knowledge about powerpc... My proposal then would be to accept Bruce's patch, with the understanding that we need to add a tune flag of 'altivec' to the PowerPC tunings (where appropriate) and then make the flac recipe respect that flag. Unfortunately I don't have the time to do that right now or I would. Would an enhancement bug in the Yocto Project bugzilla be enough to be sure the work is done? --Mark > Cheers, > > Richard > ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 23:07 ` Mark Hatle @ 2012-09-06 23:32 ` Richard Purdie 2012-09-07 2:05 ` Bruce Ashfield 2012-09-07 3:48 ` Bruce Ashfield 2012-09-07 6:55 ` McClintock Matthew-B29882 1 sibling, 2 replies; 12+ messages in thread From: Richard Purdie @ 2012-09-06 23:32 UTC (permalink / raw) To: Mark Hatle; +Cc: openembedded-core On Thu, 2012-09-06 at 18:07 -0500, Mark Hatle wrote: > On 9/6/12 5:59 PM, Richard Purdie wrote: > > On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: > >> On 9/6/12 5:20 PM, Bruce Ashfield wrote: > >>> On 12-09-06 6:19 PM, Richard Purdie wrote: > >>>> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: > >>>>> It has been pointed out several times that the yocto mpc8315e-rdb > >>>>> reference was using the wrong tuning (603e), since it is actually > >>>>> a e300c3 board. > >>>>> > >>>>> This commit creates a e300c3 tune file based on the e300c2 variant > >>>>> already in oe-core. > >>>>> > >>>>> This commit also inhibits altivec in flac when this new tuning is > >>>>> enabled. It was also noticed that the existing tune based overrides > >>>>> in the flac package would not be triggered since DEFAULTTUNE is not > >>>>> in the overrides list. To avoid doing per-board disabling of altivec > >>>>> DEFAULTTUNE is added to the local package OVERRIDES and then used > >>>>> to disable altivec. > >>>>> > >>>>> [YOCTO #1192] > >>>>> > >>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> > >>>>> > >>>>> asdfkljds > >>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> > >>>>> --- > >>>>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ > >>>>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ > >>>>> 2 files changed, 16 insertions(+), 0 deletions(-) > >>>>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc > >>>>> > >>>>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc > >>>>> new file mode 100644 > >>>>> index 0000000..3f5ac26 > >>>>> --- /dev/null > >>>>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc > >>>>> @@ -0,0 +1,11 @@ > >>>>> +DEFAULTTUNE ?= "ppce300c3" > >>>>> + > >>>>> +require conf/machine/include/powerpc/arch-powerpc.inc > >>>>> + > >>>>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" > >>>>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" > >>>>> + > >>>>> +AVAILTUNES += "ppce300c3" > >>>>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" > >>>>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" > >>>>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" > >>>>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>> index 3c5b73c..25db1c4 100644 > >>>>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ > >>>>> --without-xmms-exec-prefix \ > >>>>> --without-libiconv-prefix \ > >>>>> --without-id3lib" > >>>>> + > >>>>> +FLACOVERRIDE = ":${DEFAULTTUNE}" > >>>>> +OVERRIDES .= "${FLACOVERRIDE}" > >>>>> + > >>>>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " > >>>>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " > >>>>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " > >>>>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " > >>>>> > >>>> > >>>> This is getting ugly and is kind of unsafe. Perhaps the architecture > >>>> should be doing something like: > >>>> > >>>> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} > >>>> > >>>> or even in this recipe just do: > >>>> > >>>> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} > >>> > >>> I definitely considered this route. I can do that for the new arch, and the > >>> old ones, but can't test the old ones at the moment. > >> > >> The problem is actually in the flac. This recipe sees powerpc as the machine > >> type, and immediately enabled altivec. By default altivec support is disabled > >> in OE-Core. > >> > >> Perhaps one way we could address this is add a tune flag that says if the tune > >> has altivec support or not.. then in the flac binary, disable it unless it's > >> enabled? > > > > I think having altivec in the tune_features would be ideal. I'd love to > > get this cleaned up too but I lack much knowledge about powerpc... > > My proposal then would be to accept Bruce's patch, with the understanding that > we need to add a tune flag of 'altivec' to the PowerPC tunings (where > appropriate) and then make the flac recipe respect that flag. > > Unfortunately I don't have the time to do that right now or I would. Would an > enhancement bug in the Yocto Project bugzilla be enough to be sure the work is done? Please send something machine specific. Adding DEFAULTTUNE is a bad idea for several reasons, not least it might not be the selected tune. I took Matthew's original patch on the understanding this gets fixed and it hasn't happened but please do file the request. Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 23:32 ` Richard Purdie @ 2012-09-07 2:05 ` Bruce Ashfield 2012-09-07 3:48 ` Bruce Ashfield 1 sibling, 0 replies; 12+ messages in thread From: Bruce Ashfield @ 2012-09-07 2:05 UTC (permalink / raw) To: Richard Purdie; +Cc: openembedded-core On Thu, Sep 6, 2012 at 7:32 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > On Thu, 2012-09-06 at 18:07 -0500, Mark Hatle wrote: >> On 9/6/12 5:59 PM, Richard Purdie wrote: >> > On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: >> >> On 9/6/12 5:20 PM, Bruce Ashfield wrote: >> >>> On 12-09-06 6:19 PM, Richard Purdie wrote: >> >>>> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: >> >>>>> It has been pointed out several times that the yocto mpc8315e-rdb >> >>>>> reference was using the wrong tuning (603e), since it is actually >> >>>>> a e300c3 board. >> >>>>> >> >>>>> This commit creates a e300c3 tune file based on the e300c2 variant >> >>>>> already in oe-core. >> >>>>> >> >>>>> This commit also inhibits altivec in flac when this new tuning is >> >>>>> enabled. It was also noticed that the existing tune based overrides >> >>>>> in the flac package would not be triggered since DEFAULTTUNE is not >> >>>>> in the overrides list. To avoid doing per-board disabling of altivec >> >>>>> DEFAULTTUNE is added to the local package OVERRIDES and then used >> >>>>> to disable altivec. >> >>>>> >> >>>>> [YOCTO #1192] >> >>>>> >> >>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >> >>>>> >> >>>>> asdfkljds >> >>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >> >>>>> --- >> >>>>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ >> >>>>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ >> >>>>> 2 files changed, 16 insertions(+), 0 deletions(-) >> >>>>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc >> >>>>> >> >>>>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc b/meta/conf/machine/include/tune-ppce300c3.inc >> >>>>> new file mode 100644 >> >>>>> index 0000000..3f5ac26 >> >>>>> --- /dev/null >> >>>>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc >> >>>>> @@ -0,0 +1,11 @@ >> >>>>> +DEFAULTTUNE ?= "ppce300c3" >> >>>>> + >> >>>>> +require conf/machine/include/powerpc/arch-powerpc.inc >> >>>>> + >> >>>>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor optimizations" >> >>>>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", "-mcpu=e300c3", "", d)}" >> >>>>> + >> >>>>> +AVAILTUNES += "ppce300c3" >> >>>>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" >> >>>>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" >> >>>>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" >> >>>>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb >> >>>>> index 3c5b73c..25db1c4 100644 >> >>>>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb >> >>>>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb >> >>>>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ >> >>>>> --without-xmms-exec-prefix \ >> >>>>> --without-libiconv-prefix \ >> >>>>> --without-id3lib" >> >>>>> + >> >>>>> +FLACOVERRIDE = ":${DEFAULTTUNE}" >> >>>>> +OVERRIDES .= "${FLACOVERRIDE}" >> >>>>> + >> >>>>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " >> >>>>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " >> >>>>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " >> >>>>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " >> >>>>> >> >>>> >> >>>> This is getting ugly and is kind of unsafe. Perhaps the architecture >> >>>> should be doing something like: >> >>>> >> >>>> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", ":noaltivec", "" ,d)} >> >>>> >> >>>> or even in this recipe just do: >> >>>> >> >>>> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " --disable-altivec", "" ,d)} >> >>> >> >>> I definitely considered this route. I can do that for the new arch, and the >> >>> old ones, but can't test the old ones at the moment. >> >> >> >> The problem is actually in the flac. This recipe sees powerpc as the machine >> >> type, and immediately enabled altivec. By default altivec support is disabled >> >> in OE-Core. >> >> >> >> Perhaps one way we could address this is add a tune flag that says if the tune >> >> has altivec support or not.. then in the flac binary, disable it unless it's >> >> enabled? >> > >> > I think having altivec in the tune_features would be ideal. I'd love to >> > get this cleaned up too but I lack much knowledge about powerpc... >> >> My proposal then would be to accept Bruce's patch, with the understanding that >> we need to add a tune flag of 'altivec' to the PowerPC tunings (where >> appropriate) and then make the flac recipe respect that flag. >> >> Unfortunately I don't have the time to do that right now or I would. Would an >> enhancement bug in the Yocto Project bugzilla be enough to be sure the work is done? > > Please send something machine specific. Adding DEFAULTTUNE is a bad idea > for several reasons, not least it might not be the selected tune. Works for me, I'll just switch in the rdb and send another update then when the patch is fixed. Bruce > > I took Matthew's original patch on the understanding this gets fixed and > it hasn't happened but please do file the request. > > Cheers, > > Richard > > > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core -- "Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end" ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 23:32 ` Richard Purdie 2012-09-07 2:05 ` Bruce Ashfield @ 2012-09-07 3:48 ` Bruce Ashfield 1 sibling, 0 replies; 12+ messages in thread From: Bruce Ashfield @ 2012-09-07 3:48 UTC (permalink / raw) To: Richard Purdie; +Cc: openembedded-core On Thu, Sep 6, 2012 at 7:32 PM, Richard Purdie <richard.purdie@linuxfoundation.org> wrote: > On Thu, 2012-09-06 at 18:07 -0500, Mark Hatle wrote: >> On 9/6/12 5:59 PM, Richard Purdie wrote: >> > On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: >> >> On 9/6/12 5:20 PM, Bruce Ashfield wrote: >> >>> On 12-09-06 6:19 PM, Richard Purdie wrote: >> >>>> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: >> >>>>> It has been pointed out several times that the yocto mpc8315e-rdb >> >>>>> reference was using the wrong tuning (603e), since it is actually <snip> >> >> The problem is actually in the flac. This recipe sees powerpc as the machine >> >> type, and immediately enabled altivec. By default altivec support is disabled >> >> in OE-Core. >> >> >> >> Perhaps one way we could address this is add a tune flag that says if the tune >> >> has altivec support or not.. then in the flac binary, disable it unless it's >> >> enabled? >> > >> > I think having altivec in the tune_features would be ideal. I'd love to >> > get this cleaned up too but I lack much knowledge about powerpc... >> >> My proposal then would be to accept Bruce's patch, with the understanding that >> we need to add a tune flag of 'altivec' to the PowerPC tunings (where >> appropriate) and then make the flac recipe respect that flag. >> >> Unfortunately I don't have the time to do that right now or I would. Would an >> enhancement bug in the Yocto Project bugzilla be enough to be sure the work is done? > > Please send something machine specific. Adding DEFAULTTUNE is a bad idea > for several reasons, not least it might not be the selected tune. Same branch (contrib zedd/ppc-tune), now has: --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb @@ -39,6 +39,7 @@ EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \ EXTRA_OECONF_prepend_e500mc = "--disable-altivec " EXTRA_OECONF_prepend_e5500 = "--disable-altivec " EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " +EXTRA_OECONF_prepend_mpc8315e-rdb = "--disable-altivec " PACKAGES += "libflac libflac++ liboggflac liboggflac++" FILES_${PN} = "${bindir}/*" Everything else is the same. Let me know if you want a full resend of the patch. Cheers, Bruce > > I took Matthew's original patch on the understanding this gets fixed and > it hasn't happened but please do file the request. > > Cheers, > > Richard > > > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core -- "Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end" ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-06 23:07 ` Mark Hatle 2012-09-06 23:32 ` Richard Purdie @ 2012-09-07 6:55 ` McClintock Matthew-B29882 2012-09-07 10:34 ` Richard Purdie 1 sibling, 1 reply; 12+ messages in thread From: McClintock Matthew-B29882 @ 2012-09-07 6:55 UTC (permalink / raw) To: Mark Hatle; +Cc: openembedded-core@lists.openembedded.org On Thu, Sep 6, 2012 at 6:07 PM, Mark Hatle <mark.hatle@windriver.com> wrote: > On 9/6/12 5:59 PM, Richard Purdie wrote: >> >> On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: >>> >>> On 9/6/12 5:20 PM, Bruce Ashfield wrote: >>>> >>>> On 12-09-06 6:19 PM, Richard Purdie wrote: >>>>> >>>>> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: >>>>>> >>>>>> It has been pointed out several times that the yocto mpc8315e-rdb >>>>>> reference was using the wrong tuning (603e), since it is actually >>>>>> a e300c3 board. >>>>>> >>>>>> This commit creates a e300c3 tune file based on the e300c2 variant >>>>>> already in oe-core. >>>>>> >>>>>> This commit also inhibits altivec in flac when this new tuning is >>>>>> enabled. It was also noticed that the existing tune based overrides >>>>>> in the flac package would not be triggered since DEFAULTTUNE is not >>>>>> in the overrides list. To avoid doing per-board disabling of altivec >>>>>> DEFAULTTUNE is added to the local package OVERRIDES and then used >>>>>> to disable altivec. >>>>>> >>>>>> [YOCTO #1192] >>>>>> >>>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >>>>>> >>>>>> asdfkljds >>>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> >>>>>> --- >>>>>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ >>>>>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ >>>>>> 2 files changed, 16 insertions(+), 0 deletions(-) >>>>>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc >>>>>> >>>>>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc >>>>>> b/meta/conf/machine/include/tune-ppce300c3.inc >>>>>> new file mode 100644 >>>>>> index 0000000..3f5ac26 >>>>>> --- /dev/null >>>>>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc >>>>>> @@ -0,0 +1,11 @@ >>>>>> +DEFAULTTUNE ?= "ppce300c3" >>>>>> + >>>>>> +require conf/machine/include/powerpc/arch-powerpc.inc >>>>>> + >>>>>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor >>>>>> optimizations" >>>>>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", >>>>>> "-mcpu=e300c3", "", d)}" >>>>>> + >>>>>> +AVAILTUNES += "ppce300c3" >>>>>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" >>>>>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" >>>>>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = >>>>>> "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" >>>>>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>>> b/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>>> index 3c5b73c..25db1c4 100644 >>>>>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb >>>>>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest >>>>>> --disable-id3libtest \ >>>>>> --without-xmms-exec-prefix \ >>>>>> --without-libiconv-prefix \ >>>>>> --without-id3lib" >>>>>> + >>>>>> +FLACOVERRIDE = ":${DEFAULTTUNE}" >>>>>> +OVERRIDES .= "${FLACOVERRIDE}" >>>>>> + >>>>>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " >>>>>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " >>>>>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " >>>>>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " >>>>>> >>>>> >>>>> This is getting ugly and is kind of unsafe. Perhaps the architecture >>>>> should be doing something like: >>>>> >>>>> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", >>>>> ":noaltivec", "" ,d)} >>>>> >>>>> or even in this recipe just do: >>>>> >>>>> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " >>>>> --disable-altivec", "" ,d)} These don't work because you still have the other 3 lines that look just like this. Or am I missing something? >>>> >>>> >>>> I definitely considered this route. I can do that for the new arch, and >>>> the >>>> old ones, but can't test the old ones at the moment. >>> >>> >>> The problem is actually in the flac. This recipe sees powerpc as the >>> machine >>> type, and immediately enabled altivec. By default altivec support is >>> disabled >>> in OE-Core. >>> >>> Perhaps one way we could address this is add a tune flag that says if the >>> tune >>> has altivec support or not.. then in the flac binary, disable it unless >>> it's >>> enabled? >> >> >> I think having altivec in the tune_features would be ideal. I'd love to >> get this cleaned up too but I lack much knowledge about powerpc... > > > My proposal then would be to accept Bruce's patch, with the understanding > that we need to add a tune flag of 'altivec' to the PowerPC tunings (where > appropriate) and then make the flac recipe respect that flag. This sounds good to me. If a bug is filed against me I can take a look at it since I did the initial damage. -M > Unfortunately I don't have the time to do that right now or I would. Would > an enhancement bug in the Yocto Project bugzilla be enough to be sure the > work is done? > > --Mark > > >> Cheers, >> >> Richard >> > > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 1/1] conf/tune: add tune-ppce300c3 2012-09-07 6:55 ` McClintock Matthew-B29882 @ 2012-09-07 10:34 ` Richard Purdie 0 siblings, 0 replies; 12+ messages in thread From: Richard Purdie @ 2012-09-07 10:34 UTC (permalink / raw) To: McClintock Matthew-B29882; +Cc: openembedded-core@lists.openembedded.org On Fri, 2012-09-07 at 06:55 +0000, McClintock Matthew-B29882 wrote: > On Thu, Sep 6, 2012 at 6:07 PM, Mark Hatle <mark.hatle@windriver.com> wrote: > > On 9/6/12 5:59 PM, Richard Purdie wrote: > >> > >> On Thu, 2012-09-06 at 17:35 -0500, Mark Hatle wrote: > >>> > >>> On 9/6/12 5:20 PM, Bruce Ashfield wrote: > >>>> > >>>> On 12-09-06 6:19 PM, Richard Purdie wrote: > >>>>> > >>>>> On Thu, 2012-09-06 at 14:43 -0400, Bruce Ashfield wrote: > >>>>>> > >>>>>> It has been pointed out several times that the yocto mpc8315e-rdb > >>>>>> reference was using the wrong tuning (603e), since it is actually > >>>>>> a e300c3 board. > >>>>>> > >>>>>> This commit creates a e300c3 tune file based on the e300c2 variant > >>>>>> already in oe-core. > >>>>>> > >>>>>> This commit also inhibits altivec in flac when this new tuning is > >>>>>> enabled. It was also noticed that the existing tune based overrides > >>>>>> in the flac package would not be triggered since DEFAULTTUNE is not > >>>>>> in the overrides list. To avoid doing per-board disabling of altivec > >>>>>> DEFAULTTUNE is added to the local package OVERRIDES and then used > >>>>>> to disable altivec. > >>>>>> > >>>>>> [YOCTO #1192] > >>>>>> > >>>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> > >>>>>> > >>>>>> asdfkljds > >>>>>> Signed-off-by: Bruce Ashfield<bruce.ashfield@windriver.com> > >>>>>> --- > >>>>>> meta/conf/machine/include/tune-ppce300c3.inc | 11 +++++++++++ > >>>>>> meta/recipes-multimedia/flac/flac_1.2.1.bb | 5 +++++ > >>>>>> 2 files changed, 16 insertions(+), 0 deletions(-) > >>>>>> create mode 100644 meta/conf/machine/include/tune-ppce300c3.inc > >>>>>> > >>>>>> diff --git a/meta/conf/machine/include/tune-ppce300c3.inc > >>>>>> b/meta/conf/machine/include/tune-ppce300c3.inc > >>>>>> new file mode 100644 > >>>>>> index 0000000..3f5ac26 > >>>>>> --- /dev/null > >>>>>> +++ b/meta/conf/machine/include/tune-ppce300c3.inc > >>>>>> @@ -0,0 +1,11 @@ > >>>>>> +DEFAULTTUNE ?= "ppce300c3" > >>>>>> + > >>>>>> +require conf/machine/include/powerpc/arch-powerpc.inc > >>>>>> + > >>>>>> +TUNEVALID[ppce300c3] = "Enable ppce300c3 specific processor > >>>>>> optimizations" > >>>>>> +TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", > >>>>>> "-mcpu=e300c3", "", d)}" > >>>>>> + > >>>>>> +AVAILTUNES += "ppce300c3" > >>>>>> +TUNE_FEATURES_tune-ppce300c3 = "m32 fpu-soft ppce300c3" > >>>>>> +TUNE_PKGARCH_tune-ppce300c3 = "ppce300c3" > >>>>>> +PACKAGE_EXTRA_ARCHS_tune-ppce300c3 = > >>>>>> "${PACKAGE_EXTRA_ARCHS_tune-powerpc-nf} ppce300c3" > >>>>>> diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>>> b/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>>> index 3c5b73c..25db1c4 100644 > >>>>>> --- a/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>>> +++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb > >>>>>> @@ -36,9 +36,14 @@ EXTRA_OECONF = "--disable-oggtest > >>>>>> --disable-id3libtest \ > >>>>>> --without-xmms-exec-prefix \ > >>>>>> --without-libiconv-prefix \ > >>>>>> --without-id3lib" > >>>>>> + > >>>>>> +FLACOVERRIDE = ":${DEFAULTTUNE}" > >>>>>> +OVERRIDES .= "${FLACOVERRIDE}" > >>>>>> + > >>>>>> EXTRA_OECONF_prepend_e500mc = "--disable-altivec " > >>>>>> EXTRA_OECONF_prepend_e5500 = "--disable-altivec " > >>>>>> EXTRA_OECONF_prepend_e5500-64b = "--disable-altivec " > >>>>>> +EXTRA_OECONF_prepend_ppce300c3 = "--disable-altivec " > >>>>>> > >>>>> > >>>>> This is getting ugly and is kind of unsafe. Perhaps the architecture > >>>>> should be doing something like: > >>>>> > >>>>> MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", > >>>>> ":noaltivec", "" ,d)} > >>>>> > >>>>> or even in this recipe just do: > >>>>> > >>>>> EXTRA_OECONF += "${@bb.utils.contains("TUNE_FEATURES", "ppce300c3", " > >>>>> --disable-altivec", "" ,d)} > > These don't work because you still have the other 3 lines that look > just like this. Or am I missing something? > > >>>> > >>>> > >>>> I definitely considered this route. I can do that for the new arch, and > >>>> the > >>>> old ones, but can't test the old ones at the moment. > >>> > >>> > >>> The problem is actually in the flac. This recipe sees powerpc as the > >>> machine > >>> type, and immediately enabled altivec. By default altivec support is > >>> disabled > >>> in OE-Core. > >>> > >>> Perhaps one way we could address this is add a tune flag that says if the > >>> tune > >>> has altivec support or not.. then in the flac binary, disable it unless > >>> it's > >>> enabled? > >> > >> > >> I think having altivec in the tune_features would be ideal. I'd love to > >> get this cleaned up too but I lack much knowledge about powerpc... > > > > > > My proposal then would be to accept Bruce's patch, with the understanding > > that we need to add a tune flag of 'altivec' to the PowerPC tunings (where > > appropriate) and then make the flac recipe respect that flag. > > This sounds good to me. If a bug is filed against me I can take a look > at it since I did the initial damage. I'll merge Bruce's updated patch, you are now the owner of: https://bugzilla.yoctoproject.org/show_bug.cgi?id=3072 Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2012-09-07 10:47 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-09-06 18:43 [PATCH 0/1] machine/tune: add tune-ppce300c3.inc Bruce Ashfield 2012-09-06 18:43 ` [PATCH 1/1] conf/tune: add tune-ppce300c3 Bruce Ashfield 2012-09-06 22:19 ` Richard Purdie 2012-09-06 22:20 ` Bruce Ashfield 2012-09-06 22:35 ` Mark Hatle 2012-09-06 22:59 ` Richard Purdie 2012-09-06 23:07 ` Mark Hatle 2012-09-06 23:32 ` Richard Purdie 2012-09-07 2:05 ` Bruce Ashfield 2012-09-07 3:48 ` Bruce Ashfield 2012-09-07 6:55 ` McClintock Matthew-B29882 2012-09-07 10:34 ` Richard Purdie
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox