From a9d7990dc4bde63a30ebeb2f2f49f6e2b9283605 Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Sat, 7 Apr 2018 16:06:22 +0200 Subject: [PATCH] serial: Fix Makefile during SPL and TPL build This patch fixes a situation where CONFIG_DM_SERIAL is enabled for regular U-Boot and SPL, but not for TPL. In that case, the build will try to include serial-uclass into the TPL nonetheless, because CONFIG_DM_SERIAL is set. The solution is to check if the build is for SPL or TPL and in that case, check if CONFIG_$(SPL_TPL_)DM_SERIAL is also set. Only in that case, include serial-uclass.c . If the build is for regular U-Boot, CONFIG_BUILD is not set, so only check if CONFIG_DM_SERIAL is set and if so, include serial-uclass.c Signed-off-by: Marek Vasut Cc: Simon Glass Cc: Tom Rini --- drivers/serial/Makefile | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/drivers/serial/Makefile b/drivers/serial/Makefile index cac9a8b312..6937ef9628 100644 --- a/drivers/serial/Makefile +++ b/drivers/serial/Makefile @@ -5,11 +5,27 @@ # SPDX-License-Identifier: GPL-2.0+ # +ifdef CONFIG_SPL_BUILD + +ifeq ($(CONFIG_$(SPL_TPL_)BUILD)$(CONFIG_$(SPL_TPL_)DM_SERIAL),yy) +obj-y += serial-uclass.o +else +obj-y += serial.o +endif + +else + ifdef CONFIG_DM_SERIAL -obj-$(CONFIG_$(SPL_TPL_)DM_SERIAL) += serial-uclass.o -obj-$(CONFIG_PL01X_SERIAL) += serial_pl01x.o +obj-y += serial-uclass.o else obj-y += serial.o +endif + +endif + +ifdef CONFIG_DM_SERIAL +obj-$(CONFIG_PL01X_SERIAL) += serial_pl01x.o +else obj-$(CONFIG_PL010_SERIAL) += serial_pl01x.o obj-$(CONFIG_PL011_SERIAL) += serial_pl01x.o obj-$(CONFIG_SYS_NS16550_SERIAL) += serial_ns16550.o -- 2.39.2