diff --git a/cmd/Kconfig b/cmd/Kconfig
index 4f7336aeb01ee7f6c5c6f0c954819530fdda2d0d..845589d2ffc2b7b39afac592f51c011a8bffd6bd 100644
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
@@ -295,6 +295,15 @@ config CMD_SPL_NAND_OFS
 	  for full information about how to use this option (and also see
 	  board/gateworks/gw_ventana/README for an example).
 
+config CMD_SPL_WRITE_SIZE
+	hex "Size of argument area"
+	depends on CMD_SPL
+	default 0x2000
+	help
+	  This provides the size of the command-line argument area in NAND
+	  flash used by Falcon-mode boot. See the documentation until CMD_SPL
+	  for detail.
+
 endmenu
 
 menu "Environment commands"
diff --git a/configs/am43xx_evm_defconfig b/configs/am43xx_evm_defconfig
index a66d8070c0f233f15171c8d07e776fcebf689737..afac014304377b1ec69882e63ca4923d587cd7fa 100644
--- a/configs/am43xx_evm_defconfig
+++ b/configs/am43xx_evm_defconfig
@@ -17,6 +17,7 @@ CONFIG_HUSH_PARSER=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00100000
+CONFIG_CMD_SPL_WRITE_SIZE=0x40000
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_NAND=y
 # CONFIG_CMD_SETEXPR is not set
diff --git a/configs/am43xx_evm_ethboot_defconfig b/configs/am43xx_evm_ethboot_defconfig
index 5679f31c2c6f1b7864592c0fcad46b4b2e117964..687bec3f0f491fe89b992a83a8e56f02c171d797 100644
--- a/configs/am43xx_evm_ethboot_defconfig
+++ b/configs/am43xx_evm_ethboot_defconfig
@@ -17,6 +17,7 @@ CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00100000
+CONFIG_CMD_SPL_WRITE_SIZE=0x40000
 CONFIG_CMD_ASKENV=y
 CONFIG_CMD_EEPROM=y
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/am43xx_evm_usbhost_boot_defconfig b/configs/am43xx_evm_usbhost_boot_defconfig
index 549ec0a020200ad28a01c905132a310520d97c5d..0717d69fd2877165e49947b1a570b0f65d4a8dfa 100644
--- a/configs/am43xx_evm_usbhost_boot_defconfig
+++ b/configs/am43xx_evm_usbhost_boot_defconfig
@@ -21,6 +21,7 @@ CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00100000
+CONFIG_CMD_SPL_WRITE_SIZE=0x40000
 CONFIG_CMD_ASKENV=y
 CONFIG_CMD_EEPROM=y
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/devkit8000_defconfig b/configs/devkit8000_defconfig
index 875c8881f9a412b4489d61115127204d90c156c9..f0d601846899b974ef413fb9f7fa9030a558affb 100644
--- a/configs/devkit8000_defconfig
+++ b/configs/devkit8000_defconfig
@@ -12,6 +12,7 @@ CONFIG_HUSH_PARSER=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x680000
+CONFIG_CMD_SPL_WRITE_SIZE=0x400
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_NAND=y
diff --git a/configs/gwventana_emmc_defconfig b/configs/gwventana_emmc_defconfig
index 3318faee0f7e67557e06506ac09ae14dd6655bfa..944c0125e8c45720e431cd27c724fe1132a223a3 100644
--- a/configs/gwventana_emmc_defconfig
+++ b/configs/gwventana_emmc_defconfig
@@ -33,6 +33,7 @@ CONFIG_SYS_PROMPT="Ventana > "
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL_NAND_OFS=0x1100000
+CONFIG_CMD_SPL_WRITE_SIZE=0x20000
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_I2C=y
diff --git a/configs/gwventana_gw5904_defconfig b/configs/gwventana_gw5904_defconfig
index 7830d90ca21240009983706dbec72863b49ba3df..5b2672c2bf6d9a5d57d470d1f063408ccf28cd7e 100644
--- a/configs/gwventana_gw5904_defconfig
+++ b/configs/gwventana_gw5904_defconfig
@@ -33,6 +33,7 @@ CONFIG_SYS_PROMPT="Ventana > "
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL_NAND_OFS=0x1100000
+CONFIG_CMD_SPL_WRITE_SIZE=0x20000
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_I2C=y
diff --git a/configs/gwventana_nand_defconfig b/configs/gwventana_nand_defconfig
index 3b0f42d377345faf18618c54442e8eb9183ed255..ecbe4e60a67074450cc6afad0a7f296248f0d9be 100644
--- a/configs/gwventana_nand_defconfig
+++ b/configs/gwventana_nand_defconfig
@@ -34,6 +34,7 @@ CONFIG_SYS_PROMPT="Ventana > "
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL_NAND_OFS=0x1100000
+CONFIG_CMD_SPL_WRITE_SIZE=0x20000
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_NAND=y
diff --git a/configs/ipam390_defconfig b/configs/ipam390_defconfig
index 702b3115682b0919f24489db067a4ecde1d39c8b..80d9f47a65abf450144b71d3778535f234278a81 100644
--- a/configs/ipam390_defconfig
+++ b/configs/ipam390_defconfig
@@ -19,6 +19,7 @@ CONFIG_SYS_PROMPT="U-Boot > "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00180000
+CONFIG_CMD_SPL_WRITE_SIZE=0x400
 CONFIG_CMD_ASKENV=y
 CONFIG_CRC32_VERIFY=y
 # CONFIG_CMD_FLASH is not set
diff --git a/configs/mx6sabresd_defconfig b/configs/mx6sabresd_defconfig
index 02e1d6a620d06b80e57717a5d9c6c8a01d787097..a5e63aa496218f5595e288a46ee0ead84d474839 100644
--- a/configs/mx6sabresd_defconfig
+++ b/configs/mx6sabresd_defconfig
@@ -23,6 +23,7 @@ CONFIG_HUSH_PARSER=y
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
+CONFIG_CMD_SPL_WRITE_SIZE=0x20000
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_PART=y
diff --git a/configs/twister_defconfig b/configs/twister_defconfig
index 130806047b3eb5f33e06ec775b763d96d88f0ae5..29c183ae4424f1d1b3530cb53fb9d701431c4697 100644
--- a/configs/twister_defconfig
+++ b/configs/twister_defconfig
@@ -13,6 +13,7 @@ CONFIG_SYS_PROMPT="twister => "
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00800000
+CONFIG_CMD_SPL_WRITE_SIZE=0x400
 CONFIG_CMD_EEPROM=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
index e11527fcff661d22399e9ea11c62efaa1777048c..9c419dee415f3c199e3f655b4fcb6d646d3ab335 100644
--- a/include/configs/am335x_evm.h
+++ b/include/configs/am335x_evm.h
@@ -239,7 +239,6 @@
 #endif
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 /* kernel offset */
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 #endif /* !CONFIG_NAND */
 
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
index 7a811a0a2b6d86c959842b475c50aced8275084b..17fc28615625a8cd17086d384241e218e0b4669f 100644
--- a/include/configs/am43xx_evm.h
+++ b/include/configs/am43xx_evm.h
@@ -308,7 +308,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00300000 /* kernel offset */
-#define CONFIG_CMD_SPL_WRITE_SIZE	CONFIG_SYS_NAND_BLOCK_SIZE
 #endif
 #define NANDARGS \
 	"mtdids=" MTDIDS_DEFAULT "\0" \
diff --git a/include/configs/baltos.h b/include/configs/baltos.h
index d5413fd071dd064b1b812326f60001fe29431b64..dbd933f30aca16a048b17492e0b7bacf49a2dbd5 100644
--- a/include/configs/baltos.h
+++ b/include/configs/baltos.h
@@ -46,7 +46,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_OFFS	0x00080000
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x00200000 /* kernel offset */
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 #define NANDARGS \
 	"mtdids=" MTDIDS_DEFAULT "\0" \
diff --git a/include/configs/bav335x.h b/include/configs/bav335x.h
index 8acc771e3aff6477b1074ad7209ee99b1118bd1e..59530beeda9518145c223a7b2013d3a1a3b23ca5 100644
--- a/include/configs/bav335x.h
+++ b/include/configs/bav335x.h
@@ -396,7 +396,6 @@ DEFAULT_LINUX_BOOT_ENV \
 #endif
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 /* kernel offset */
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 #endif /* !CONFIG_NAND */
 
diff --git a/include/configs/brppt1.h b/include/configs/brppt1.h
index 3dbbf67b5c6691d785735d1d58a53147a3afb433..f965fc9a1d0fc3ad466efe5b555cda68f5c1fc06 100644
--- a/include/configs/brppt1.h
+++ b/include/configs/brppt1.h
@@ -67,7 +67,6 @@
 /* NAND */
 #ifdef CONFIG_NAND
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS		0x140000
-#define CONFIG_CMD_SPL_WRITE_SIZE		0x2000
 #endif /* CONFIG_NAND */
 #endif /* CONFIG_SPL_OS_BOOT */
 
diff --git a/include/configs/cm_t335.h b/include/configs/cm_t335.h
index 1874cd38e8ec947a51ab19c71804efa8770447f4..0da8774be40aaa48eff99947e484b12c610a6e34 100644
--- a/include/configs/cm_t335.h
+++ b/include/configs/cm_t335.h
@@ -138,7 +138,6 @@
 #define CONFIG_SYS_NAND_ONFI_DETECTION
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x500000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 
 /* GPIO pin + bank to pin ID mapping */
diff --git a/include/configs/devkit8000.h b/include/configs/devkit8000.h
index 30c165cd7748b3dcc2e63e0545dce6e05e064db0..314c393af3a12c6baebb1f70a8c87f3ca06d2410 100644
--- a/include/configs/devkit8000.h
+++ b/include/configs/devkit8000.h
@@ -209,7 +209,6 @@
 #define CONFIG_SYS_NAND_U_BOOT_SIZE	0x200000
 
 /* SPL OS boot options */
-#define CONFIG_CMD_SPL_WRITE_SIZE       0x400 /* 1024 byte */
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000
 
 #undef CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR
diff --git a/include/configs/dra7xx_evm.h b/include/configs/dra7xx_evm.h
index 9316a1227882f7931375272963afdf05a5953eea..e124bda496b0392536c44b5eda6d12a33f94ddc0 100644
--- a/include/configs/dra7xx_evm.h
+++ b/include/configs/dra7xx_evm.h
@@ -210,7 +210,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000 /* kernel offset */
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 #endif /* !CONFIG_NAND */
 
diff --git a/include/configs/gw_ventana.h b/include/configs/gw_ventana.h
index d389058573baff7b1456ae2ebdae736f70494ae2..aeacd46f337d18ddf6b61f576de44f67847c9ebc 100644
--- a/include/configs/gw_ventana.h
+++ b/include/configs/gw_ventana.h
@@ -13,7 +13,6 @@
 
 /* Falcon Mode */
 #define CONFIG_SYS_SPL_ARGS_ADDR	0x18000000
-#define CONFIG_CMD_SPL_WRITE_SIZE	(128 * SZ_1K)
 
 /* Falcon Mode - NAND support: args@17MB kernel@18MB */
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	(18 * SZ_1M)
diff --git a/include/configs/ipam390.h b/include/configs/ipam390.h
index 6adbb8e778925e01ef0eb68a0b0802a7fc11cb60..be91dc27cd8ae46e799e277eca23a543fb9e50f7 100644
--- a/include/configs/ipam390.h
+++ b/include/configs/ipam390.h
@@ -276,7 +276,6 @@
 /* add FALCON boot mode */
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000
 #define CONFIG_SYS_SPL_ARGS_ADDR	LINUX_BOOT_PARAM_ADDR
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x400
 
 /* GPIO support */
 #define CONFIG_DA8XX_GPIO
diff --git a/include/configs/mx6sabreauto.h b/include/configs/mx6sabreauto.h
index daebf5cba59ce044a3a5e05e9d73ebf77c34f19b..03ab812a32489c778ca7ed11d93876950d1b6f7d 100644
--- a/include/configs/mx6sabreauto.h
+++ b/include/configs/mx6sabreauto.h
@@ -35,7 +35,6 @@
 #define CONFIG_SPL_FS_LOAD_ARGS_NAME	"args"
 #define CONFIG_SPL_FS_LOAD_KERNEL_NAME	"uImage"
 #define CONFIG_SYS_SPL_ARGS_ADDR       0x18000000
-#define CONFIG_CMD_SPL_WRITE_SIZE      (128 * SZ_1K)
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/mx6sabresd.h b/include/configs/mx6sabresd.h
index 9622394c8fdbf4a3edd8dfe239aabc6efc3ed570..5410881fa1db548e8f0a95d43928fc2d4d549481 100644
--- a/include/configs/mx6sabresd.h
+++ b/include/configs/mx6sabresd.h
@@ -25,7 +25,6 @@
 #define CONFIG_SPL_FS_LOAD_ARGS_NAME	"args"
 #define CONFIG_SPL_FS_LOAD_KERNEL_NAME	"uImage"
 #define CONFIG_SYS_SPL_ARGS_ADDR       0x18000000
-#define CONFIG_CMD_SPL_WRITE_SIZE      (128 * SZ_1K)
 
 /* Falcon Mode - MMC support: args@1MB kernel@2MB */
 #define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR  0x800   /* 1MB */
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
index c6839013f271b9d5715576beaf7dfa4c5ac01b22..fe83e71b6182ee439e17bce60ba17bf6c7db26b0 100644
--- a/include/configs/omap3_beagle.h
+++ b/include/configs/omap3_beagle.h
@@ -277,7 +277,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 
 #endif /* __CONFIG_H */
diff --git a/include/configs/omap3_cairo.h b/include/configs/omap3_cairo.h
index 5f9f8156fd6bea38364326954e15dc64beab2bac..162fe0f2d3a432da508d268ec96451a35e22bc52 100644
--- a/include/configs/omap3_cairo.h
+++ b/include/configs/omap3_cairo.h
@@ -201,7 +201,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 
 /* env defaults */
diff --git a/include/configs/omap3_logic.h b/include/configs/omap3_logic.h
index 795538bc8839acd5c56714376f8ff025c66f3093..5490fc945a18324c3be160788295e938f93ac1f6 100644
--- a/include/configs/omap3_logic.h
+++ b/include/configs/omap3_logic.h
@@ -264,7 +264,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 
 #endif /* __CONFIG_H */
diff --git a/include/configs/omap3_overo.h b/include/configs/omap3_overo.h
index bfcf7900026afbfe924532e90bd7ff51845098e9..473ffc08c78d07b0e80684f45ca20f1c7cfb747b 100644
--- a/include/configs/omap3_overo.h
+++ b/include/configs/omap3_overo.h
@@ -218,7 +218,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 
 #endif				/* __CONFIG_H */
diff --git a/include/configs/omap3_zoom1.h b/include/configs/omap3_zoom1.h
index d3c72f30b274fe73640c6f394e1ca9f1341121dd..5694cb76c357bc65cd447eda69f4d0a867c363fd 100644
--- a/include/configs/omap3_zoom1.h
+++ b/include/configs/omap3_zoom1.h
@@ -58,7 +58,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 #endif
 
diff --git a/include/configs/pengwyn.h b/include/configs/pengwyn.h
index 1c611677b7901329c98455dea29fc437b2561294..f1b8198e18ecf798d68dac924c54314c72a397df 100644
--- a/include/configs/pengwyn.h
+++ b/include/configs/pengwyn.h
@@ -164,7 +164,6 @@
 /* NAND: SPL falcon mode configs */
 #ifdef CONFIG_SPL_OS_BOOT
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x280000
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x2000
 #endif
 
 /*
diff --git a/include/configs/twister.h b/include/configs/twister.h
index 80d480b103475b063da17ad725ca8bd03ac2fa2b..bec402ea9c43b57437a421a2c2e70b056b21bbc3 100644
--- a/include/configs/twister.h
+++ b/include/configs/twister.h
@@ -36,7 +36,6 @@
 	"bootcmd=run nandboot\0"
 
 /* SPL OS boot options */
-#define CONFIG_CMD_SPL_WRITE_SIZE	0x400 /* 1024 byte */
 #define CONFIG_SYS_NAND_SPL_KERNEL_OFFS	0x00200000
 
 #define CONFIG_SYS_SPL_ARGS_ADDR	(PHYS_SDRAM_1 + 0x100)
diff --git a/scripts/config_whitelist.txt b/scripts/config_whitelist.txt
index e570f0ffe478ac75ae293e447649bed78a5d2f16..2b801641c814ea1abdb9e9a47561965df0ca4f54 100644
--- a/scripts/config_whitelist.txt
+++ b/scripts/config_whitelist.txt
@@ -293,7 +293,6 @@ CONFIG_CM922T_XA10
 CONFIG_CMDLINE_EDITING
 CONFIG_CMDLINE_PS_SUPPORT
 CONFIG_CMDLINE_TAG
-CONFIG_CMD_SPL_WRITE_SIZE
 CONFIG_CMD_STRINGS
 CONFIG_CMD_SX151X
 CONFIG_CMD_TCA642X