[RFC PATCH 1/1] Makefile: Expand legacy (non-DM) driver warnings

Niel Fourie lusus at denx.de
Wed Mar 25 14:47:00 CET 2020


Expand warnings printed by Makefile after compile when legacy
drivers are in use. These include:

- CONFIG_HAVE_BLOCK_DEVICE without CONFIG_BLK
- CONFIG_BOOTCOUNT_LIMIT without CONFIG_DM_BOOTCOUNT
- CONFIG_MTD without CONFIG_DM_MTD
- CONFIG_PHYLIB without CONFIG_DM_MDIO
- CONFIG_POWER, also without CONFIG_DM_PMIC
- Absence of CONFIG_RAM and CONFIG_SPL_RAM

Also replaced existing CONFIG_DM_SPI warning for consistency.
Removed CONFIG_BLK requirement for CONFIG_DM_USB, as all USB
devices not block devices.

Signed-off-by: Niel Fourie <lusus at denx.de>
Cc: Simon Glass <sjg at chromium.org>
---
 Makefile | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 file changed, 67 insertions(+), 6 deletions(-)

diff --git a/Makefile b/Makefile
index fa687f13a5..0df58ca7c1 100644
--- a/Makefile
+++ b/Makefile
@@ -963,11 +963,6 @@ cmd_cfgcheck = $(srctree)/scripts/check-config.sh $2 \
 all:		$(ALL-y)
 ifeq ($(CONFIG_DEPRECATED),y)
 	$(warning "You have deprecated configuration options enabled in your .config! Please check your configuration.")
-ifeq ($(CONFIG_SPI),y)
-ifneq ($(CONFIG_DM_SPI)$(CONFIG_OF_CONTROL),yy)
-	$(warning "The relevant config item with associated code will remove in v2019.07 release.")
-endif
-endif
 endif
 ifneq ($(CONFIG_DM),y)
 	@echo >&2 "===================== WARNING ======================"
@@ -988,7 +983,7 @@ ifneq ($(CONFIG_DM_MMC)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy)
 endif
 endif
 ifeq ($(CONFIG_USB),y)
-ifneq ($(CONFIG_DM_USB)$(CONFIG_OF_CONTROL)$(CONFIG_BLK),yyy)
+ifneq ($(CONFIG_DM_USB)$(CONFIG_OF_CONTROL),yy)
 	@echo >&2 "===================== WARNING ======================"
 	@echo >&2 "This board does not use CONFIG_DM_USB. Please update"
 	@echo >&2 "the board to use CONFIG_DM_USB before the v2019.07 release."
@@ -1046,6 +1041,16 @@ ifeq ($(CONFIG_OF_EMBED),y)
 	@echo >&2 "See doc/README.fdt-control for more info."
 	@echo >&2 "===================================================="
 endif
+ifeq ($(CONFIG_SPI),y)
+ifneq ($(CONFIG_DM_SPI)$(CONFIG_OF_CONTROL),yy)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board uses CONFIG_SPI without having CONFIG_DM_SPI"
+	@echo >&2 "enabled. Please update the board before the v2019.07 release."
+	@echo >&2 "Failure to update by the deadline may result in board removal."
+	@echo >&2 "See doc/driver-model/migration.rst for more info."
+	@echo >&2 "===================================================="
+endif
+endif
 ifeq ($(CONFIG_SPI_FLASH),y)
 ifneq ($(CONFIG_DM_SPI_FLASH)$(CONFIG_OF_CONTROL),yy)
 	@echo >&2 "===================== WARNING ======================"
@@ -1078,6 +1083,62 @@ ifneq ($(CONFIG_DM_ETH),y)
 	@echo >&2 "===================================================="
 endif
 endif
+ifeq ($(CONFIG_HAVE_BLOCK_DEVICE),y)
+ifneq ($(CONFIG_BLK),y)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board uses CONFIG_HAVE_BLOCK_DEVICE but does not"
+	@echo >&2 "have CONFIG_BLK enabled. This implies legacy block"
+	@echo >&2 "device support is enabled without driver model (DM)."
+	@echo >&2 "===================================================="
+endif
+endif
+ifeq ($(CONFIG_BOOTCOUNT_LIMIT),y)
+ifneq ($(CONFIG_DM_BOOTCOUNT),y)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board uses CONFIG_BOOTCOUNT_LIMIT without"
+	@echo >&2 "having CONFIG_DM_BOOTCOUNT enabled. This implies a"
+	@echo >&2 "legacy bootcounter without driver model (DM) support."
+	@echo >&2 "===================================================="
+endif
+endif
+ifeq ($(CONFIG_MTD),y)
+ifneq ($(CONFIG_DM_MTD),y)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board uses CONFIG_MTD without having CONFIG_DM_MTD"
+	@echo >&2 "enabled. This implies legacy MTD support, without"
+	@echo >&2 "driver model (DM)."
+	@echo >&2 "===================================================="
+endif
+endif
+ifeq ($(CONFIG_PHYLIB),y)
+ifneq ($(CONFIG_DM_MDIO),y)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board uses CONFIG_PHYLIB, without having"
+	@echo >&2 "CONFIG_DM_MDIO enabled. This implies legacy ethernet"
+	@echo >&2 "phy support, without driver model (DM)."
+	@echo >&2 "===================================================="
+endif
+endif
+ifeq ($(CONFIG_POWER),y)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board uses CONFIG_POWER which enables the legacy"
+	@echo >&2 "pre-DM PMIC support."
+ifneq ($(CONFIG_DM_PMIC),y)
+	@echo >&2 "CONFIG_DM_PMIC is disabled, therefore no driver model"
+	@echo >&2 "(DM) PMIC support is enabled."
+endif
+	@echo >&2 "===================================================="
+endif
+ifneq ($(CONFIG_RAM),y)
+ifneq ($(CONFIG_SPL_RAM),y)
+	@echo >&2 "===================== WARNING ======================"
+	@echo >&2 "This board does not use CONFIG_RAM or CONFIG_SPL_RAM"
+	@echo >&2 "This implies legacy memory configuration code is in"
+	@echo >&2 "use, without driver model (DM) support."
+	@echo >&2 "===================================================="
+endif
+endif
+
 	@# Check that this build does not use CONFIG options that we do not
 	@# know about unless they are in Kconfig. All the existing CONFIG
 	@# options are whitelisted, so new ones should not be added.
-- 
2.25.1



More information about the U-Boot mailing list