All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Sören Brinkmann" <soren.brinkmann@xilinx.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 2/2] ARM: zynq: add default ps7_init_gpl.c/h for Zed, MicroZed, ZC70x
Date: Sat, 11 Apr 2015 13:42:06 -0700	[thread overview]
Message-ID: <ae37c5e1-dfc2-46b3-b3a1-36e8b4aa4e95@BL2FFO11FD016.protection.gbl> (raw)
In-Reply-To: <1428573864-22560-3-git-send-email-yamada.masahiro@socionext.com>

On Thu, 2015-04-09 at 07:04PM +0900, Masahiro Yamada wrote:
> Due to licensing issues, the files ps7_init.c/h are not able to be
> distributed with U-Boot source code.  Recent Xilinx tools also
> provide the GPL version (ps7_init_gpl.c/h), compatible with U-Boot
> license.
> 
> Prior to this commit, we had to copy ps7_init code into
> board/xilinx/zynq/ before the compile.
> 
> To be more user-friendly, let's include ps7_init_gpl.c/h for
> Zedboard, MicroZed, ZC702, ZC706.
> 
> These init code have been taken from the hwplatform_templates
> directory of Xilinx SDK 2014.4.
> 
> You can still use customized ps7_init code by enabling
> CONFIG_ZYNQ_CUSTOM_INIT.
> 
> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
> ---
> 
>  arch/arm/cpu/armv7/zynq/Kconfig                    |    10 +
>  board/xilinx/zynq/Makefile                         |    22 +-
>  .../zynq/MicroZed_hw_platform/ps7_init_gpl.c       | 12978 ++++++++++++++++++
>  .../zynq/MicroZed_hw_platform/ps7_init_gpl.h       |   130 +
>  board/xilinx/zynq/ZC702_hw_platform/ps7_init_gpl.c | 13311 +++++++++++++++++++
>  board/xilinx/zynq/ZC702_hw_platform/ps7_init_gpl.h |   130 +
>  board/xilinx/zynq/ZC706_hw_platform/ps7_init_gpl.c | 13218 ++++++++++++++++++
>  board/xilinx/zynq/ZC706_hw_platform/ps7_init_gpl.h |   130 +
>  .../zynq/{ => custom_hw_platform}/.gitignore       |     0
>  .../xilinx/zynq/{ => custom_hw_platform}/legacy.c  |     0
>  board/xilinx/zynq/zed_hw_platform/ps7_init_gpl.c   | 12876 ++++++++++++++++++
>  board/xilinx/zynq/zed_hw_platform/ps7_init_gpl.h   |   130 +
>  12 files changed, 52931 insertions(+), 4 deletions(-)
>  create mode 100644 board/xilinx/zynq/MicroZed_hw_platform/ps7_init_gpl.c
>  create mode 100644 board/xilinx/zynq/MicroZed_hw_platform/ps7_init_gpl.h
>  create mode 100644 board/xilinx/zynq/ZC702_hw_platform/ps7_init_gpl.c
>  create mode 100644 board/xilinx/zynq/ZC702_hw_platform/ps7_init_gpl.h
>  create mode 100644 board/xilinx/zynq/ZC706_hw_platform/ps7_init_gpl.c
>  create mode 100644 board/xilinx/zynq/ZC706_hw_platform/ps7_init_gpl.h
>  rename board/xilinx/zynq/{ => custom_hw_platform}/.gitignore (100%)
>  rename board/xilinx/zynq/{ => custom_hw_platform}/legacy.c (100%)
>  create mode 100644 board/xilinx/zynq/zed_hw_platform/ps7_init_gpl.c
>  create mode 100644 board/xilinx/zynq/zed_hw_platform/ps7_init_gpl.h
> 
> diff --git a/arch/arm/cpu/armv7/zynq/Kconfig b/arch/arm/cpu/armv7/zynq/Kconfig
> index ab4768a..e19cce0 100644
> --- a/arch/arm/cpu/armv7/zynq/Kconfig
> +++ b/arch/arm/cpu/armv7/zynq/Kconfig
> @@ -1,5 +1,13 @@
>  if ZYNQ
>  
> +config ZYNQ_CUSTOM_INIT
> +	bool "Use custom ps7_init provided by Xilinx tool"
> +	help
> +	  U-Boot includes ps7_init_gpl.[ch] for some Zynq board variants.
> +	  If you want to override them with customized ones
> +	  or ps7_init code for your board is missing, please say Y here
> +	  and add ones into board/xilinx/zynq/custom_hw_platform/ directory.
> +
>  choice
>  	prompt "Xilinx Zynq board select"
>  
> @@ -17,9 +25,11 @@ config TARGET_ZYNQ_ZC706
>  
>  config TARGET_ZYNQ_ZC770
>  	bool "Zynq ZC770 Board"
> +	select ZYNQ_CUSTOM_INIT
>  
>  config TARGET_ZYNQ_ZYBO
>  	bool "Zynq Zybo Board"
> +	select ZYNQ_CUSTOM_INIT
>  
>  endchoice
>  
> diff --git a/board/xilinx/zynq/Makefile b/board/xilinx/zynq/Makefile
> index 3b1eb4f..7a82dfb 100644
> --- a/board/xilinx/zynq/Makefile
> +++ b/board/xilinx/zynq/Makefile
> @@ -7,11 +7,25 @@
>  
>  obj-y	:= board.o
>  
> -# Please copy ps7_init_gpl.c/h from hw project to this directory
> -obj-$(CONFIG_SPL_BUILD) += \
> -		$(if $(wildcard $(srctree)/$(src)/ps7_init_gpl.c), ps7_init_gpl.o, \
> -			$(if $(wildcard $(srctree)/$(src)/ps7_init.c), ps7_init.o legacy.o))
> +# Copied from Xilinx SDK 2014.4
> +ps7-init-$(CONFIG_TARGET_ZYNQ_ZED)	:= zed_hw_platform/ps7_init_gpl.o
> +ps7-init-$(CONFIG_TARGET_ZYNQ_MICROZED)	:= MicroZed_hw_platform/ps7_init_gpl.o
> +ps7-init-$(CONFIG_TARGET_ZYNQ_ZC702)	:= ZC702_hw_platform/ps7_init_gpl.o
> +ps7-init-$(CONFIG_TARGET_ZYNQ_ZC706)	:= ZC706_hw_platform/ps7_init_gpl.o
> +# If you want to use customized ps7_init_gpl.c/h (or ps7_init.c/h), 
> +# enable CONFIG_ZYNQ_CUSTOM_INIT and put them into custom_hw_platform/.
> +ps7-init-$(CONFIG_ZYNQ_CUSTOM_INIT)	:= \
> +	$(if $(wildcard $(srctree)/$(src)/custom_hw_platform/ps7_init_gpl.c), \
> +		custom_hw_platform/ps7_init_gpl.o, \
> +		$(if $(wildcard $(srctree)/$(src)/custom_hw_platform/ps7_init.c), \
> +			custom_hw_platform/ps7_init.o custom_hw_platform/legacy.o))

IIRC, the support for the legacy files was mainly added to not break
existing flows, this patch does break those flows by changing the search
location for these init files. Hence, this may be an opportunity to
fully drop support for the legacy files?

Does this mechanism allow to build for one of the supported boards (e.g.
zc706) using custom init files? We need to maintain this capability,
IMHO, since these initfiles are generated by Xilinx tools depending on
various settings in Vivado. They can be quite different between
use-cases/applications, even when targeting the same board.

	S?ren

  parent reply	other threads:[~2015-04-11 20:42 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-09 10:04 [U-Boot] [PATCH 0/2] ARM: zynq: include ps7_init_gpl.c/h of Zed, MicroZed, ZC702, ZC706 Masahiro Yamada
2015-04-09 10:04 ` [U-Boot] [PATCH 1/2] ARM: zynq: use separate configuration for ZC702 and ZC706 Masahiro Yamada
2015-04-09 10:04 ` [U-Boot] [PATCH 2/2] ARM: zynq: add default ps7_init_gpl.c/h for Zed, MicroZed, ZC70x Masahiro Yamada
2015-04-09 10:40   ` Michal Simek
2015-04-09 10:54     ` Masahiro Yamada
2015-04-11 20:42   ` Sören Brinkmann [this message]
2015-04-12  1:20     ` Masahiro Yamada
2015-04-12  2:45       ` Sören Brinkmann
2015-04-13  1:28         ` Masahiro Yamada
2015-04-13  3:12           ` Sören Brinkmann

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=ae37c5e1-dfc2-46b3-b3a1-36e8b4aa4e95@BL2FFO11FD016.protection.gbl \
    --to=soren.brinkmann@xilinx.com \
    --cc=u-boot@lists.denx.de \
    /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.