From 2e10cd9c4378cc3beb3d91d004b8e48e63f0bd57 Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Sun, 19 Feb 2017 00:54:57 +0100 Subject: more h8300 work, add u-boot --- package/u-boot-h8300/Makefile | 66 ++++++++++++++++++++++++++++++++++ scripts/prereq.sh | 2 +- target/config/Config.in.kernelfmt | 4 +++ target/config/Config.in.tools | 12 +++++++ target/h8300/Makefile | 10 +++++- target/h8300/systems/hitachi-edosk2674 | 3 +- 6 files changed, 94 insertions(+), 3 deletions(-) create mode 100644 package/u-boot-h8300/Makefile diff --git a/package/u-boot-h8300/Makefile b/package/u-boot-h8300/Makefile new file mode 100644 index 000000000..e26b4fd59 --- /dev/null +++ b/package/u-boot-h8300/Makefile @@ -0,0 +1,66 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(ADK_TOPDIR)/rules.mk + +PKG_NAME:= u-boot +PKG_VERSION:= h8300 +PKG_GIT:= branch +PKG_RELEASE:= 1 +PKG_DESCR:= portable bootloader +PKG_SECTION:= base/boot +HOST_BUILDDEP:= libressl-host dtc-host +PKG_BUILDDEP:= u-boot-h8300-host +PKG_SITES:= git://git.pf.osdn.jp/gitroot/y/ys/ysato/uboot.git + + +PKG_SYSTEM_DEPENDS:= hitachi-edosk2674 + +include $(ADK_TOPDIR)/mk/host.mk +include $(ADK_TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,U_BOOT,u-boot,$(PKG_VERSION)-$(PKG_RELEASE))) +$(eval $(call PKG_template,U_BOOT,u-boot,$(PKG_VERSION)-$(PKG_RELEASE),$(PKG_DEPENDS),$(PKG_DESCR),$(PKG_SECTION))) + +UBOOT:= u-boot.bin +CONFIG:= clearfog_defconfig + +HOST_MAKE_FLAGS+= HOSTCFLAGS="$(HOST_CPPFLAGS) $(HOST_CFLAGS)" \ + HOSTLDFLAGS="$(HOST_LDFLAGS) -ldl" +HOST_STYLE:= manual +CONFIG_STYLE:= manual +BUILD_STYLE:= manual +INSTALL_STYLE:= manual + +host-build: + (cd $(WRKBUILD) && env $(HOST_MAKE_ENV) $(MAKE) -f $(MAKE_FILE) \ + $(HOST_MAKE_FLAGS) sandbox_defconfig ) + (cd $(WRKBUILD) && env $(HOST_MAKE_ENV) $(MAKE) -f $(MAKE_FILE) \ + $(HOST_MAKE_FLAGS) tools $(MAKE_TRACE) ) + +u-boot-hostinstall: + $(INSTALL_BIN) $(WRKBUILD)/tools/mk{,env}image \ + $(STAGING_HOST_DIR)/usr/bin + +do-configure: + (cd $(WRKBUILD) && $(MAKE) $(CONFIG)) + +do-build: + (cd $(WRKBUILD) && env \ + PATH='$(HOST_PATH)' \ + CROSS_COMPILE='$(TARGET_CROSS)' \ + GCC_HONOUR_COPTS=s $(MAKE)) +ifneq ($(OS_FOR_BUILD),Darwin) + (cd $(WRKBUILD) && env \ + PATH='$(HOST_PATH)' \ + CROSS_COMPILE='$(TARGET_CROSS)' \ + GCC_HONOUR_COPTS=s $(MAKE) env) +endif + +u-boot-install: + $(CP) $(WRKBUILD)/$(UBOOT) $(FW_DIR) + $(INSTALL_DIR) $(IDIR_U_BOOT)/etc + $(CP) ./files/fw_env.config $(IDIR_U_BOOT)/etc + +include $(ADK_TOPDIR)/mk/host-bottom.mk +include $(ADK_TOPDIR)/mk/pkg-bottom.mk diff --git a/scripts/prereq.sh b/scripts/prereq.sh index 57652ed5f..842796a8f 100755 --- a/scripts/prereq.sh +++ b/scripts/prereq.sh @@ -660,7 +660,7 @@ if [ $host_build_m4 -eq 1 ]; then printf "\t%s\n" "select ADK_HOST_BUILD_M4" >> $topdir/target/config/Config.in.prereq fi if [ $host_build_mkimage -eq 1 ]; then - printf "\t%s\n" "select ADK_HOST_BUILD_U_BOOT" >> $topdir/target/config/Config.in.prereq + printf "\t%s\n" "select ADK_HOST_NEED_U_BOOT" >> $topdir/target/config/Config.in.prereq fi if [ $host_build_mksh -eq 1 ]; then printf "\t%s\n" "select ADK_HOST_BUILD_MKSH" >> $topdir/target/config/Config.in.prereq diff --git a/target/config/Config.in.kernelfmt b/target/config/Config.in.kernelfmt index dbc21f56a..2a2ef5931 100644 --- a/target/config/Config.in.kernelfmt +++ b/target/config/Config.in.kernelfmt @@ -16,6 +16,9 @@ config ADK_TARGET_KERNEL_IMAGE config ADK_TARGET_KERNEL_UIMAGE bool +config ADK_TARGET_KERNEL_UIMAGEBIN + bool + config ADK_TARGET_KERNEL_BZIMAGE bool @@ -31,6 +34,7 @@ config ADK_TARGET_KERNEL_XIPIMAGE config ADK_TARGET_KERNEL string default "uImage" if ADK_TARGET_KERNEL_UIMAGE + default "uImage.bin" if ADK_TARGET_KERNEL_UIMAGEBIN default "zImage" if ADK_TARGET_KERNEL_ZIMAGE default "Image" if ADK_TARGET_KERNEL_IMAGE default "linux.bin" if ADK_TARGET_KERNEL_LINUXBIN diff --git a/target/config/Config.in.tools b/target/config/Config.in.tools index 66b717cda..adff5da98 100644 --- a/target/config/Config.in.tools +++ b/target/config/Config.in.tools @@ -93,6 +93,14 @@ config ADK_HOST_BUILD_GREP config ADK_HOST_BUILD_U_BOOT bool + depends on !ADK_TARGET_ARCH_H8300 + default y if ADK_HOST_NEED_UBOOT + default n + +config ADK_HOST_BUILD_U_BOOT_H8300 + bool + depends on ADK_TARGET_ARCH_H8300 + default y if ADK_HOST_NEED_UBOOT default n config ADK_HOST_BUILD_OPENOCD @@ -275,6 +283,10 @@ config ADK_HOST_BUILD_KMOD bool default n +config ADK_HOST_NEED_U_BOOT + bool + default n + source "target/config/Config.in.prereq" config ADK_COMPRESSION_TOOL diff --git a/target/h8300/Makefile b/target/h8300/Makefile index 6c0add73e..48a8b1e52 100644 --- a/target/h8300/Makefile +++ b/target/h8300/Makefile @@ -6,10 +6,14 @@ include $(ADK_TOPDIR)/mk/kernel-build.mk include $(ADK_TOPDIR)/mk/image.mk KERNEL:=$(LINUX_DIR)/vmlinux +OSTRIP:=-R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id +ifeq ($(ADK_TARGET_KERNEL_ZIMAGE),y) +KERNEL:=$(LINUX_DIR)/arch/h8300/boot/zImage +OSTRIP:= +endif ifeq ($(ADK_TARGET_KERNEL_VMLINUX_SREC),y) KERNEL:=$(LINUX_DIR)/arch/h8300/boot/vmlinux.srec endif -OSTRIP:=-R .reginfo -R .notes -R .note -R .comment -R .mdebug -R .note.gnu.build-id # target helper text ifeq ($(ADK_TARGET_FS),initramfs) @@ -43,7 +47,11 @@ targethelp: endif kernel-strip: +ifneq ($(OSTRIP),) $(TARGET_CROSS)objcopy $(OSTRIP) -S $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL) +else + @cp $(KERNEL) $(BUILD_DIR)/$(TARGET_KERNEL) +endif kernel-install: kernel-strip @cp $(BUILD_DIR)/$(TARGET_KERNEL) $(FW_DIR)/$(TARGET_KERNEL) diff --git a/target/h8300/systems/hitachi-edosk2674 b/target/h8300/systems/hitachi-edosk2674 index 74fcbc1cd..a9a125fcc 100644 --- a/target/h8300/systems/hitachi-edosk2674 +++ b/target/h8300/systems/hitachi-edosk2674 @@ -2,8 +2,9 @@ config ADK_TARGET_SYSTEM_HITACHI_EDOSK2674 bool "Hitachi EDOSK2674" select ADK_TARGET_CPU_H8S select ADK_TARGET_PACKAGE_TXZ - select ADK_TARGET_KERNEL_VMLINUX_SREC select ADK_TARGET_KERNEL_WITH_COMPRESSION + select ADK_HOST_BUILD_U_BOOT_H8300 + select ADK_TARGET_KERNEL_UIMAGEBIN help Hitachi EDOSK2674 H8S development board. -- cgit v1.2.3