1# SPDX-License-Identifier: GPL-2.0
2#
3# Copyright (c) 2018, Luca Ceresoli <luca@lucaceresoli.net>
4
5if ARCH_ZYNQ || ARCH_ZYNQMP
6
7config XILINX_PS_INIT_FILE
8	string "Zynq/ZynqMP PS init file(s) location"
9	help
10	  On Zynq and ZynqMP U-Boot SPL (or U-Boot proper if
11	  ZYNQMP_PSU_INIT_ENABLED is set) is responsible for some
12	  basic initializations, such as enabling peripherals and
13	  configuring pinmuxes. The PS init file (called
14	  psu_init_gpl.c on ZynqMP, ps7_init_gpl.c for Zynq-7000)
15	  contains the code for such initializations.
16
17	  U-Boot contains PS init files for some boards, but each of
18	  them describes only one specific configuration. Users of a
19	  different board, or needing a different configuration, can
20	  generate custom files using the Xilinx development tools.
21
22	  There are three ways to give a PS init file to U-Boot:
23
24	  1. Set this variable to the path, either relative to the
25	     source tree or absolute, where the psu_init_gpl.c or
26	     ps7_init_gpl.c file is located. U-Boot will build this
27	     file.
28
29	  2. If you leave an empty string here, U-Boot will use
30	     board/xilinx/zynq/$(CONFIG_DEFAULT_DEVICE_TREE)/ps7_init_gpl.c
31	     for Zynq-7000, or
32	     board/xilinx/zynqmp/$(CONFIG_DEFAULT_DEVICE_TREE)/psu_init_gpl.c
33	     for ZynqMP.
34
35	  3. If the above file does not exist, U-Boot will use
36	     board/xilinx/zynq/ps7_init_gpl.c for Zynq-7000, or
37	     board/xilinx/zynqmp/psu_init_gpl.c for ZynqMP. This file
38	     is not provided by U-Boot, you have to copy it there
39	     before the build.
40
41endif
42
43config XILINX_OF_BOARD_DTB_ADDR
44	hex "Default DTB pickup address"
45	default 0x1000 if ARCH_VERSAL
46	default 0x100000 if ARCH_ZYNQ || ARCH_ZYNQMP
47	depends on OF_BOARD || OF_SEPARATE
48	help
49	  Offset in the memory where the board configuration DTB is placed.
50
51config BOOT_SCRIPT_OFFSET
52	hex "Boot script offset"
53	depends on ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL || MICROBLAZE
54	default 0xFC0000 if ARCH_ZYNQ || MICROBLAZE
55	default 0x3E80000 if ARCH_ZYNQMP
56	default 0x7F80000 if ARCH_VERSAL
57	help
58	   Specifies distro boot script offset in NAND/QSPI/NOR flash.
59
60config ZYNQ_MAC_IN_EEPROM
61	bool "Reading MAC address from EEPROM"
62	help
63	  Enable this option if your MAC address is saved in eeprom and
64	  xlnx,eeprom DT property in chosen node points to it.
65
66if ZYNQ_MAC_IN_EEPROM
67
68config ZYNQ_GEM_I2C_MAC_OFFSET
69	hex "Set the I2C MAC offset"
70	default 0x0
71	depends on DM_I2C
72	help
73	  Set the MAC offset for i2C.
74
75endif
76
77config CMD_FRU
78	bool "FRU information for product"
79	help
80	  This option enables FRU commands to capture and display FRU
81	  information present in the device. The FRU Information is used
82	  to primarily to provide "inventory" information about the boards
83	  that the FRU Information Device is located on.
84