[U-Boot] [PATCH] zynq: Move ENV location selection from zynq-common.h to config files.
Michal Simek
michal.simek at xilinx.com
Wed Mar 22 14:30:09 UTC 2017
On 21.3.2017 19:56, Philip Balister wrote:
> The ifdef's in zynq-common.h do a partial selection of the u-boot environment
> storage location. As u-boot added more, the ifdefs no longe cope with all
> possible cases. Rather than correct the logic there, move the selection
> options into the board specific config files.
>
> Signed-off-by: Philip Balister <philip at opensdr.com>
> ---
> configs/zynq_microzed_defconfig | 1 +
> configs/zynq_picozed_defconfig | 1 +
> configs/zynq_zc702_defconfig | 1 +
> configs/zynq_zc706_defconfig | 1 +
> configs/zynq_zc770_xm010_defconfig | 2 +-
> configs/zynq_zc770_xm011_defconfig | 2 +-
> configs/zynq_zc770_xm012_defconfig | 2 +-
> configs/zynq_zc770_xm013_defconfig | 2 +-
> configs/zynq_zed_defconfig | 1 +
> configs/zynq_zybo_defconfig | 2 ++
> include/configs/zynq-common.h | 10 ----------
> 11 files changed, 11 insertions(+), 14 deletions(-)
>
> diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig
> index 4093618..b95c7d3 100644
> --- a/configs/zynq_microzed_defconfig
> +++ b/configs/zynq_microzed_defconfig
> @@ -5,6 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-microzed"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_picozed_defconfig b/configs/zynq_picozed_defconfig
> index 3c3a5b2..53e9a3e 100644
> --- a/configs/zynq_picozed_defconfig
> +++ b/configs/zynq_picozed_defconfig
> @@ -2,6 +2,7 @@ CONFIG_ARM=y
> CONFIG_ARCH_ZYNQ=y
> CONFIG_SYS_TEXT_BASE=0x4000000
> CONFIG_DEFAULT_DEVICE_TREE="zynq-picozed"
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_NOWHERE"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zc702_defconfig b/configs/zynq_zc702_defconfig
> index c59d7f5..62a96fd 100644
> --- a/configs/zynq_zc702_defconfig
> +++ b/configs/zynq_zc702_defconfig
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zc702"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zc706_defconfig b/configs/zynq_zc706_defconfig
> index c73bacb..348f9fd 100644
> --- a/configs/zynq_zc706_defconfig
> +++ b/configs/zynq_zc706_defconfig
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zc706"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zc770_xm010_defconfig b/configs/zynq_zc770_xm010_defconfig
> index ececcb4..3a8caba 100644
> --- a/configs/zynq_zc770_xm010_defconfig
> +++ b/configs/zynq_zc770_xm010_defconfig
> @@ -5,7 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm010"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> -CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM010"
> +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM010,ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zc770_xm011_defconfig b/configs/zynq_zc770_xm011_defconfig
> index 980382c..7a6d2af 100644
> --- a/configs/zynq_zc770_xm011_defconfig
> +++ b/configs/zynq_zc770_xm011_defconfig
> @@ -5,7 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm011"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> -CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM011"
> +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM011,ENV_IS_NOWHERE"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zc770_xm012_defconfig b/configs/zynq_zc770_xm012_defconfig
> index 48caf31..8d23bd9 100644
> --- a/configs/zynq_zc770_xm012_defconfig
> +++ b/configs/zynq_zc770_xm012_defconfig
> @@ -5,7 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm012"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> -CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM012"
> +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM012,ENV_IS_IN_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zc770_xm013_defconfig b/configs/zynq_zc770_xm013_defconfig
> index 23bcb0e..3a0b9e6 100644
> --- a/configs/zynq_zc770_xm013_defconfig
> +++ b/configs/zynq_zc770_xm013_defconfig
> @@ -5,7 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zc770-xm013"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> -CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM013"
> +CONFIG_SYS_EXTRA_OPTIONS="ZC770_XM013,ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig
> index 26a5320..3f54495 100644
> --- a/configs/zynq_zed_defconfig
> +++ b/configs/zynq_zed_defconfig
> @@ -5,6 +5,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zed"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> diff --git a/configs/zynq_zybo_defconfig b/configs/zynq_zybo_defconfig
> index af7fe65..ed85319 100644
> --- a/configs/zynq_zybo_defconfig
> +++ b/configs/zynq_zybo_defconfig
> @@ -6,6 +6,7 @@ CONFIG_DEFAULT_DEVICE_TREE="zynq-zybo"
> CONFIG_FIT=y
> CONFIG_FIT_SIGNATURE=y
> CONFIG_FIT_VERBOSE=y
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
> # CONFIG_DISPLAY_CPUINFO is not set
> CONFIG_SPL=y
> CONFIG_SPL_OS_BOOT=y
> @@ -56,3 +57,4 @@ CONFIG_USB_GADGET_DOWNLOAD=y
> CONFIG_G_DNL_MANUFACTURER="Xilinx"
> CONFIG_G_DNL_VENDOR_NUM=0x03fd
> CONFIG_G_DNL_PRODUCT_NUM=0x0300
> +CONFIG_SYS_EXTRA_OPTIONS="ENV_IS_IN_SPI_FLASH"
These are here twice.
> diff --git a/include/configs/zynq-common.h b/include/configs/zynq-common.h
> index 431d6c4..94e49fb 100644
> --- a/include/configs/zynq-common.h
> +++ b/include/configs/zynq-common.h
> @@ -162,16 +162,6 @@
>
> /* Environment */
> #ifndef CONFIG_ENV_IS_NOWHERE
> -# ifdef CONFIG_MTD_NOR_FLASH
> -/* Environment in NOR flash */
> -# define CONFIG_ENV_IS_IN_FLASH
> -# elif defined(CONFIG_ZYNQ_QSPI)
> -/* Environment in Serial Flash */
> -# define CONFIG_ENV_IS_IN_SPI_FLASH
> -# elif !defined(CONFIG_MTD_NOR_FLASH)
> -# define CONFIG_ENV_IS_NOWHERE
> -# endif
> -
> # define CONFIG_ENV_SECT_SIZE CONFIG_ENV_SIZE
> # define CONFIG_ENV_OFFSET 0xE0000
> #endif
>
There is any problem with xm013 which shouldn't have any delta when this
patch is applied.
02: zynq: Move ENV location selection from zynq-common.h to config files.
arm: (for 12/12 boards) all +231.0 bss +0.3 data +7.3 rodata
+21.0 text +202.3
zynq_zc770_xm013: all +2772 bss +4 data +88 rodata +252
text +2428
u-boot: add: 21/0, grow: 5/0 bytes: 2232/0 (2232)
function old new
delta
spi_get_bus_and_cs - 356
+356
device_unbind - 328
+328
saveenv - 232
+232
env_import - 224
+224
env_relocate_spec 4 208
+204
env_export - 164
+164
spi_flash_probe_bus_cs - 140
+140
spi_find_chip_select - 84
+84
device_bind_driver_to_node - 72
+72
spi_flash_probe - 48
+48
do_env_save - 44
+44
device_find_next_child - 40
+40
device_bind - 40
+40
env_relocate 20 48
+28
env_help_text 563 591
+28
device_find_first_child - 28
+28
cmd_env_sub 252 280
+28
_u_boot_list_2_cmd_2_saveenv - 28
+28
spi_flash_write_dm - 24
+24
spi_flash_read_dm - 24
+24
spi_flash_erase_dm - 24
+24
device_bind_driver - 20
+20
spi_flash_free - 12
+12
env_name_spec - 4
+4
env_init 24 28
+4
env_flash - 4
+4
M
More information about the U-Boot
mailing list