diff --git a/drivers/mtd/nand/kirkwood_nand.c b/drivers/mtd/nand/kirkwood_nand.c
index 72687a1da31b583d4cadc018629ebb755f10b10a..3e5fb0cd65a243d77fe2759556bab0f9209beec1 100644
--- a/drivers/mtd/nand/kirkwood_nand.c
+++ b/drivers/mtd/nand/kirkwood_nand.c
@@ -58,6 +58,9 @@ void kw_nand_select_chip(struct mtd_info *mtd, int chip)
 int board_nand_init(struct nand_chip *nand)
 {
 	nand->options = NAND_COPYBACK | NAND_CACHEPRG | NAND_NO_PADDING;
+#if defined(CONFIG_SYS_NAND_NO_SUBPAGE_WRITE)
+	nand->options |= NAND_NO_SUBPAGE_WRITE;
+#endif
 #if defined(CONFIG_NAND_ECC_BCH)
 	nand->ecc.mode = NAND_ECC_SOFT_BCH;
 #else