diff --git a/include/toplevel.mk b/include/toplevel.mk
index b215e41afdb90a0d8d54eb60f621942b081259fc..19b25d339297d85193c35305264fdac4493db361 100644
--- a/include/toplevel.mk
+++ b/include/toplevel.mk
@@ -133,6 +133,7 @@ prereq:: prepare-tmpinfo .config
 	@+$(NO_TRACE_MAKE) -r -s $@
 
 %::
+	@+$(PREP_MK) $(NO_TRACE_MAKE) -r -s prereq
 	@( \
 		cp .config tmp/.config; \
 		./scripts/config/conf -D tmp/.config -w tmp/.config Config.in > /dev/null 2>&1; \
@@ -140,7 +141,6 @@ prereq:: prepare-tmpinfo .config
 			echo "WARNING: your configuration is out of sync. Please run make menuconfig, oldconfig or defconfig!"; \
 		fi \
 	)
-	@+$(PREP_MK) $(NO_TRACE_MAKE) -r -s prereq
 	@+$(SUBMAKE) -r $@
 
 help: