define Package/uboot-ifxmips
SECTION:=boot
CATEGORY:=Boot Loaders
- DEPENDS:=@TARGET_ifxmips
+ DEPENDS:=@TARGET_ifxmips @BROKEN
TITLE:=U-Boot for Infineon MIPS boards
- URL:=http://www.denx.de/wiki/UBoot/WebHome
+ URL:=http://www.denx.de/wiki/U-Boot
+ MENU:=1
endef
define Build/Prepare
find $(PKG_BUILD_DIR) -name .svn | $(XARGS) rm -rf
endef
+define Package/uboot-ifxmips/config
+ source "$(SOURCE)/Config.in"
+endef
+
UBOOT_CONFIG:=danube
UBOOT_MAKE_OPTS:=\
PLATFORM_CPU=mips32r2 \
UBOOT_RAM_TEXT_BASE=0xA0400000
+A800_FIX:=
+ifeq ($(CONFIG_IFXMIPS_UBOOT_A800),y)
+A800_FIX += -DA800_SWITCH
+endif
+
define Build/Configure
$(MAKE) -s -C $(PKG_BUILD_DIR) \
$(UBOOT_MAKE_OPTS) \
endef
define Build/Compile
- $(MAKE) -s -C $(PKG_BUILD_DIR) \
+ $(MAKE) -C $(PKG_BUILD_DIR) \
$(UBOOT_MAKE_OPTS) \
+ OWRT_FLAGS="-DTEXT_BASE=0xa0400000 ${A800_FIX}" \
ifx_all
- if [ `stat -c%s $(PKG_BUILD_DIR)/u-boot.ifx` -gt 65536 ] ;\
- then \
- echo "u-boot.ifx file has exceeded 64MB in size."; exit 1; \
- fi
+ $(CP) $(PKG_BUILD_DIR)/u-boot.srec $(PKG_BUILD_DIR)/asc.srec
+ $(PKG_BUILD_DIR)/gct \
+ $(PKG_BUILD_DIR)/danube_ref_ddr166.conf \
+ $(PKG_BUILD_DIR)/asc.srec \
+ $(PKG_BUILD_DIR)/u-boot.asc
+ $(MAKE) -C $(PKG_BUILD_DIR) \
+ $(UBOOT_MAKE_OPTS) \
+ OWRT_FLAGS="-DDANUBE_BOOT_FROM_EBU=1 -DTEXT_BASE=0xB0000000 ${A800_FIX}" \
+ clean ifx_all
endef
define Package/uboot-ifxmips/install
mkdir -p $(1)
dd if=$(PKG_BUILD_DIR)/u-boot.ifx of=$(1)/u-boot.ifx bs=64k conv=sync
+ $(CP) $(PKG_BUILD_DIR)/u-boot.asc $(1)
endef
$(eval $(call BuildPackage,uboot-ifxmips))