#
-# Copyright (C) 2009 OpenWrt.org
+# Copyright (C) 2009-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
UBINIZE_OPTS = -m 2048 -p 128KiB -s 512
endif
+UIMAGE:=$(BIN_DIR)/$(IMG_PREFIX)-uImage.bin
+
+define kernel_entry
+0x$(shell $(TARGET_CROSS)nm $(1) 2>/dev/null | grep " kernel_entry" | cut -f1 -d ' ')
+endef
+
+
+define MkImageGzip
+ gzip -9 -c $(1) > $(1).gz
+ mkimage -A mips -O linux -T kernel -a 0x80010000 -C gzip \
+ -e $(call kernel_entry,$(LINUX_DIR)/vmlinux) -n 'MIPS OpenWrt Linux-$(LINUX_VERSION)' \
+ -d $(1).gz $(2)
+endef
+
define Image/BuildKernel
- cp $(KDIR)/linux-$(LINUX_VERSION)/arch/mips/boot/uImage $(BIN_DIR)/openwrt-$(BOARD)-uImage.bin
+ $(call MkImageGzip,$(KDIR)/vmlinux,$(UIMAGE))
endef
define Image/Build/squashfs
endef
define Image/Build
- dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/openwrt-$(BOARD)-$(SUBTARGET)-root.$(1) bs=128k conv=sync
+ dd if=$(KDIR)/root.$(1) of=$(BIN_DIR)/$(IMG_PREFIX)-root.$(1) bs=128k conv=sync
endef
$(eval $(call BuildImage))