Thread (1 message) 1 message, 1 author, 2012-08-08

[Buildroot] [PATCH 1/3] buildroot: target: Add Blackfin architecture support in configuration.

From: Sonic Zhang <hidden>
Date: 2012-08-08 02:42:22

On Tue, Aug 7, 2012 at 11:14 AM, Zhang, Sonic [off-list ref] wrote:
Hi Thomas,
quoted
-----Original Message-----
From: Thomas Petazzoni [mailto:thomas.petazzoni at free-electrons.com]
Sent: Monday, August 06, 2012 8:36 PM
To: Sonic Zhang
Cc: Peter Korsgaard; buildroot at busybox.net; buildroot-devel at lackfin.uclinux.org;
Zhang, Sonic
Subject: Re: [PATCH 1/3] buildroot: target: Add Blackfin architecture support in
configuration.

Hello,

Le Mon, 6 Aug 2012 19:17:25 +0800,
Sonic Zhang [off-list ref] a ?crit :
quoted
From: Sonic Zhang <redacted>

Signed-off-by: Sonic Zhang <redacted>
---
 target/Config.in.arch |   19 +++++++++++++++++++
 1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/target/Config.in.arch b/target/Config.in.arch
index 6eaa951..001faf0 100644
--- a/target/Config.in.arch
+++ b/target/Config.in.arch
@@ -131,6 +131,15 @@ config BR2_xtensa
       http://www.tensilica.com/
 endchoice

+config BR2_ABI_FLAT
+    bool
+    default n
+
+config BR2_ABI_ELF
+    bool
+    default y
+    depends on !BR2_ABI_FLAT
Could you expand a bit on why this is needed, and where it will be
used? I have seen those used in various places in some of your packages
in your Git repository, but I am not sure the use cases were actually
valid.
Blackfin toolchain support both the FLAT ABI and ELF(FDPIC) ABI. Some features are different between them, such as the default stack size. The default stack size of FLAT binary is only 4k bytes, while it is 128k for ELF binary. Although 4k is enough for most application, it may be too small for the others such as bonnie++. The flat to enlarge stack size "-Wl,-elf2flt=-s64000" only apply to FLAT toolchain with BF2_ABI_FLAT defined.

quoted
quoted
 config BR2_microblaze
     bool
     default y if BR2_microblazeel || BR2_microblazebe
@@ -231,8 +240,18 @@ choice
     default BR2_BFIN_FDPIC
 config BR2_BFIN_FDPIC
     bool "FDPIC"
+    select BR2_ABI_ELF
 config BR2_BFIN_FLAT
     bool "FLAT"
+    select BR2_ABI_FLAT
+    select BR2_PREFER_STATIC_LIB
+config BR2_BFIN_FLAT_SEP_DATA
+    bool "FLAT (Separate data)"
+    select BR2_ABI_FLAT
+    select BR2_PREFER_STATIC_LIB
+config BR2_BFIN_SHARED_FLAT
+    bool "Shared FLAT"
+    select BR2_ABI_FLAT
     select BR2_PREFER_STATIC_LIB
 endchoice
Are these "FLAT (Separate data)" and "Shared FLAT" use cases actually
used in practice by people? I'm not a Blackfin expert, so I don't know
what's used in the field.
Though I don't know if our end customers use shared FLAT in their blackfin based products, we do support these binary formats in blackfin GNU toolchain and Linux distribution for years.
Because Stuart is out these days, I cc David as well.

Regards,

Sonic
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help