m68k: disable BR2_BINFMT_FLAT_SEP_DATA for coldfire

BR2_BINFMT_FLAT_SEP_DATA can be used to create XIP userland and works fine
for m68k. Unfortunately a lot of basic packages as pcre are not compileable
because of a CPU or hardware limitation. The reason for failing are very
big functions used in the libraries or application code.

Typical errors are:

Fatal error: Tried to convert PC relative branch to absolute jump
or
error: value -yyyyy out of range

Add kernel patch from 4ec5542679264bc06a0356ef92f06ad7a0abe06d to make
BR2_BINFMT_FLAT_ONE compiled firmware work fine.

Fixes:
  http://autobuild.buildroot.net/results/20b/20b1586757450d6aad8583ad7a787a7ca11acef1/
  http://autobuild.buildroot.net/results/d31/d311955ada1ffcd7f69e82965c8fe33eabe488cd/

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
[Thomas: add comment in Config.in file about sep-data existing on m68k,
but being disabled due to build issues with numerous packages.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Waldemar Brodkorb 2016-08-21 22:40:29 +02:00 committed by Thomas Petazzoni
parent f9aee4b581
commit 446177237c

View File

@ -336,7 +336,12 @@ config BR2_BINFMT_FLAT_ONE
config BR2_BINFMT_FLAT_SEP_DATA config BR2_BINFMT_FLAT_SEP_DATA
bool "Separate data and code region" bool "Separate data and code region"
depends on BR2_m68k || BR2_bfin # this FLAT binary type technically exists on m68k, but fails
# to build numerous packages: due to architecture limitation,
# big functions cannot be built in this mode. They cause build
# failures such as "Tried to convert PC relative branch to
# absolute jump" or "error: value -yyyyy out of range".
depends on BR2_bfin
help help
Allow for the data and text segments to be separated and placed in Allow for the data and text segments to be separated and placed in
different regions of memory. different regions of memory.