blob: 398c6aaa452acd3cd8f906de8445de674f7be29b [file] [log] [blame]
Tom Rini83d290c2018-05-06 17:58:06 -04001# SPDX-License-Identifier: GPL-2.0+
Michal Simek84c72042015-01-15 10:01:51 +01002#
Michal Simeke6a9ed02015-11-20 13:17:22 +01003# (C) Copyright 2014 - 2016 Xilinx, Inc.
Michal Simek84c72042015-01-15 10:01:51 +01004# Michal Simek <michal.simek@xilinx.com>
Michal Simek84c72042015-01-15 10:01:51 +01005
6obj-y := zynqmp.o
Michal Simek9755e3d2019-01-21 15:25:02 +01007obj-y += ../common/board.o
Michal Simeke6a9ed02015-11-20 13:17:22 +01008
Luca Ceresoli6da4f672018-06-22 12:40:16 +02009ifneq ($(CONFIG_XILINX_PS_INIT_FILE),"")
10PS_INIT_FILE := $(shell cd $(srctree); readlink -f $(CONFIG_XILINX_PS_INIT_FILE))
11init-objs := ps_init_gpl.o
12spl/board/xilinx/zynqmp/ps_init_gpl.o board/xilinx/zynqmp/ps_init_gpl.o: $(PS_INIT_FILE)
13 $(CC) $(c_flags) -I $(srctree)/$(src) -c -o $@ $^
14endif
Michal Simeke6a9ed02015-11-20 13:17:22 +010015
Michal Simek9c18aaa2020-02-13 14:36:34 +010016DEVICE_TREE ?= $(CONFIG_DEFAULT_DEVICE_TREE:"%"=%)
17ifeq ($(DEVICE_TREE),)
18DEVICE_TREE := unset
19endif
20
Luca Ceresoli6da4f672018-06-22 12:40:16 +020021ifeq ($(init-objs),)
Michal Simek312f2c52019-12-06 12:05:34 +010022hw-platform-y :=$(shell echo $(DEVICE_TREE))
Michal Simeke6a9ed02015-11-20 13:17:22 +010023init-objs := $(if $(wildcard $(srctree)/$(src)/$(hw-platform-y)/psu_init_gpl.c),\
24 $(hw-platform-y)/psu_init_gpl.o)
Luca Ceresoli6da4f672018-06-22 12:40:16 +020025endif
Michal Simeke6a9ed02015-11-20 13:17:22 +010026
27ifeq ($(init-objs),)
28ifneq ($(wildcard $(srctree)/$(src)/psu_init_gpl.c),)
29init-objs := psu_init_gpl.o
30$(if $(CONFIG_SPL_BUILD),\
31$(warning Put custom psu_init_gpl.c/h to board/xilinx/zynqmp/custom_hw_platform/))
32endif
33endif
34
Michal Simekfd1b6352017-07-12 13:21:27 +020035ifdef_any_of = $(filter-out undefined,$(foreach v,$(1),$(origin $(v))))
36
37ifneq ($(call ifdef_any_of, CONFIG_ZYNQMP_PSU_INIT_ENABLED CONFIG_SPL_BUILD),)
38obj-y += $(init-objs)
39endif
Michal Simeke6a9ed02015-11-20 13:17:22 +010040
Michal Simekcd228cc2019-07-30 17:07:27 +020041ifdef CONFIG_SPL_BUILD
Luca Ceresolic28a9cf2019-05-21 18:06:43 +020042ifneq ($(CONFIG_ZYNQMP_SPL_PM_CFG_OBJ_FILE),"")
43obj-$(CONFIG_SPL_BUILD) += pm_cfg_obj.o
44$(obj)/pm_cfg_obj.o: $(shell cd $(srctree); readlink -f $(CONFIG_ZYNQMP_SPL_PM_CFG_OBJ_FILE)) FORCE
45endif
Michal Simekcd228cc2019-07-30 17:07:27 +020046endif
Luca Ceresolic28a9cf2019-05-21 18:06:43 +020047
Siva Durga Prasad Paladugud1f4e392018-04-19 12:37:09 +053048obj-$(CONFIG_MMC_SDHCI_ZYNQ) += tap_delays.o
49
Siva Durga Prasad Paladuguc436bf92018-02-28 13:26:53 +053050ifndef CONFIG_SPL_BUILD
51obj-$(CONFIG_CMD_ZYNQMP) += cmds.o
52endif
53
Michal Simeke6a9ed02015-11-20 13:17:22 +010054# Suppress "warning: function declaration isn't a prototype"
55CFLAGS_REMOVE_psu_init_gpl.o := -Wstrict-prototypes
56
57# To include xil_io.h
58CFLAGS_psu_init_gpl.o := -I$(srctree)/$(src)
Michal Simekb6f40482016-07-14 11:13:04 +020059
60# To suppress "warning: cast to pointer from integer of different size"
61CFLAGS_psu_init_gpl.o += -Wno-int-to-pointer-cast