openwrt/package/boot/uboot-fritz4040/Makefile

61 lines
1.5 KiB
Makefile
Raw Normal View History

#
# Copyright (C) 2013-2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_SOURCE_URL:=https://github.com/chunkeey/FritzBox-4040-UBOOT
PKG_SOURCE_PROTO:=git
uboot-fritz4040: update package to 2019-01-25 David Bauer reported a u-boot crash (data abort) at a odd place (byteswap) when he ran ping/tftp on his 7530. |(FRITZ7530) # ping 192.168.1.70 |eth0 PHY0 up Speed :1000 Full duplex |eth0 PHY1 Down Speed :10 Half duplex |eth0 PHY2 Down Speed :10 Half duplex |eth0 PHY3 Down Speed :10 Half duplex |eth0 PHY4 Down Speed :10 Half duplex |Using eth0 device |data abort |pc : [<84234774>] lr : [<842351a4>] |sp : 8412fdb0 ip : 0000009b fp : 00000000 |r10: 00000000 r9 : 00000001 r8 : 8412ff68 |r7 : 00000000 r6 : 0000002a r5 : 84244e90 r4 : 8425e28e |r3 : 84244e90 r2 : 14000045 r1 : 8412fdb0 r0 : 8425e28e |Flags: nZCv IRQs off FIQs off Mode SVC_32 |Resetting CPU ... | |resetting ... This issue is caused by switch from gcc 5.5 to 7.1+ as explained in the upstream patch: |From a768e513b07b5999a8e7d7740ac8d9da04ee7e51 Mon Sep 17 00:00:00 2001 |From: Denis Pynkin <denis.pynkin@collabora.com> |Date: Fri, 21 Jul 2017 19:28:42 +0300 |Subject: [PATCH] net: Use packed structures for networking | |PXE boot is broken with GCC 7.1 due option '-fstore-merging' enabled |by default for '-O2': | |BOOTP broadcast 1 |data abort |pc : [<8ff8bb30>] lr : [<00004f1f>] |reloc pc : [<17832b30>] lr : [<878abf1f>] |sp : 8f558bc0 ip : 00000000 fp : 8ffef5a4 |r10: 8ffed248 r9 : 8f558ee0 r8 : 8ffef594 |r7 : 0000000e r6 : 8ffed700 r5 : 00000000 r4 : 8ffed74e |r3 : 00060101 r2 : 8ffed230 r1 : 8ffed706 r0 : 00000ddd |Flags: nzcv IRQs off FIQs off Mode S | |Core reason is usage of structures for network headers without packed |attribute. Reported-by: David Bauer <mail@david-bauer.net> Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
2019-01-25 17:22:28 +00:00
PKG_SOURCE_VERSION:=a768e513b07b5999a8e7d7740ac8d9da04ee7e51
PKG_SOURCE_DATE:=2019-01-25
PKG_MIRROR_HASH:=eb552c946bcad53763557b19703b10210f7acabf0d135759beddb7b11fa4ef25
PKG_RELEASE:=1
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
define U-Boot/Default
BUILD_TARGET:=ipq40xx
endef
define U-Boot/fritz4040
NAME:=FritzBox 4040
UBOOT_IMAGE:=uboot-fritz4040.bin
BUILD_DEVICES:=avm_fritzbox-4040
endef
UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
UBOOT_MAKE_FLAGS = USE_PRIVATE_LIBGCC=yes
export DTC
define Build/Configure
$(Build/Configure/U-Boot)
$(HOSTCC) -o $(PKG_BUILD_DIR)/fritz/lzma2eva $(PKG_BUILD_DIR)/fritz/src/lzma2eva.c
$(HOSTCC) -o $(PKG_BUILD_DIR)/fritz/tichksum $(PKG_BUILD_DIR)/fritz/src/tichksum.c
ln -sf $(STAGING_DIR_HOST)/bin/lzma $(PKG_BUILD_DIR)/fritz
endef
define Build/Compile
$(Build/Compile/U-Boot)
(cd $(PKG_BUILD_DIR); ./fritz/fritzcreator.sh;)
endef
define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
$(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(UBOOT_IMAGE)
endef
define Package/u-boot/install
$(Package/u-boot/install/default)
$(INSTALL_BIN) $(PKG_BUILD_DIR)/upload-to-f4040.sh $(1)/
endef
UBOOT_TARGETS := fritz4040
$(eval $(call BuildPackage/U-Boot))