Luca Ceresoli | b0172c3 | 2018-06-22 12:40:16 +0200 | [diff] [blame] | 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 |
Ibai Erkiaga | 6f65820 | 2019-10-02 15:57:36 +0100 | [diff] [blame] | 42 | |
Ibai Erkiaga | fd48fd7 | 2019-10-02 15:57:37 +0100 | [diff] [blame] | 43 | config XILINX_OF_BOARD_DTB_ADDR |
Michal Simek | 0e14264 | 2020-08-20 14:02:47 +0200 | [diff] [blame] | 44 | hex "Default DTB pickup address" |
Michal Simek | d903ce4 | 2024-05-29 16:47:58 +0200 | [diff] [blame] | 45 | default 0x1000 if ARCH_VERSAL || ARCH_VERSAL_NET || ARCH_VERSAL2 |
Ovidiu Panait | 57c89d2 | 2021-12-02 21:56:56 +0200 | [diff] [blame] | 46 | default 0x8000 if MICROBLAZE |
Ibai Erkiaga | fd48fd7 | 2019-10-02 15:57:37 +0100 | [diff] [blame] | 47 | default 0x100000 if ARCH_ZYNQ || ARCH_ZYNQMP |
Michal Simek | a874bbe | 2024-02-14 12:52:31 +0100 | [diff] [blame] | 48 | default 0x23000000 if TARGET_XILINX_MBV |
Michal Simek | 878ba36 | 2019-12-19 17:45:15 +0100 | [diff] [blame] | 49 | depends on OF_BOARD || OF_SEPARATE |
Ibai Erkiaga | 6f65820 | 2019-10-02 15:57:36 +0100 | [diff] [blame] | 50 | help |
| 51 | Offset in the memory where the board configuration DTB is placed. |
T Karthik Reddy | 5fa6c1e | 2019-12-18 03:34:41 -0700 | [diff] [blame] | 52 | |
| 53 | config BOOT_SCRIPT_OFFSET |
| 54 | hex "Boot script offset" |
Michal Simek | d903ce4 | 2024-05-29 16:47:58 +0200 | [diff] [blame] | 55 | depends on ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_VERSAL || ARCH_VERSAL_NET || ARCH_VERSAL2 || MICROBLAZE || TARGET_XILINX_MBV |
Michal Simek | 841aa51 | 2020-10-22 11:08:58 +0200 | [diff] [blame] | 56 | default 0xFC0000 if ARCH_ZYNQ || MICROBLAZE |
T Karthik Reddy | 5fa6c1e | 2019-12-18 03:34:41 -0700 | [diff] [blame] | 57 | default 0x3E80000 if ARCH_ZYNQMP |
Michal Simek | d903ce4 | 2024-05-29 16:47:58 +0200 | [diff] [blame] | 58 | default 0x7F80000 if ARCH_VERSAL || ARCH_VERSAL_NET || ARCH_VERSAL2 |
Michal Simek | 962c10a | 2023-11-06 12:56:47 +0100 | [diff] [blame] | 59 | default 0 if TARGET_XILINX_MBV |
T Karthik Reddy | 5fa6c1e | 2019-12-18 03:34:41 -0700 | [diff] [blame] | 60 | help |
Michal Simek | 841aa51 | 2020-10-22 11:08:58 +0200 | [diff] [blame] | 61 | Specifies distro boot script offset in NAND/QSPI/NOR flash. |
Michal Simek | 4b773f2 | 2020-10-14 17:08:14 +0200 | [diff] [blame] | 62 | |
Siva Durga Prasad Paladugu | 7177d02 | 2019-04-10 12:38:10 +0530 | [diff] [blame] | 63 | config CMD_FRU |
| 64 | bool "FRU information for product" |
| 65 | help |
| 66 | This option enables FRU commands to capture and display FRU |
| 67 | information present in the device. The FRU Information is used |
| 68 | to primarily to provide "inventory" information about the boards |
| 69 | that the FRU Information Device is located on. |
Michal Simek | 292b9ae | 2022-11-23 12:48:44 +0100 | [diff] [blame] | 70 | |
| 71 | config FRU_SC |
| 72 | bool "FRU system controller decoding" |
| 73 | help |
| 74 | Xilinx System Controller (SC) FRU format is describing boards from two |
| 75 | angles. One from DUT and then from SC. DUT is default option for |
| 76 | the main CPU. SC behaves more or less as slave and have different ID. |
| 77 | If you build U-Boot for SC you should enable this option to get proper |
| 78 | MAC address. |