diff --git a/README b/README
index 5c343da32bdf581420c0d18e5cea3cac49c8f9e3..40ffd6422ee022804dd9e804fe3726a3d3eedd4f 100644
--- a/README
+++ b/README
@@ -1642,14 +1642,6 @@ CBFS (Coreboot Filesystem) support
 			=> vertically centered image
 			   at x = dspWidth - bmpWidth - 9
 
-		CONFIG_SPLASH_SCREEN_PREPARE
-
-		If this option is set then the board_splash_screen_prepare()
-		function, which must be defined in your code, is called as part
-		of the splash screen display sequence. It gives the board an
-		opportunity to prepare the splash image data before it is
-		processed and sent to the frame buffer by U-Boot.
-
 - Gzip compressed BMP image support: CONFIG_VIDEO_BMP_GZIP
 
 		If this option is set, additionally to standard BMP
diff --git a/common/splash.c b/common/splash.c
index 5cf52723a565980c19b744299c1e84ab58d635c0..c7444977ed7fad566e5322520b99ea53f7e42e9e 100644
--- a/common/splash.c
+++ b/common/splash.c
@@ -21,16 +21,11 @@
  */
 
 #include <splash.h>
-#include <config.h>
 
-#ifdef CONFIG_SPLASH_SCREEN_PREPARE
-int splash_screen_prepare(void)
-{
-	return board_splash_screen_prepare();
-}
-#else
-int splash_screen_prepare(void)
+int __splash_screen_prepare(void)
 {
 	return 0;
 }
-#endif
+
+int splash_screen_prepare(void)
+	__attribute__ ((weak, alias("__splash_screen_prepare")));
diff --git a/doc/README.splashprepare b/doc/README.splashprepare
new file mode 100644
index 0000000000000000000000000000000000000000..61b4ec53ecaddee676e0c6c2ec1dac65efe544d4
--- /dev/null
+++ b/doc/README.splashprepare
@@ -0,0 +1,8 @@
+---------------------------------------------------------------------
+Splash Screen
+---------------------------------------------------------------------
+The splash_screen_prepare() function is a weak function defined in
+common/splash.c. It is called as part of the splash screen display
+sequence. It gives the board an opportunity to prepare the splash
+image data before it is processed and sent to the frame buffer by
+U-Boot.  Define your own version to use this feature.