From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v3 1/2] host-zynq-boot-bin: new package
Date: Fri, 3 Jul 2015 19:33:07 +0200 [thread overview]
Message-ID: <20150703173306.GA3652@free.fr> (raw)
In-Reply-To: <1435063751-27344-2-git-send-email-xvikto03@stud.fit.vutbr.cz>
Jan, All,
On 2015-06-23 14:49 +0200, Jan Viktorin spake thusly:
> From: Jan Viktorin <viktorin@rehivetech.com>
>
> The package creates file images/boot.bin to boot
> Xilinx Zynq based boards. It might not work with
> U-Boot older then 2015.07.
>
> The script zynq-boot-bin.py is contained in the
> Xilinx repository of U-Boot (it is not in upstream).
>
> Signed-off-by: Jan Viktorin <viktorin@rehivetech.com>
[--SNIP--]
> diff --git a/package/zynq-boot-bin/zynq-boot-bin.mk b/package/zynq-boot-bin/zynq-boot-bin.mk
> new file mode 100644
> index 0000000..aff4593
> --- /dev/null
> +++ b/package/zynq-boot-bin/zynq-boot-bin.mk
> @@ -0,0 +1,24 @@
> +################################################################################
> +#
> +# zynq-boot-bin
> +#
> +################################################################################
> +
> +ZYNQ_BOOT_BIN_VERSION = xilinx-v2015.1
> +ZYNQ_BOOT_BIN_SOURCE = zynq-boot-bin.py
> +ZYNQ_BOOT_BIN_SITE = https://raw.githubusercontent.com/Xilinx/u-boot-xlnx/$(ZYNQ_BOOT_BIN_VERSION)/tools
Missing licensing information:
ZYNQ_BOOT_BIN_LICENSE = foo license...
ZYNQ_BOOT_BIN_LICENSE_FILES = License-file
> +HOST_ZYNQ_BOOT_BIN_INSTALL_STAGING = NO
> +HOST_ZYNQ_BOOT_BIN_INSTALL_IMAGES = YES
Since this is a host-only package, you need not specify either;
- install_staging already defaults to no,
- both are anyway only valid for target packages.
> +HOST_ZYNQ_BOOT_BIN_DEPENDENCIES = uboot
> +
> +define HOST_ZYNQ_BOOT_BIN_EXTRACT_CMDS
> + @cp $(DL_DIR)/$(ZYNQ_BOOT_BIN_SOURCE) $(@D)
> +endef
> +
> +define HOST_ZYNQ_BOOT_BIN_BUILD_CMDS
> + @env python2 $(@D)/zynq-boot-bin.py -o $(BINARIES_DIR)/boot.bin \
That mught be an indication that it should depend on host-python, no?
> + -u $(BINARIES_DIR)/$(notdir $(call qstrip,$(BR2_TARGET_UBOOT_SPL_NAME)))
> +endef
Although what you wrote does work, it is not absolutely correct: the
build commands should just really build, not install anything in the
output directories.
You should generate the files in the package build directory, and
provide a command that does the install (even if it is just copying the
generated files).
> +$(eval $(host-generic-package))
But, then since you install in $(BINARIES_DIR), which is definitely not
what we usually do for host packages. The expected output of a host
package is to install something in $(HOST_DIR), so that it can later be
used (e.g. by another package, or by a post-build/post-image script)
Here's what I think should be done:
ZYNQ_BOOT_BIN_VERSION = xilinx-v2015.1
ZYNQ_BOOT_BIN_SOURCE = zynq-boot-bin.py
ZYNQ_BOOT_BIN_SITE = https://raw.githubusercontent.com/Xilinx/u-boot-xlnx/$(ZYNQ_BOOT_BIN_VERSION)/tools
ZYNQ_BOOT_BIN_LICENSE = GPLv3+
# No license file, license in file itself
HOST_ZYNQ_BOOT_BIN_DEPENDENCIES = host-python
define HOST_ZYNQ_BOOT_BIN_INSTALL_CMDS
@cp $(DL_DIR)/$(ZYNQ_BOOT_BIN_SOURCE) \
$(HOST_DIR)/usr/bin/$(ZYNQ_BOOT_BIN_SOURCE)
endef
$(eval $(hhost-generic-package))
And then in the board README file, state something along the lines:
---8<---
To finalise the boot device, run the following command:
$ ./output/host/usr/bin/zynq-boot-bin.py \
-u output/images/boot.bin \
-o /path/to/the/boot-stuff
---8<---
(you get the idea)
Note: that's what we do for the Raspberry Pi, for example, where we
install the 'mkknlimg' utility in $(HOST_DIR) and tell the user how to
use it in the board readme file:
---8<---
The kernel image must be marked with a special header so that the
bootloader of the RaspberryPi knows it supports Device Tree:
$ ./output/host/usr/bin/mkknlimg output/images/zImage \
/mnt/mountpointboot/zImage
---8<---
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2015-07-03 17:33 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-18 16:27 [Buildroot] [PATCH 1/2] zedboard: Upgrade to Linux xilinx-v2015.1 (3.18) Jan Viktorin
2015-06-18 16:27 ` [Buildroot] [PATCH 2/2] zedboard: Upgrade to U-Boot 2015.07 Jan Viktorin
2015-06-18 21:18 ` Thomas Petazzoni
2015-06-19 13:38 ` [Buildroot] [PATCH v1 0/2] Make Buildroot for Zedboard independent on Xilinx tools Jan Viktorin
2015-06-19 19:59 ` Arnout Vandecappelle
2015-06-20 8:26 ` Jan Viktorin
2015-06-20 9:30 ` Arnout Vandecappelle
2015-06-19 13:40 ` [Buildroot] [PATCH v1 1/2] host-zynq-boot-bin: new package Jan Viktorin
2015-06-19 13:40 ` [Buildroot] [PATCH v1 2/2] zedboard: Upgrade to U-Boot 2015.07 Jan Viktorin
2015-06-22 11:15 ` [Buildroot] [PATCH v2 0/2] Make Buildroot for Zedboard independent on Xilinx tools Jan Viktorin
2015-06-22 11:15 ` [Buildroot] [PATCH v2 1/2] host-zynq-boot-bin: new package Jan Viktorin
2015-06-22 17:32 ` Baruch Siach
2015-06-22 21:58 ` Arnout Vandecappelle
2015-06-22 11:15 ` [Buildroot] [PATCH v2 2/2] zedboard: Upgrade to U-Boot 2015.07 Jan Viktorin
2015-06-23 12:49 ` [Buildroot] [PATCH v3 0/2] Make Buildroot for Zedboard independent on Xilinx tools Jan Viktorin
2015-06-23 12:49 ` [Buildroot] [PATCH v3 1/2] host-zynq-boot-bin: new package Jan Viktorin
2015-07-03 17:33 ` Yann E. MORIN [this message]
2015-07-03 20:00 ` Arnout Vandecappelle
2015-07-03 21:51 ` Yann E. MORIN
2015-07-03 23:44 ` Jan Viktorin
2015-07-04 14:07 ` Thomas Petazzoni
2015-07-14 15:12 ` [Buildroot] [PATCH v4 0/7 Make Buildroot for Zedboard independent on Xilinx tools Jan Viktorin
2015-07-14 15:14 ` [Buildroot] [PATCH v4 3/7] boot/uboot: Add support for dtb.img format Jan Viktorin
2015-07-14 18:51 ` Maxime Hadjinlian
2015-07-14 22:09 ` Thomas Petazzoni
2015-07-14 15:14 ` [Buildroot] [PATCH v4 2/7] host-zynq-boot-bin: new package Jan Viktorin
2015-07-18 21:18 ` Thomas Petazzoni
2015-07-14 15:14 ` [Buildroot] [PATCH v4 5/7] zedboard: Generate BOOT.BIN automatically Jan Viktorin
2015-07-14 15:16 ` [Buildroot] [PATCH v4 4/7] boot/uboot: Generate BOOT.BIN file when building for Xilinx Zynq Jan Viktorin
2015-07-18 21:19 ` Thomas Petazzoni
2015-07-14 15:16 ` [Buildroot] [PATCH v4 6/7] zedboard: Patch default U-Boot environment for zedboard Jan Viktorin
2015-07-18 21:19 ` Thomas Petazzoni
2015-07-14 15:16 ` [Buildroot] [PATCH v4 7/7] zedboard: Update readme.txt to reflect BOOT.BIN generation Jan Viktorin
2015-07-18 21:19 ` Thomas Petazzoni
2015-07-14 15:17 ` [Buildroot] [PATCH v4 1/7] docs/manual: Fix trivial typo Jan Viktorin
2015-07-14 18:13 ` Maxime Hadjinlian
2015-07-14 21:57 ` Thomas Petazzoni
2015-06-23 12:49 ` [Buildroot] [PATCH v3 2/2] zedboard: Upgrade to U-Boot 2015.07 Jan Viktorin
2015-07-02 12:40 ` [Buildroot] [PATCH v3 0/2] Make Buildroot for Zedboard independent on Xilinx tools Jan Viktorin
2015-07-03 17:40 ` Yann E. MORIN
2015-07-03 23:52 ` Jan Viktorin
2015-06-18 21:15 ` [Buildroot] [PATCH 1/2] zedboard: Upgrade to Linux xilinx-v2015.1 (3.18) Thomas Petazzoni
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150703173306.GA3652@free.fr \
--to=yann.morin.1998@free.fr \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.