| From d9d7d7cf8b27516d45c66daa1bf0a18c878c4e33 Mon Sep 17 00:00:00 2001 |
| From: Carlos Santos <casantos@datacom.ind.br> |
| Date: Sun, 8 May 2016 11:11:39 -0300 |
| Subject: [PATCH] Make FIT support really optional |
| |
| Due to some mistakes in the source code, it was not possible to really |
| turn FIT support off. This commit fixes the problem by means of the |
| following changes: |
| |
| - Enclose "bootm_host_load_image" and "bootm_host_load_images" between |
| checks for CONFIG_FIT_SIGNATURE, in common/bootm.c. |
| |
| - Enclose the declaration of "bootm_host_load_images" between checks for |
| CONFIG_FIT_SIGNATURE, in common/bootm.h. |
| |
| - Condition the compilation and linking of fit_common.o fit_image.o |
| image-host.o common/image-fit.o to CONFIG_FIT=y, in tools/Makefile. |
| |
| Signed-off-by: Carlos Santos <casantos@datacom.ind.br> |
| [fabio: adapt for 2016.07] |
| Signed-off-by: Fabio Estevam <festevam@gmail.com> |
| [Ricardo: fix conditional compilation and linking of the files mentioned above |
| for 2016.07] |
| Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> |
| --- |
| common/bootm.c | 2 ++ |
| include/bootm.h | 2 ++ |
| tools/Makefile | 6 ++---- |
| 3 files changed, 6 insertions(+), 4 deletions(-) |
| |
| diff --git a/common/bootm.c b/common/bootm.c |
| index 2431019..7e1adc8 100644 |
| --- a/common/bootm.c |
| +++ b/common/bootm.c |
| @@ -901,6 +901,7 @@ void memmove_wd(void *to, void *from, size_t len, ulong chunksz) |
| memmove(to, from, len); |
| } |
| |
| +#if defined(CONFIG_FIT_SIGNATURE) |
| static int bootm_host_load_image(const void *fit, int req_image_type) |
| { |
| const char *fit_uname_config = NULL; |
| @@ -965,5 +966,6 @@ int bootm_host_load_images(const void *fit, int cfg_noffset) |
| /* Return the first error we found */ |
| return err; |
| } |
| +#endif |
| |
| #endif /* ndef USE_HOSTCC */ |
| diff --git a/include/bootm.h b/include/bootm.h |
| index 4981377..94d62a1 100644 |
| --- a/include/bootm.h |
| +++ b/include/bootm.h |
| @@ -41,7 +41,9 @@ void lynxkdi_boot(image_header_t *hdr); |
| |
| boot_os_fn *bootm_os_get_boot_func(int os); |
| |
| +#if defined(CONFIG_FIT_SIGNATURE) |
| int bootm_host_load_images(const void *fit, int cfg_noffset); |
| +#endif |
| |
| int boot_selected_os(int argc, char * const argv[], int state, |
| bootm_headers_t *images, boot_os_fn *boot_fn); |
| diff --git a/tools/Makefile b/tools/Makefile |
| index f72294a..ccf5120 100644 |
| --- a/tools/Makefile |
| +++ b/tools/Makefile |
| @@ -54,6 +54,7 @@ mkenvimage-objs := mkenvimage.o os_support.o lib/crc32.o |
| hostprogs-y += dumpimage mkimage |
| hostprogs-$(CONFIG_FIT_SIGNATURE) += fit_info fit_check_sign |
| |
| +FIT_OBJS-$(CONFIG_FIT) := fit_common.o fit_image.o image-host.o common/image-fit.o |
| FIT_SIG_OBJS-$(CONFIG_FIT_SIGNATURE) := common/image-sig.o |
| # Flattened device tree objects |
| LIBFDT_OBJS := $(addprefix lib/libfdt/, \ |
| @@ -68,16 +69,13 @@ ROCKCHIP_OBS = lib/rc4.o rkcommon.o rkimage.o rksd.o rkspi.o |
| # common objs for dumpimage and mkimage |
| dumpimage-mkimage-objs := aisimage.o \ |
| atmelimage.o \ |
| + $(FIT_OBJS-y) \ |
| $(FIT_SIG_OBJS-y) \ |
| common/bootm.o \ |
| lib/crc32.o \ |
| default_image.o \ |
| lib/fdtdec_common.o \ |
| lib/fdtdec.o \ |
| - fit_common.o \ |
| - fit_image.o \ |
| - common/image-fit.o \ |
| - image-host.o \ |
| common/image.o \ |
| imagetool.o \ |
| imximage.o \ |
| -- |
| 2.9.1 |
| |