diff --git a/doc/feature-removal-schedule.txt b/doc/feature-removal-schedule.txt
index 180ead5d81bed77352ce6f3995b8c7ffd4d7fc7c..13d7d9aaa1bcfccdb1a507a271b88b70a17cf413 100644
--- a/doc/feature-removal-schedule.txt
+++ b/doc/feature-removal-schedule.txt
@@ -7,6 +7,22 @@ file.
 
 ---------------------------
 
+What:	boards with xxx_config targets in top level Makefile
+When:	Release v2012.03
+
+Why:	We have a boards.cfg file which the vast majority of boards have
+	converted over to.  Boards that still manually run mkconfig in the
+	top level Makefile are either dead, or the maintainer doesn't care,
+	or they are doing something weird/wrong that should be fixed in a
+	different way, or they need to extend boards.cfg syntax (unlikely).
+
+	In any case, if no one cares about these boards to figure out how
+	to make boards.cfg work, then we'll just punt them.
+
+Who:	Mike Frysinger <vapier@gentoo.org>
+
+---------------------------
+
 What:	CONFIG_NET_MULTI option
 When:	Release 2009-11
 
diff --git a/mkconfig b/mkconfig
index ecb6d4ef4f064fd647c06e3bcce7f6ea70ee1107..438530b567863c638d4a21fa38ab1688370ec527 100755
--- a/mkconfig
+++ b/mkconfig
@@ -29,6 +29,15 @@ if [ \( $# -eq 2 \) -a \( "$1" = "-A" \) ] ; then
 	set ${line}
 	# add default board name if needed
 	[ $# = 3 ] && set ${line} ${1}
+elif [ "${MAKEFLAGS+set}${MAKELEVEL+set}" = "setset" ] ; then
+	# only warn when using a config target in the Makefile
+	cat <<-EOF
+
+	warning: Please migrate to boards.cfg.  Failure to do so will
+	         mean removal of your board in the next release.
+
+	EOF
+	sleep 5
 fi
 
 while [ $# -gt 0 ] ; do