blob: a91402875332c2dbb6ad7d583aade0a62ce77e0b [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001# SPDX-License-Identifier: GPL-2.0+
Michal Simek04b7e622015-01-15 10:01:51 +01002#
Michal Simek72536fd2015-11-20 13:17:22 +01003# (C) Copyright 2014 - 2016 Xilinx, Inc.
Michal Simek04b7e622015-01-15 10:01:51 +01004# Michal Simek <michal.simek@xilinx.com>
Michal Simek04b7e622015-01-15 10:01:51 +01005
6obj-y := zynqmp.o
Michal Simek72536fd2015-11-20 13:17:22 +01007
Luca Ceresolib0172c32018-06-22 12:40:16 +02008ifneq ($(CONFIG_XILINX_PS_INIT_FILE),"")
9PS_INIT_FILE := $(shell cd $(srctree); readlink -f $(CONFIG_XILINX_PS_INIT_FILE))
10init-objs := ps_init_gpl.o
11spl/board/xilinx/zynqmp/ps_init_gpl.o board/xilinx/zynqmp/ps_init_gpl.o: $(PS_INIT_FILE)
12 $(CC) $(c_flags) -I $(srctree)/$(src) -c -o $@ $^
13endif
Michal Simek72536fd2015-11-20 13:17:22 +010014
Michal Simek8a8683c2020-02-13 14:36:34 +010015DEVICE_TREE ?= $(CONFIG_DEFAULT_DEVICE_TREE:"%"=%)
16ifeq ($(DEVICE_TREE),)
17DEVICE_TREE := unset
18endif
19
Luca Ceresolib0172c32018-06-22 12:40:16 +020020ifeq ($(init-objs),)
Michal Simek6894d9d2019-12-06 12:05:34 +010021hw-platform-y :=$(shell echo $(DEVICE_TREE))
Michal Simek72536fd2015-11-20 13:17:22 +010022init-objs := $(if $(wildcard $(srctree)/$(src)/$(hw-platform-y)/psu_init_gpl.c),\
23 $(hw-platform-y)/psu_init_gpl.o)
Luca Ceresolib0172c32018-06-22 12:40:16 +020024endif
Michal Simek72536fd2015-11-20 13:17:22 +010025
26ifeq ($(init-objs),)
27ifneq ($(wildcard $(srctree)/$(src)/psu_init_gpl.c),)
28init-objs := psu_init_gpl.o
29$(if $(CONFIG_SPL_BUILD),\
30$(warning Put custom psu_init_gpl.c/h to board/xilinx/zynqmp/custom_hw_platform/))
31endif
32endif
33
Michal Simekd8218792017-07-12 13:21:27 +020034ifdef_any_of = $(filter-out undefined,$(foreach v,$(1),$(origin $(v))))
35
36ifneq ($(call ifdef_any_of, CONFIG_ZYNQMP_PSU_INIT_ENABLED CONFIG_SPL_BUILD),)
37obj-y += $(init-objs)
38endif
Michal Simek72536fd2015-11-20 13:17:22 +010039
Michal Simek2a455e22019-07-30 17:07:27 +020040ifdef CONFIG_SPL_BUILD
Luca Ceresoli23e65002019-05-21 18:06:43 +020041ifneq ($(CONFIG_ZYNQMP_SPL_PM_CFG_OBJ_FILE),"")
42obj-$(CONFIG_SPL_BUILD) += pm_cfg_obj.o
43$(obj)/pm_cfg_obj.o: $(shell cd $(srctree); readlink -f $(CONFIG_ZYNQMP_SPL_PM_CFG_OBJ_FILE)) FORCE
44endif
Michal Simek2a455e22019-07-30 17:07:27 +020045endif
Luca Ceresoli23e65002019-05-21 18:06:43 +020046
Siva Durga Prasad Paladugub1acb652018-02-28 13:26:53 +053047ifndef CONFIG_SPL_BUILD
48obj-$(CONFIG_CMD_ZYNQMP) += cmds.o
49endif
50
Michal Simek72536fd2015-11-20 13:17:22 +010051# Suppress "warning: function declaration isn't a prototype"
52CFLAGS_REMOVE_psu_init_gpl.o := -Wstrict-prototypes
53
54# To include xil_io.h
55CFLAGS_psu_init_gpl.o := -I$(srctree)/$(src)
Michal Simekf5727ec2016-07-14 11:13:04 +020056
57# To suppress "warning: cast to pointer from integer of different size"
58CFLAGS_psu_init_gpl.o += -Wno-int-to-pointer-cast