[new uImage] Add libfdt support to mkimage
Signed-off-by: Bartlomiej Sieka <tur@semihalf.com>
This commit is contained in:
parent
a6e530f00d
commit
8cf30809a8
3
Makefile
3
Makefile
|
@ -2927,6 +2927,9 @@ clobber: clean
|
||||||
@rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL)
|
@rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL)
|
||||||
@rm -f $(obj)tools/crc32.c $(obj)tools/environment.c $(obj)tools/env/crc32.c
|
@rm -f $(obj)tools/crc32.c $(obj)tools/environment.c $(obj)tools/env/crc32.c
|
||||||
@rm -f $(obj)tools/sha1.c $(obj)tools/image.c
|
@rm -f $(obj)tools/sha1.c $(obj)tools/image.c
|
||||||
|
@rm -f $(obj)tools/fdt.c $(obj)tools/fdt_ro.c $(obj)tools/fdt_rw.c
|
||||||
|
@rm -f $(obj)tools/fdt_strerror.c $(obj)tools/fdt_wip.c
|
||||||
|
@rm -f $(obj)tools/libfdt_internal.h
|
||||||
@rm -f $(obj)tools/inca-swap-bytes $(obj)cpu/mpc824x/bedbug_603e.c
|
@rm -f $(obj)tools/inca-swap-bytes $(obj)cpu/mpc824x/bedbug_603e.c
|
||||||
@rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm
|
@rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm
|
||||||
@[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -lname "*" -print | xargs rm -f
|
@[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -lname "*" -print | xargs rm -f
|
||||||
|
|
|
@ -24,7 +24,11 @@
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
#include <asm/byteorder.h>
|
#include <asm/byteorder.h>
|
||||||
|
#ifdef USE_HOSTCC
|
||||||
|
#include <string.h>
|
||||||
|
#else
|
||||||
#include <linux/string.h>
|
#include <linux/string.h>
|
||||||
|
#endif /* USE_HOSTCC */
|
||||||
|
|
||||||
extern struct fdt_header *fdt; /* Pointer to the working fdt */
|
extern struct fdt_header *fdt; /* Pointer to the working fdt */
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,12 @@
|
||||||
*/
|
*/
|
||||||
#include "libfdt_env.h"
|
#include "libfdt_env.h"
|
||||||
|
|
||||||
|
#ifndef USE_HOSTCC
|
||||||
#include <fdt.h>
|
#include <fdt.h>
|
||||||
#include <libfdt.h>
|
#include <libfdt.h>
|
||||||
|
#else
|
||||||
|
#include "fdt_host.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libfdt_internal.h"
|
#include "libfdt_internal.h"
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,12 @@
|
||||||
*/
|
*/
|
||||||
#include "libfdt_env.h"
|
#include "libfdt_env.h"
|
||||||
|
|
||||||
|
#ifndef USE_HOSTCC
|
||||||
#include <fdt.h>
|
#include <fdt.h>
|
||||||
#include <libfdt.h>
|
#include <libfdt.h>
|
||||||
|
#else
|
||||||
|
#include "fdt_host.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libfdt_internal.h"
|
#include "libfdt_internal.h"
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,12 @@
|
||||||
*/
|
*/
|
||||||
#include "libfdt_env.h"
|
#include "libfdt_env.h"
|
||||||
|
|
||||||
|
#ifndef USE_HOSTCC
|
||||||
#include <fdt.h>
|
#include <fdt.h>
|
||||||
#include <libfdt.h>
|
#include <libfdt.h>
|
||||||
|
#else
|
||||||
|
#include "fdt_host.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libfdt_internal.h"
|
#include "libfdt_internal.h"
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,12 @@
|
||||||
*/
|
*/
|
||||||
#include "libfdt_env.h"
|
#include "libfdt_env.h"
|
||||||
|
|
||||||
|
#ifndef USE_HOSTCC
|
||||||
#include <fdt.h>
|
#include <fdt.h>
|
||||||
#include <libfdt.h>
|
#include <libfdt.h>
|
||||||
|
#else
|
||||||
|
#include "fdt_host.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libfdt_internal.h"
|
#include "libfdt_internal.h"
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,12 @@
|
||||||
*/
|
*/
|
||||||
#include "libfdt_env.h"
|
#include "libfdt_env.h"
|
||||||
|
|
||||||
|
#ifndef USE_HOSTCC
|
||||||
#include <fdt.h>
|
#include <fdt.h>
|
||||||
#include <libfdt.h>
|
#include <libfdt.h>
|
||||||
|
#else
|
||||||
|
#include "fdt_host.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "libfdt_internal.h"
|
#include "libfdt_internal.h"
|
||||||
|
|
||||||
|
|
|
@ -7,3 +7,10 @@
|
||||||
/mkimage
|
/mkimage
|
||||||
/sha1.c
|
/sha1.c
|
||||||
/ubsha1
|
/ubsha1
|
||||||
|
/image.c
|
||||||
|
/fdt.c
|
||||||
|
/fdt_ro.c
|
||||||
|
/fdt_rw.c
|
||||||
|
/fdt_strerror.c
|
||||||
|
/fdt_wip.c
|
||||||
|
/libfdt_internal.h
|
||||||
|
|
|
@ -37,6 +37,8 @@ endif
|
||||||
#OBJ_FILES += mpc86x_clk.o
|
#OBJ_FILES += mpc86x_clk.o
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
LIBFDT_OBJ_FILES = fdt.o fdt_ro.o fdt_rw.o fdt_strerror.o fdt_wip.o
|
||||||
|
|
||||||
LOGO_H = $(OBJTREE)/include/bmp_logo.h
|
LOGO_H = $(OBJTREE)/include/bmp_logo.h
|
||||||
|
|
||||||
ifeq ($(LOGO_BMP),)
|
ifeq ($(LOGO_BMP),)
|
||||||
|
@ -120,6 +122,10 @@ CPPFLAGS = -idirafter $(SRCTREE)/include \
|
||||||
-idirafter $(OBJTREE)/include \
|
-idirafter $(OBJTREE)/include \
|
||||||
-DTEXT_BASE=$(TEXT_BASE) -DUSE_HOSTCC
|
-DTEXT_BASE=$(TEXT_BASE) -DUSE_HOSTCC
|
||||||
CFLAGS = $(HOST_CFLAGS) $(CPPFLAGS) -O
|
CFLAGS = $(HOST_CFLAGS) $(CPPFLAGS) -O
|
||||||
|
|
||||||
|
# No -pedantic switch to avoid libfdt compilation warnings
|
||||||
|
FIT_CFLAGS = -Wall $(CPPFLAGS) -O
|
||||||
|
|
||||||
AFLAGS = -D__ASSEMBLY__ $(CPPFLAGS)
|
AFLAGS = -D__ASSEMBLY__ $(CPPFLAGS)
|
||||||
CC = $(HOSTCC)
|
CC = $(HOSTCC)
|
||||||
STRIP = $(HOSTSTRIP)
|
STRIP = $(HOSTSTRIP)
|
||||||
|
@ -137,7 +143,7 @@ $(obj)img2srec$(SFX): $(obj)img2srec.o
|
||||||
$(CC) $(CFLAGS) $(HOST_LDFLAGS) -o $@ $^
|
$(CC) $(CFLAGS) $(HOST_LDFLAGS) -o $@ $^
|
||||||
$(STRIP) $@
|
$(STRIP) $@
|
||||||
|
|
||||||
$(obj)mkimage$(SFX): $(obj)mkimage.o $(obj)crc32.o $(obj)image.o $(obj)sha1.o
|
$(obj)mkimage$(SFX): $(obj)mkimage.o $(obj)crc32.o $(obj)image.o $(obj)sha1.o $(LIBFDT_OBJ_FILES)
|
||||||
$(CC) $(CFLAGS) $(HOST_LDFLAGS) -o $@ $^
|
$(CC) $(CFLAGS) $(HOST_LDFLAGS) -o $@ $^
|
||||||
$(STRIP) $@
|
$(STRIP) $@
|
||||||
|
|
||||||
|
@ -174,10 +180,10 @@ $(obj)sha1.o: $(obj)sha1.c
|
||||||
$(CC) -g $(CFLAGS) -c -o $@ $<
|
$(CC) -g $(CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
$(obj)image.o: $(obj)image.c
|
$(obj)image.o: $(obj)image.c
|
||||||
$(CC) -g $(CFLAGS) -c -o $@ $<
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
$(obj)mkimage.o: $(src)mkimage.c
|
$(obj)mkimage.o: $(src)mkimage.c
|
||||||
$(CC) -g $(CFLAGS) -c -o $@ $<
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
$(obj)ncb.o: $(src)ncb.c
|
$(obj)ncb.o: $(src)ncb.c
|
||||||
$(CC) -g $(CFLAGS) -c -o $@ $<
|
$(CC) -g $(CFLAGS) -c -o $@ $<
|
||||||
|
@ -191,6 +197,21 @@ $(obj)inca-swap-bytes.o: $(src)inca-swap-bytes.c
|
||||||
$(obj)mpc86x_clk.o: $(src)mpc86x_clk.c
|
$(obj)mpc86x_clk.o: $(src)mpc86x_clk.c
|
||||||
$(CC) -g $(CFLAGS) -c -o $@ $<
|
$(CC) -g $(CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
$(obj)fdt.o: $(obj)fdt.c
|
||||||
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
$(obj)fdt_ro.o: $(obj)fdt_ro.c
|
||||||
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
$(obj)fdt_rw.o: $(obj)fdt_rw.c
|
||||||
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
$(obj)fdt_strerror.o: $(obj)fdt_strerror.c
|
||||||
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
|
$(obj)fdt_wip.o: $(obj)fdt_wip.c
|
||||||
|
$(CC) -g $(FIT_CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
subdirs:
|
subdirs:
|
||||||
ifeq ($(TOOLSUBDIRS),)
|
ifeq ($(TOOLSUBDIRS),)
|
||||||
@:
|
@:
|
||||||
|
@ -224,6 +245,30 @@ $(obj)image.c:
|
||||||
@rm -f $(obj)image.c
|
@rm -f $(obj)image.c
|
||||||
ln -s $(src)../common/image.c $(obj)image.c
|
ln -s $(src)../common/image.c $(obj)image.c
|
||||||
|
|
||||||
|
$(obj)fdt.c: libfdt_internal.h
|
||||||
|
@rm -f $(obj)fdt.c
|
||||||
|
ln -s $(src)../libfdt/fdt.c $(obj)fdt.c
|
||||||
|
|
||||||
|
$(obj)fdt_ro.c: libfdt_internal.h
|
||||||
|
@rm -f $(obj)fdt_ro.c
|
||||||
|
ln -s $(src)../libfdt/fdt_ro.c $(obj)fdt_ro.c
|
||||||
|
|
||||||
|
$(obj)fdt_rw.c: libfdt_internal.h
|
||||||
|
@rm -f $(obj)fdt_rw.c
|
||||||
|
ln -s $(src)../libfdt/fdt_rw.c $(obj)fdt_rw.c
|
||||||
|
|
||||||
|
$(obj)fdt_strerror.c: libfdt_internal.h
|
||||||
|
@rm -f $(obj)fdt_strerror.c
|
||||||
|
ln -s $(src)../libfdt/fdt_strerror.c $(obj)fdt_strerror.c
|
||||||
|
|
||||||
|
$(obj)fdt_wip.c: libfdt_internal.h
|
||||||
|
@rm -f $(obj)fdt_wip.c
|
||||||
|
ln -s $(src)../libfdt/fdt_wip.c $(obj)fdt_wip.c
|
||||||
|
|
||||||
|
$(obj)libfdt_internal.h:
|
||||||
|
@rm -f $(obj)libfdt_internal.h
|
||||||
|
ln -s $(src)../libfdt/libfdt_internal.h $(obj)libfdt_internal.h
|
||||||
|
|
||||||
$(LOGO_H): $(obj)bmp_logo $(LOGO_BMP)
|
$(LOGO_H): $(obj)bmp_logo $(LOGO_BMP)
|
||||||
$(obj)./bmp_logo $(LOGO_BMP) >$@
|
$(obj)./bmp_logo $(LOGO_BMP) >$@
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
/*
|
||||||
|
* (C) Copyright 2008 Semihalf
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License as
|
||||||
|
* published by the Free Software Foundation; either version 2 of
|
||||||
|
* the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
||||||
|
* MA 02111-1307 USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef __FDT_HOST_H__
|
||||||
|
#define __FDT_HOST_H__
|
||||||
|
|
||||||
|
/* Make sure to include u-boot version of libfdt include files */
|
||||||
|
#include "../include/fdt.h"
|
||||||
|
#include "../include/libfdt.h"
|
||||||
|
#include "../include/fdt_support.h"
|
||||||
|
|
||||||
|
#endif /* __FDT_HOST_H__ */
|
|
@ -33,6 +33,7 @@
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sha1.h>
|
#include <sha1.h>
|
||||||
|
#include "fdt_host.h"
|
||||||
|
|
||||||
#if defined(__BEOS__) || defined(__NetBSD__) || defined(__APPLE__)
|
#if defined(__BEOS__) || defined(__NetBSD__) || defined(__APPLE__)
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
|
|
Loading…
Reference in New Issue