[U-Boot] [PATCH v3 1/2] ARM: zynq: add separate configuration for ZC702 and ZC706
Masahiro Yamada
yamada.masahiro at socionext.com
Mon May 18 08:31:51 CEST 2015
Prior to this commit, ZC702 and ZC706 shared the same configuration
and were built as follows:
ZC702: make zynq_zc70x_defconfig && make
ZC706: make zynq_zc70x_defconfig && make DEVICE_TREE=zynq-zc706
This commit introduces separate configuration for them, which makes
the next commit much easier.
Going forward, the recommended build commands are:
ZC702: make zynq_zc702_defconfig && make
ZC706: make zynq_zc706_defconfig && make
Although the old work flow is still supported, CONFIG_TARGET_ZC70X
has been marked as deprecated. If used, the warning message is
shown to prompt users to switch to the new scheme.
Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
---
Changes in v3:
- Keep the current workflow
(configs/zynq_zc70x_defconfig and CONFIG_TARGET_ZYNQ_ZC70X
can be used as they are.)
Changes in v2:
- Newly added
arch/arm/mach-zynq/Kconfig | 14 ++++++++++++--
board/xilinx/zynq/Makefile | 10 ++++++++++
configs/zynq_zc702_defconfig | 10 ++++++++++
configs/zynq_zc706_defconfig | 10 ++++++++++
doc/README.zynq | 15 ++++-----------
5 files changed, 46 insertions(+), 13 deletions(-)
create mode 100644 configs/zynq_zc702_defconfig
create mode 100644 configs/zynq_zc706_defconfig
diff --git a/arch/arm/mach-zynq/Kconfig b/arch/arm/mach-zynq/Kconfig
index 483c3a0..a4deddf 100644
--- a/arch/arm/mach-zynq/Kconfig
+++ b/arch/arm/mach-zynq/Kconfig
@@ -14,7 +14,16 @@ config TARGET_ZYNQ_PICOZED
bool "Zynq PicoZed"
config TARGET_ZYNQ_ZC70X
- bool "Zynq ZC702/ZC706 Board"
+ bool "Zynq ZC702/ZC706 Board (deprecated)"
+ help
+ This option is deprecated. Use TARGET_ZYNQ_ZC702
+ or TARGET_ZYNQ_706.
+
+config TARGET_ZYNQ_ZC702
+ bool "Zynq ZC702 Board"
+
+config TARGET_ZYNQ_ZC706
+ bool "Zynq ZC706 Board"
config TARGET_ZYNQ_ZC770
bool "Zynq ZC770 Board"
@@ -37,7 +46,8 @@ config SYS_CONFIG_NAME
default "zynq_zed" if TARGET_ZYNQ_ZED
default "zynq_microzed" if TARGET_ZYNQ_MICROZED
default "zynq_picozed" if TARGET_ZYNQ_PICOZED
- default "zynq_zc70x" if TARGET_ZYNQ_ZC70X
+ default "zynq_zc70x" if TARGET_ZYNQ_ZC702 || TARGET_ZYNQ_ZC706 \
+ || TARGET_ZYNQ_ZC70X
default "zynq_zc770" if TARGET_ZYNQ_ZC770
default "zynq_zybo" if TARGET_ZYNQ_ZYBO
diff --git a/board/xilinx/zynq/Makefile b/board/xilinx/zynq/Makefile
index 054c3d8..3979347 100644
--- a/board/xilinx/zynq/Makefile
+++ b/board/xilinx/zynq/Makefile
@@ -13,3 +13,13 @@ obj-$(CONFIG_SPL_BUILD) += \
# Suppress "warning: function declaration isn't a prototype"
CFLAGS_REMOVE_ps7_init_gpl.o := -Wstrict-prototypes
+
+# Warn if CONFIG_TARGET_ZYNQ_ZC70X is enabled
+ifeq ($(CONFIG_TARGET_ZYNQ_ZC70X),y)
+ifeq ($(CONFIG_SPL_BUILD),y)
+$(warning CONFIG_TARGET_ZYNQ_ZC70X is deprecated.)
+$(warning Enable CONFIG_TARGET_ZYNQ_ZC702 or CONFIG_TARGET_ZYNQ_706 instead.)
+$(warning "make zynq_zc70x_defconfig" is also deprecated.)
+$(warning Use "make zynq_zc702_defconfig" or "make zynq_zc706_defconfig".)
+endif
+endif
diff --git a/configs/zynq_zc702_defconfig b/configs/zynq_zc702_defconfig
new file mode 100644
index 0000000..7ea8aa6
--- /dev/null
+++ b/configs/zynq_zc702_defconfig
@@ -0,0 +1,10 @@
+CONFIG_ARM=y
+CONFIG_ARCH_ZYNQ=y
+CONFIG_TARGET_ZYNQ_ZC702=y
+CONFIG_DEFAULT_DEVICE_TREE="zynq-zc702"
+# CONFIG_SYS_MALLOC_F is not set
+CONFIG_SPL=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
+CONFIG_FIT_SIGNATURE=y
+CONFIG_OF_CONTROL=y
diff --git a/configs/zynq_zc706_defconfig b/configs/zynq_zc706_defconfig
new file mode 100644
index 0000000..4e79713
--- /dev/null
+++ b/configs/zynq_zc706_defconfig
@@ -0,0 +1,10 @@
+CONFIG_ARM=y
+CONFIG_ARCH_ZYNQ=y
+CONFIG_TARGET_ZYNQ_ZC706=y
+CONFIG_DEFAULT_DEVICE_TREE="zynq-zc706"
+# CONFIG_SYS_MALLOC_F is not set
+CONFIG_SPL=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
+CONFIG_FIT_SIGNATURE=y
+CONFIG_OF_CONTROL=y
diff --git a/doc/README.zynq b/doc/README.zynq
index 043c970..b89c39e 100644
--- a/doc/README.zynq
+++ b/doc/README.zynq
@@ -17,9 +17,8 @@ Xilinx Zynq-7000 All Programmable SoCs enable extensive system level
differentiation, integration, and flexibility through hardware, software,
and I/O programmability.
-* zc70x
- - zc702 (single qspi, gem0, mmc) [1]
- - zc706 (dual parallel qspi, gem0, mmc) [2]
+* zc702 (single qspi, gem0, mmc) [1]
+* zc706 (dual parallel qspi, gem0, mmc) [2]
* zed (single qspi, gem0, mmc) [3]
* microzed (single qspi, gem0, mmc) [4]
* zc770
@@ -30,16 +29,10 @@ and I/O programmability.
3. Building
- # Configure for zc70x board
- $ make zynq_zc70x_config
- Configuring for zynq_zc70x board...
-
- # Building default dts for zc702 board
+ ex. configure and build for zc702 board
+ $ make zynq_zc702_config
$ make
- # Building specified dts for zc706 board
- $ make DEVICE_TREE=zynq-zc706
-
4. Bootmode
Zynq has a facility to read the bootmode from the slcr bootmode register
--
1.9.1
More information about the U-Boot
mailing list