Skip to contentSkip to conversation

tune-cortexa5.inc: add tune file for cortex-a5, based on a7

PATCH Andy Voltz 3 participants 3 messages Jun 4, 2013 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): mailman.5041.1370320509.3521.openembedded-core@lists.openembedded.org

Andy Voltz

author
#1 lore raw
Quoted 65 lines

Date: Mon, 03 Jun 2013 23:18:24 +0200
From: Marcin Juszkiewicz <[email protected]>
To: [email protected]
Subject: Re: [OE-core] [PATCH] tune-cortexa5.inc: add tune file for
cortex-a5, based on a7
Message-ID: <[email protected]>
Content-Type: text/plain; charset=UTF-8

W dniu 03.06.2013 18:40, Andy Voltz pisze:

Quoted 3 lines
---
 meta/conf/machine/include/tune-cortexa5.inc |   36 +++++++++++++++++++++++++++

I think that it is time to create simple tune-cortex.inc which would be used by cores tunes to set all of it.

So tune-cortexa5.inc would be:

----
CORTEX_ID = "a5"
CORTEX_NAME = "A5"

require conf/machine/include/arm/tune-cortex.inc
----

and tune-cortex.inc will have things like:

----
DEFAULTTUNE ?= "armv7a-neon"

require conf/machine/include/arm/arch-armv7a.inc

TUNEVALID[cortex${CORTEX_ID}] = "Enable Cortex-${CORTEX_NAME} specific processor optimizations"
TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortex${CORTEX_ID}", " -mtune=cortex-${CORTEX_ID}", "", d)}"

# Little Endian base configs
AVAILTUNES += "cortex${CORTEX_ID} cortex${CORTEX_ID}t cortex${CORTEX_ID}-neon cortex${CORTEX_ID}t-neon" ARMPKGARCH_tune-cortex${CORTEX_ID} = "cortex${CORTEX_ID}" ARMPKGARCH_tune-cortex${CORTEX_ID}t = "cortex${CORTEX_ID}" ARMPKGARCH_tune-cortex${CORTEX_ID}-neon = "cortex${CORTEX_ID}" ARMPKGARCH_tune-cortex${CORTEX_ID}t-neon = "cortex${CORTEX_ID}" TUNE_FEATURES_tune-cortex${CORTEX_ID} = "${TUNE_FEATURES_tune-armv7a} cortex${CORTEX_ID}"
TUNE_FEATURES_tune-cortex${CORTEX_ID}t = "${TUNE_FEATURES_tune-armv7at} cortex${CORTEX_ID}" TUNE_FEATURES_tune-cortex${CORTEX_ID}-neon = "${TUNE_FEATURES_tune-armv7a-neon} cortex${CORTEX_ID}" TUNE_FEATURES_tune-cortex${CORTEX_ID}t-neon = "${TUNE_FEATURES_tune-armv7at-neon} cortex${CORTEX_ID}" PACKAGE_EXTRA_ARCHS_tune-cortex${CORTEX_ID} = "${PACKAGE_EXTRA_ARCHS_tune-armv7a} cortex${CORTEX_ID}-vfp" PACKAGE_EXTRA_ARCHS_tune-cortex${CORTEX_ID}t = "${PACKAGE_EXTRA_ARCHS_tune-armv7at} cortex${CORTEX_ID}-vfp cortex${CORTEX_ID}t2-vfp" PACKAGE_EXTRA_ARCHS_tune-cortex${CORTEX_ID}-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7a-neon} cortex${CORTEX_ID}-vfp cortex${CORTEX_ID}-vfp-neon" PACKAGE_EXTRA_ARCHS_tune-cortex${CORTEX_ID}t-neon = "${PACKAGE_EXTRA_ARCHS_tune-armv7at-neon} cortex${CORTEX_ID}-vfp cortex${CORTEX_ID}-vfp-neon cortex${CORTEX_ID}t2-vfp cortex${CORTEX_ID}t2-vfp-neon"

Quoted 6 lines

[..]
-----

What do you think?

I just tried this solution with my vybrid cortex-a5 build. The only issue is a parse error on ${CORTEX_ID} here:

TUNEVALID[cortex${CORTEX_ID}] = "Enable Cortex-${CORTEX_NAME} specific

I amended the changes so that each tune-cortexa5.inc (for example) looks like:

+CORTEX_ID = "a5"
+
+TUNEVALID[cortexa5] = "Enable Cortex-A5 specific processor optimizations" +
+require conf/machine/include/tune-cortex.inc

I didn't think it was worth having a CORTEX_NAME if TUNEVALID does not parse..

My only other thought is perhaps tune-cortex.inc should be called tune-cortexa.inc? It seems like the m series is a different animal.

What do you think?

Regards
--
Andy Voltz
Linux Engineer
Timesys Corporation

#2 lore raw

W dniu 04.06.2013 21:57, Andy Voltz pisze:

Quoted 13 lines

I just tried this solution with my vybrid cortex-a5 build. The only issue is a parse error on ${CORTEX_ID} here:

TUNEVALID[cortex${CORTEX_ID}] = "Enable Cortex-${CORTEX_NAME} specific

I amended the changes so that each tune-cortexa5.inc (for example) looks like:

(quoted diff) +5 -0
+CORTEX_ID = "a5"
+
+TUNEVALID[cortexa5] = "Enable Cortex-A5 specific processor optimizations"
+
+require conf/machine/include/tune-cortex.inc
Quoted 1 line

I didn't think it was worth having a CORTEX_NAME if TUNEVALID does not parse..

Agree.

Quoted 2 lines

My only other thought is perhaps tune-cortex.inc should be called tune-cortexa.inc? It seems like the m series is a different animal.

Agree as well. M/R to be exact.

Quoted 1 line

What do you think?

#3 lore raw
Quoted 15 lines · Marcin Juszkiewicz

W dniu 04.06.2013 21:57, Andy Voltz pisze:

Quoted 13 lines

I just tried this solution with my vybrid cortex-a5 build. The only issue is a parse error on ${CORTEX_ID} here:

TUNEVALID[cortex${CORTEX_ID}] = "Enable Cortex-${CORTEX_NAME} specific

I amended the changes so that each tune-cortexa5.inc (for example) looks like:

(quoted diff) +5 -0
+CORTEX_ID = "a5"
+
+TUNEVALID[cortexa5] = "Enable Cortex-A5 specific processor optimizations"
+
+require conf/machine/include/tune-cortex.inc
Quoted 3 lines
Quoted 1 line

I didn't think it was worth having a CORTEX_NAME if TUNEVALID does not parse..

Agree.

I had forgotten about this limitation. In a variable's [...] variable elements are not extracted.

Quoted 6 lines
Quoted 2 lines

My only other thought is perhaps tune-cortex.inc should be called tune-cortexa.inc? It seems like the m series is a different animal.

Agree as well. M/R to be exact.

Quoted 1 line

What do you think?

This seems reasonable to me.

--Mark

Quoted 5 lines

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core