9
0
Fork 0

pbl: discard unwind symbol if enable in barebox

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
This commit is contained in:
Jean-Christophe PLAGNIOL-VILLARD 2012-07-27 06:03:12 +08:00
parent 78867e2bbd
commit 53391b5a8d
5 changed files with 29 additions and 2 deletions

View File

@ -5,6 +5,7 @@ config ARM
select HAVE_CONFIGURABLE_MEMORY_LAYOUT
select HAVE_CONFIGURABLE_TEXT_BASE
select HAVE_PBL_IMAGE
select HAVE_IMAGE_COMPRESSION
default y
config ARM_AMBA

View File

@ -197,6 +197,10 @@ ifeq ($(CONFIG_ARCH_DAVINCI),y)
KBUILD_IMAGE := barebox.ubl
endif
ifdef CONFIG_IMAGE_COMPRESSION
KBUILD_IMAGE := zbarebox.bin
endif
pbl := arch/arm/pbl
zbarebox.S zbarebox.bin zbarebox: barebox.bin
$(Q)$(MAKE) $(build)=$(pbl) $(pbl)/$@

View File

@ -1,7 +1,14 @@
suffix_$(CONFIG_IMAGE_COMPRESSION_LZO) = lzo
OBJCOPYFLAGS_zbarebox.bin = -O binary
piggy_o := piggy.$(suffix_y).o
targets := zbarebox.lds zbarebox zbarebox.bin zbarebox.S
targets := zbarebox.lds zbarebox zbarebox.bin zbarebox.S \
$(piggy_o) piggy.$(suffix_y)
# Make sure files are removed during clean
extra-y += piggy.gzip piggy.lzo piggy.lzma piggy.xzkern
$(obj)/zbarebox.bin: $(obj)/zbarebox FORCE
$(call if_changed,objcopy)
@ -12,7 +19,7 @@ $(obj)/zbarebox.S: $(obj)/zbarebox FORCE
$(call if_changed,disasm)
LDFLAGS_zbarebox := -Map zbarebox.map
zbarebox-common := $(barebox-pbl-common)
zbarebox-common := $(barebox-pbl-common) $(obj)/$(piggy_o)
zbarebox-lds := $(obj)/zbarebox.lds
quiet_cmd_zbarebox__ ?= LD $@
@ -23,3 +30,8 @@ quiet_cmd_zbarebox__ ?= LD $@
$(obj)/zbarebox: $(zbarebox-lds) $(zbarebox-common) FORCE
$(call if_changed,zbarebox__)
$(obj)/piggy.$(suffix_y): $(obj)/../../../barebox.bin FORCE
$(call if_changed,$(suffix_y))
$(obj)/$(piggy_o): $(obj)/piggy.$(suffix_y) FORCE

6
arch/arm/pbl/piggy.lzo.S Normal file
View File

@ -0,0 +1,6 @@
.section .piggydata,#alloc
.globl input_data
input_data:
.incbin "arch/arm/pbl/piggy.lzo"
.globl input_data_end
input_data_end:

View File

@ -46,6 +46,10 @@ SECTIONS
__bare_init_end = .;
*(.text*)
}
/* Discard unwind if enable in barebox */
/DISCARD/ : { *(.ARM.ex*) }
BAREBOX_BARE_INIT_SIZE
. = ALIGN(4);