xilinx: cmd: Add support for FRU commands
[platform/kernel/u-boot.git] / board / xilinx / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # Copyright (c) 2018, Luca Ceresoli <luca@lucaceresoli.net>
4
5 if ARCH_ZYNQ || ARCH_ZYNQMP
6
7 config 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
41 endif
42
43 config 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
51 config BOOT_SCRIPT_OFFSET
52         hex "Boot script offset"
53         depends on ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL
54         default 0xFC0000 if ARCH_ZYNQ
55         default 0x3E80000 if ARCH_ZYNQMP
56         default 0x7F80000 if ARCH_VERSAL
57         help
58            Specifies distro boot script offset in NAND/NOR flash.
59
60 config 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
66 if ZYNQ_MAC_IN_EEPROM
67
68 config 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
75 endif
76
77 config 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.