> bitbake is still just a parser of the metadata and executor of our > tasks, it doesn't (and shouldn't) need to know anything about arm silicons.
You precisely formulated my latest thoughts in one sentence. :-) Cheers, Zoran _______ On Tue, Jun 18, 2019 at 9:03 PM Martin Jansa <martin.ja...@gmail.com> wrote: > > On Tue, Jun 18, 2019 at 08:47:32PM +0200, Zoran Stojsavljevic wrote: > > > Just ARM_INSTRUCTION_SET to "arm" which will give you "cortexa9hf" again > > > (not "armv7a"). > > > > I think this is impossible for the current state of YOCTO affairs. I > > do not think bitbake is able to determine type of arm silicon, since > > Have you read the commit which enabled thumb by default for MACHINEs > which support it? > > bitbake is still just a parser of the metadata and executor of our > tasks, it doesn't (and shouldn't) need to know anything about arm silicons. > > DEFAULTTUNE is still set in the MACHINE config (through one of the .inc > files) and ARM_INSTRUCTION_SET is just another variable which says if > it should include -mthumb or -marm by default in TUNE_CCARGS, read > conf/machine/include/arm/feature-arm-thumb.inc > > Cheers, > > > it needs to implement the following instruction somewhere beneath (in > > privileged mode): > > asm volatile("mrc p15, 0, r0, c0, c0, 0" : "=r"(reg_value) ); > > > > But according to the variable MACHINE (example: MACHINE ??= > > "beaglebone"), it is able to determine that the platform is a type of > > armv7a. > > > > My two cent worth thinking, > > Zoran > > _______ > > > > > > On Tue, Jun 18, 2019 at 7:13 PM Martin Jansa <martin.ja...@gmail.com> wrote: > > > > > > On Mon, Jun 17, 2019 at 07:47:36PM +0200, Arno Steffens wrote: > > > > Thanks for explaining this. > > > > I take some time to read about thumb/thumb2. The feedback is mixed. It > > > > seems to generate more compact code, but some say it speeds up, others > > > > it slows down because of reduced function set - and it can cause > > > > strange effects. > > > > And mixing this causes time to switch processor mode. So, as I am not > > > > an expert in this and can't decide what ist best on per function base > > > > and speed is of highest priority, I think I better should use not > > > > thumb(2). > > > > > > > > So, do I get it right that with this cortexa9t2hf I just have the > > > > option to compile it for thumb2? But without using a dedicated compiler > > > > option it generates same "standard" arm code and the difference is just > > > > to adapt all the Makefiles for this suffix. > > > > > > > > According to Martin I can get the previous setting by just set > > > > ARM_INSTRUCTION_SET to "arm" instead of "armv7a". Mh - I just afraid > > > > that I lose other kinds of optimisation. (I am just a user not an > > > > expert in arm architecture). > > > > > > I didn't say anything about changing the DEFAULTTUNE. > > > > > > Just ARM_INSTRUCTION_SET to "arm" which will give you "cortexa9hf" again > > > (not "armv7a"). > > > > > > > On the other hand for those like me it is better go the standard way. > > > > Once I am sure compiler results will not become worse (see above) I go > > > > for the pain and renaming my toolchain/makefiles/stuff. > > > > > > The results should be almost the same, maybe slightly better, depends on > > > the actual code as Khem mentioned. > > > > > > But if this causes you a lot of pain "renaming my > > > toolchain/makefiles/stuff" > > > then you should probably spend the time on your tooling instead of > > > replacing one hardcoded value with another. > > > > > > Cheers, > > > > > > > > > > > Thanks for you taking the time. > > > > Arno > > > > > > > > > Hello Arno, > > > > > > > > > > Let me try to explain my point of view. Since here (my best guess) we > > > > > have some asynchronous bitbake code which went South upon introducing > > > > > T2 HW extension. > > > > > > > > > > Point [1]: as far as I understand arm, cortexa9t2hf is is just a > > > > > superset of previous cortexa9hf (HW wise). NEON HW extension (NEON > > > > > media coprocessor) exists in both of them. In other words: > > > > > cortexa9t2hf = cortexa9hf HW + T2 HW extension. > > > > > > > > > > Point [2]: > > > > > > bitbake gives me in 2.5: > > > > > > TUNE_FEATURES = "arm armv7a vfp thumb neon > > > > > > callconvention-hard cortexa9" > > > > > > TARGET_FPU = "hard" > > > > > > > > > > > > and in 2.7: > > > > > > TUNE_FEATURES = "arm vfp cortexa9 neon thumb > > > > > > callconvention-hard" > > > > > > TARGET_FPU = "hard" > > > > > > > > > > These two lines are the same: you are able to use 32b arm mode, 16bit > > > > > thumb mode, using armv7 HW with neon HW extension, and using HW FP > > > > > extension as well. The Cortex in both cases is A9. > > > > > > > > > > I expect that somebody somewhere in bitbake version 1.42 - 100% sure > > > > > (since 2.5/Sumo uses bitbake 1.38) dropped "armv7a" as TUNE FEATURE, > > > > > and I have no idea if this is done intentionally or not. > > > > > > > > > > Because of that I copied Alex and Ross to CC: into email, so they > > > > > should unveil this mystery (I would prefer "armv7" to stay in bitbake > > > > > 1.42, since A8 and A9 belongs to armv7, A15 belongs to armv8 (IIRC). > > > > > > > > > > Bottom line: nothing to be done by you, Arno, seems that bitbake 1.42 > > > > > should return "armv7" as TUNE FEATURE. > > > > > > > > > > Best Regards, > > > > > Zoran > > > > > _______ > > > > > > > > > > > > > > > On Mon, Jun 17, 2019 at 3:00 PM Arno Steffens <s...@gmx.li> wrote: > > > > > > > > > > > > Hello Zoran, > > > > > > thanks. As far as I understand is thumb2 another mode of coding, > > > > > > that might create more compact code. > > > > > > But I want to keep all compatible to my previous tool-chain and > > > > > > settings. > > > > > > The only file where I can found this "cortexa9t2hf" is > > > > > > ./meta/conf/machine/include/tune-cortexa9.inc > > > > > > but I can't see how I can control Yocto to generate > > > > > > "cortexa9hf-neon" as before. > > > > > > Or have I been wrong the time before? > > > > > > > > > > > > bitbake gives me in 2.5: > > > > > > > > > > > > TUNE_FEATURES = "arm armv7a vfp thumb neon > > > > > > callconvention-hard cortexa9" > > > > > > TARGET_FPU = "hard" > > > > > > > > > > > > and in 2.7: > > > > > > TUNE_FEATURES = "arm vfp cortexa9 neon thumb > > > > > > callconvention-hard" > > > > > > TARGET_FPU = "hard" > > > > > > > > > > > > so armv7a seem to be missing. In terms of thumb both is same. But > > > > > > is that the reason? Where to set it? > > > > > > Arno > > > > > > > > > > > > > > > > > > > > Hello Arno, > > > > > > > > > > > > > > Your question, per say, has little to do with YOCTO forum. But > > > > > > > I'll > > > > > > > try (as my best) to answer your question. > > > > > > > > > > > > > > Cortexa9hf should be armv7 A9 Hard Floating (it contains HW FP > > > > > > > unit). > > > > > > > > > > > > > > Cortexa9t2hf is by analogy armv7 A9 T2 Hard Floating. Now, the > > > > > > > question is what is T2? T2 is addition to the previous > > > > > > > architecture > > > > > > > Cortexa9hf, and addition is Thumb-2 mode. > > > > > > > > > > > > > > Hope this helps, > > > > > > > > > > > > > > Zoran > > > > > > > _______ > > > > > > > > > > > > > > On Mon, Jun 17, 2019 at 2:03 PM Arno Steffens <s...@gmx.li> wrote: > > > > > > > > > > > > > > > > I switched from Yocto 2.5 to 2.7 and recognised a new > > > > > > > > architetcure name. > > > > > > > > Instead of cortexa9hf it is now build for cortexa9t2hf? Did I > > > > > > > > do something wrong or what exactly does this t2 mean? > > > > > > > > Target system is a Zynq7020 system. > > > > > > > > -- > > > > > > > > _______________________________________________ > > > > > > > > yocto mailing list > > > > > > > > yocto@yoctoproject.org > > > > > > > > https://lists.yoctoproject.org/listinfo/yocto > > > > > > > > > > > > > > > > -- > > > > _______________________________________________ > > > > yocto mailing list > > > > yocto@yoctoproject.org > > > > https://lists.yoctoproject.org/listinfo/yocto > > > > > > -- > > > Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com > > -- > Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto