@@ -577,6 +577,17 @@ ifeq ($(dot-config),1)
577
577
# oldconfig if changes are detected.
578
578
-include include/config/auto.conf.cmd
579
579
580
+ # Read in DTS derived configuration, if it exists
581
+ #
582
+ # We check to see if the ARCH is correctly sourced before doing the -include
583
+ # The reason for this is due to implicit rules kicking in to create this file.
584
+ # If this occurs before the above auto.conf is sourced correctly, the build
585
+ # will iterate over the dts conf file 2-3 times before settling down to the
586
+ # correct output.
587
+ ifneq ($(ARCH ) ,)
588
+ -include include/generated/generated_dts_board.conf
589
+ endif
590
+
580
591
# To avoid any implicit rule to kick in, define an empty command
581
592
$(KCONFIG_CONFIG ) include/config/auto.conf.cmd : ;
582
593
@@ -962,19 +973,34 @@ define filechk_generated_dts_board.h
962
973
fi; \
963
974
)
964
975
endef
976
+ define filechk_generated_dts_board.conf
977
+ (echo "# WARNING. THIS FILE IS AUTO-GENERATED. DO NOT MODIFY!"; \
978
+ $(ZEPHYR_BASE)/scripts/extract_dts_includes.py \
979
+ -d dts/$(ARCH)/$(BOARD_NAME).dts_compiled \
980
+ -y $(ZEPHYR_BASE)/dts/$(ARCH)/yaml -k; \
981
+ )
982
+ endef
965
983
else
966
984
define filechk_generated_dts_board.h
967
985
(echo "/* WARNING. THIS FILE IS AUTO-GENERATED. DO NOT MODIFY! */";)
968
986
endef
987
+ define filechk_generated_dts_board.conf
988
+ (echo "# WARNING. THIS FILE IS AUTO-GENERATED. DO NOT MODIFY!";)
989
+ endef
969
990
endif
970
991
971
-
972
992
include/generated/generated_dts_board.h : include/config/auto.conf FORCE
973
993
ifeq ($(CONFIG_HAS_DTS ) ,y)
974
994
$(Q)$(MAKE) $(build)=dts/$(ARCH)
975
995
endif
976
996
$(call filechk,generated_dts_board.h)
977
997
998
+ include/generated/generated_dts_board.conf : include/config/auto.conf FORCE
999
+ ifeq ($(CONFIG_HAS_DTS ) ,y)
1000
+ $(Q)$(MAKE) $(build)=dts/$(ARCH)
1001
+ endif
1002
+ $(call filechk,generated_dts_board.conf)
1003
+
978
1004
dts : include/generated/generated_dts_board.h
979
1005
980
1006
# The actual objects are generated when descending,
@@ -1091,7 +1117,8 @@ depend dep:
1091
1117
# Directories & files removed with 'make clean'
1092
1118
CLEAN_DIRS += $(MODVERDIR )
1093
1119
1094
- CLEAN_FILES += include/generated/generated_dts_board.h \
1120
+ CLEAN_FILES += include/generated/generated_dts_board.conf \
1121
+ include/generated/generated_dts_board.h \
1095
1122
.old_version .tmp_System.map .tmp_version \
1096
1123
.tmp_* System.map *.lnk *.map *.elf *.lst \
1097
1124
*.bin *.hex *.stat *.strip staticIdt.o linker.cmd \
0 commit comments