Openembedded Core Discussions
 help / color / mirror / Atom feed
* [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