ARM: zynq: add separate configuration for ZC702 and ZC706
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Mon, 18 May 2015 06:31:51 +0000 (15:31 +0900)
committerMichal Simek <michal.simek@xilinx.com>
Mon, 25 May 2015 08:52:35 +0000 (10:52 +0200)
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@socionext.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/arm/mach-zynq/Kconfig
board/xilinx/zynq/Makefile
configs/zynq_zc702_defconfig [new file with mode: 0644]
configs/zynq_zc706_defconfig [new file with mode: 0644]
doc/README.zynq

index 483c3a07fa86c16675af5e8f6183da6649cb7713..a4deddfc1ab6c860492f899d102093f7ab16c653 100644 (file)
@@ -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
 
index 054c3d821d9b39a291ff6273269b2d6169c952d5..3979347d2e2d267f02861519aaf72b96dc51f23a 100644 (file)
@@ -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 (file)
index 0000000..7ea8aa6
--- /dev/null
@@ -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 (file)
index 0000000..4e79713
--- /dev/null
@@ -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
index 043c9701409026f7793cdbfc0450462fc094390a..b89c39edac18c169d66f234e07414a04fc58bde6 100644 (file)
@@ -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