1*6da4f67aSLuca Ceresoli# SPDX-License-Identifier: GPL-2.0 2*6da4f67aSLuca Ceresoli# 3*6da4f67aSLuca Ceresoli# Copyright (c) 2018, Luca Ceresoli <luca@lucaceresoli.net> 4*6da4f67aSLuca Ceresoli 5*6da4f67aSLuca Ceresoliif ARCH_ZYNQ || ARCH_ZYNQMP 6*6da4f67aSLuca Ceresoli 7*6da4f67aSLuca Ceresoliconfig XILINX_PS_INIT_FILE 8*6da4f67aSLuca Ceresoli string "Zynq/ZynqMP PS init file(s) location" 9*6da4f67aSLuca Ceresoli help 10*6da4f67aSLuca Ceresoli On Zynq and ZynqMP U-Boot SPL (or U-Boot proper if 11*6da4f67aSLuca Ceresoli ZYNQMP_PSU_INIT_ENABLED is set) is responsible for some 12*6da4f67aSLuca Ceresoli basic initializations, such as enabling peripherals and 13*6da4f67aSLuca Ceresoli configuring pinmuxes. The PS init file (called 14*6da4f67aSLuca Ceresoli psu_init_gpl.c on ZynqMP, ps7_init_gpl.c for Zynq-7000) 15*6da4f67aSLuca Ceresoli contains the code for such initializations. 16*6da4f67aSLuca Ceresoli 17*6da4f67aSLuca Ceresoli U-Boot contains PS init files for some boards, but each of 18*6da4f67aSLuca Ceresoli them describes only one specific configuration. Users of a 19*6da4f67aSLuca Ceresoli different board, or needing a different configuration, can 20*6da4f67aSLuca Ceresoli generate custom files using the Xilinx development tools. 21*6da4f67aSLuca Ceresoli 22*6da4f67aSLuca Ceresoli There are three ways to give a PS init file to U-Boot: 23*6da4f67aSLuca Ceresoli 24*6da4f67aSLuca Ceresoli 1. Set this variable to the path, either relative to the 25*6da4f67aSLuca Ceresoli source tree or absolute, where the psu_init_gpl.c or 26*6da4f67aSLuca Ceresoli ps7_init_gpl.c file is located. U-Boot will build this 27*6da4f67aSLuca Ceresoli file. 28*6da4f67aSLuca Ceresoli 29*6da4f67aSLuca Ceresoli 2. If you leave an empty string here, U-Boot will use 30*6da4f67aSLuca Ceresoli board/xilinx/zynq/$(CONFIG_DEFAULT_DEVICE_TREE)/ps7_init_gpl.c 31*6da4f67aSLuca Ceresoli for Zynq-7000, or 32*6da4f67aSLuca Ceresoli board/xilinx/zynqmp/$(CONFIG_DEFAULT_DEVICE_TREE)/psu_init_gpl.c 33*6da4f67aSLuca Ceresoli for ZynqMP. 34*6da4f67aSLuca Ceresoli 35*6da4f67aSLuca Ceresoli 3. If the above file does not exist, U-Boot will use 36*6da4f67aSLuca Ceresoli board/xilinx/zynq/ps7_init_gpl.c for Zynq-7000, or 37*6da4f67aSLuca Ceresoli board/xilinx/zynqmp/psu_init_gpl.c for ZynqMP. This file 38*6da4f67aSLuca Ceresoli is not provided by U-Boot, you have to copy it there 39*6da4f67aSLuca Ceresoli before the build. 40*6da4f67aSLuca Ceresoli 41*6da4f67aSLuca Ceresoliendif 42