summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/u-boot-h8300/Makefile66
-rwxr-xr-xscripts/prereq.sh2
-rw-r--r--target/config/Config.in.kernelfmt4
-rw-r--r--target/config/Config.in.tools12
-rw-r--r--target/h8300/Makefile10
-rw-r--r--target/h8300/systems/hitachi-edosk26743
6 files changed, 94 insertions, 3 deletions
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.