From: Sathees Balya Date: Thu, 18 Oct 2018 18:14:21 +0000 (+0100) Subject: romlib: Allow patching of romlib functions X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=6baf85b3e01a6c8295a53798bd92e26d517a4196;p=project%2Fbcm63xx%2Fatf.git romlib: Allow patching of romlib functions This change allows patching of functions in the romlib. This can be done by adding "patch" at the end of the jump table entry for the function that needs to be patched in the file jmptbl.i. Functions patched in the jump table list will be built as part of the BL image and the romlib version will not be used Change-Id: Iefb200cb86e2a4b61ad3ee6180d3ecc39bad537f Signed-off-by: Sathees Balya --- diff --git a/lib/romlib/genwrappers.sh b/lib/romlib/genwrappers.sh index bcf670b9..48ee5a43 100755 --- a/lib/romlib/genwrappers.sh +++ b/lib/romlib/genwrappers.sh @@ -31,7 +31,7 @@ do done awk '{sub(/[:blank:]*#.*/,"")} -!/^$/ {print $1*4, $2, $3}' "$@" | +!/^$/ && !/\\tpatch$/ {print $1*4, $2, $3}' "$@" | while read idx lib sym do file=$build/${lib}_$sym diff --git a/lib/romlib/jmptbl.i b/lib/romlib/jmptbl.i index 338cd8a7..5e33e0e1 100644 --- a/lib/romlib/jmptbl.i +++ b/lib/romlib/jmptbl.i @@ -3,6 +3,10 @@ # # SPDX-License-Identifier: BSD-3-Clause # +# Format: +# index lib function [patch] +# Add "patch" at the end of the line to patch a function. For example: +# 14 mbedtls mbedtls_memory_buffer_alloc_init patch 0 rom rom_lib_init 1 fdt fdt_getprop_namelen @@ -32,4 +36,4 @@ 25 mbedtls mbedtls_x509_get_sig_alg 26 mbedtls mbedtls_md_info_from_type 27 c exit -28 c atexit +28 c atexit \ No newline at end of file diff --git a/make_helpers/build_macros.mk b/make_helpers/build_macros.mk index e186fc10..d60a5bf0 100644 --- a/make_helpers/build_macros.mk +++ b/make_helpers/build_macros.mk @@ -338,7 +338,7 @@ LDPATHS = -L${LIB_DIR} LDLIBS += -l$(1) ifeq ($(USE_ROMLIB),1) -LDLIBS := -lwrappers -lc +LIBWRAPPER = -lwrappers endif all: ${LIB_DIR}/lib$(1).a @@ -402,7 +402,7 @@ else endif $$(Q)$$(LD) -o $$@ $$(TF_LDFLAGS) $$(LDFLAGS) -Map=$(MAPFILE) \ --script $(LINKERFILE) $(BUILD_DIR)/build_message.o \ - $(OBJS) $(LDPATHS) $(LDLIBS) $(BL_LIBS) + $(OBJS) $(LDPATHS) $(LIBWRAPPER) $(LDLIBS) $(BL_LIBS) $(DUMP): $(ELF) $${ECHO} " OD $$@"