xref: /OK3568_Linux_fs/device/rockchip/common/linux-kbuild/armhf/linux-kbuild-4.4/scripts/Makefile.dtbinst (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# ==========================================================================
2*4882a593Smuzhiyun# Installing dtb files
3*4882a593Smuzhiyun#
4*4882a593Smuzhiyun# Installs all dtb files listed in $(dtb-y) either in the
5*4882a593Smuzhiyun# INSTALL_DTBS_PATH directory or the default location:
6*4882a593Smuzhiyun#
7*4882a593Smuzhiyun#   $INSTALL_PATH/dtbs/$KERNELRELEASE
8*4882a593Smuzhiyun#
9*4882a593Smuzhiyun# Traverse through subdirectories listed in $(dts-dirs).
10*4882a593Smuzhiyun# ==========================================================================
11*4882a593Smuzhiyun
12*4882a593Smuzhiyunsrc := $(obj)
13*4882a593Smuzhiyun
14*4882a593SmuzhiyunPHONY := __dtbs_install
15*4882a593Smuzhiyun__dtbs_install:
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunexport dtbinst-root ?= $(obj)
18*4882a593Smuzhiyun
19*4882a593Smuzhiyuninclude include/config/auto.conf
20*4882a593Smuzhiyuninclude scripts/Kbuild.include
21*4882a593Smuzhiyuninclude $(src)/Makefile
22*4882a593Smuzhiyun
23*4882a593SmuzhiyunPHONY += __dtbs_install_prep
24*4882a593Smuzhiyun__dtbs_install_prep:
25*4882a593Smuzhiyunifeq ("$(dtbinst-root)", "$(obj)")
26*4882a593Smuzhiyun	$(Q)if [ -d $(INSTALL_DTBS_PATH).old ]; then rm -rf $(INSTALL_DTBS_PATH).old; fi
27*4882a593Smuzhiyun	$(Q)if [ -d $(INSTALL_DTBS_PATH) ]; then mv $(INSTALL_DTBS_PATH) $(INSTALL_DTBS_PATH).old; fi
28*4882a593Smuzhiyun	$(Q)mkdir -p $(INSTALL_DTBS_PATH)
29*4882a593Smuzhiyunendif
30*4882a593Smuzhiyun
31*4882a593Smuzhiyundtbinst-files	:= $(dtb-y)
32*4882a593Smuzhiyundtbinst-dirs	:= $(dts-dirs)
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun# Helper targets for Installing DTBs into the boot directory
35*4882a593Smuzhiyunquiet_cmd_dtb_install =	INSTALL $<
36*4882a593Smuzhiyun      cmd_dtb_install =	mkdir -p $(2); cp $< $(2)
37*4882a593Smuzhiyun
38*4882a593Smuzhiyuninstall-dir = $(patsubst $(dtbinst-root)%,$(INSTALL_DTBS_PATH)%,$(obj))
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun$(dtbinst-files) $(dtbinst-dirs): | __dtbs_install_prep
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun$(dtbinst-files): %.dtb: $(obj)/%.dtb
43*4882a593Smuzhiyun	$(call cmd,dtb_install,$(install-dir))
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun$(dtbinst-dirs):
46*4882a593Smuzhiyun	$(Q)$(MAKE) $(dtbinst)=$(obj)/$@
47*4882a593Smuzhiyun
48*4882a593SmuzhiyunPHONY += $(dtbinst-files) $(dtbinst-dirs)
49*4882a593Smuzhiyun__dtbs_install: $(dtbinst-files) $(dtbinst-dirs)
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun.PHONY: $(PHONY)
52