diff --git a/bitbang_spi.c b/bitbang_spi.c
index f319957..30f6519 100644
--- a/bitbang_spi.c
+++ b/bitbang_spi.c
@@ -77,7 +77,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 #if 0 // until it is needed
diff --git a/buspirate_spi.c b/buspirate_spi.c
index 5dee4ed..f4d2f0b 100644
--- a/buspirate_spi.c
+++ b/buspirate_spi.c
@@ -145,7 +145,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= buspirate_spi_shutdown,
 };
 
diff --git a/ch341a_spi.c b/ch341a_spi.c
index a3ea93d..b023562 100644
--- a/ch341a_spi.c
+++ b/ch341a_spi.c
@@ -397,7 +397,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= ch341a_spi_shutdown,
 };
 
diff --git a/digilent_spi.c b/digilent_spi.c
index cd73c65..a05b958 100644
--- a/digilent_spi.c
+++ b/digilent_spi.c
@@ -322,7 +322,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= digilent_spi_shutdown,
 };
 
diff --git a/dirtyjtag_spi.c b/dirtyjtag_spi.c
index 35add46..4002c7c 100644
--- a/dirtyjtag_spi.c
+++ b/dirtyjtag_spi.c
@@ -197,7 +197,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= dirtyjtag_spi_shutdown,
 };
 
diff --git a/dummyflasher.c b/dummyflasher.c
index 56ba338..02b75b1 100644
--- a/dummyflasher.c
+++ b/dummyflasher.c
@@ -121,7 +121,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= dummy_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 static const struct par_master par_master_dummyflasher = {
diff --git a/ft2232_spi.c b/ft2232_spi.c
index 378566e..921672c 100644
--- a/ft2232_spi.c
+++ b/ft2232_spi.c
@@ -295,7 +295,6 @@
 	.multicommand	= ft2232_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= ft2232_shutdown,
 };
 
diff --git a/ichspi.c b/ichspi.c
index eb90d57..fc3c9a9 100644
--- a/ichspi.c
+++ b/ichspi.c
@@ -1698,7 +1698,6 @@
 	.multicommand	= ich_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 static const struct spi_master spi_master_ich9 = {
@@ -1708,7 +1707,6 @@
 	.multicommand	= ich_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 static const struct opaque_master opaque_master_ich_hwseq = {
@@ -2075,7 +2073,6 @@
 	.multicommand	= ich_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 int via_init_spi(uint32_t mmio_base)
diff --git a/jlink_spi.c b/jlink_spi.c
index 3559882..09c4dbc 100644
--- a/jlink_spi.c
+++ b/jlink_spi.c
@@ -167,7 +167,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.features	= SPI_MASTER_4BA,
 	.shutdown	= jlink_spi_shutdown,
 };
diff --git a/linux_spi.c b/linux_spi.c
index c4ba915..17b3900 100644
--- a/linux_spi.c
+++ b/linux_spi.c
@@ -67,7 +67,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= linux_spi_read,
 	.write_256	= linux_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= linux_spi_shutdown,
 };
 
diff --git a/mstarddc_spi.c b/mstarddc_spi.c
index d303e21..2c61d98 100644
--- a/mstarddc_spi.c
+++ b/mstarddc_spi.c
@@ -222,7 +222,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= mstarddc_spi_shutdown,
 };
 
diff --git a/ni845x_spi.c b/ni845x_spi.c
index 415b276..0889d35 100644
--- a/ni845x_spi.c
+++ b/ni845x_spi.c
@@ -631,7 +631,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= ni845x_spi_shutdown,
 };
 
diff --git a/pickit2_spi.c b/pickit2_spi.c
index 240723c..b402421 100644
--- a/pickit2_spi.c
+++ b/pickit2_spi.c
@@ -349,7 +349,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= pickit2_shutdown,
 };
 
diff --git a/sb600spi.c b/sb600spi.c
index 4e954a9..8827fb9 100644
--- a/sb600spi.c
+++ b/sb600spi.c
@@ -68,7 +68,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 static struct spi_master spi_master_yangtze = {
@@ -78,7 +77,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 static int find_smbus_dev_rev(uint16_t vendor, uint16_t device)
diff --git a/serprog.c b/serprog.c
index 8b2af8a..eb15219 100644
--- a/serprog.c
+++ b/serprog.c
@@ -332,7 +332,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 static void serprog_chip_writeb(const struct flashctx *flash, uint8_t val,
diff --git a/spi.c b/spi.c
index b7a7a21..ac79f73 100644
--- a/spi.c
+++ b/spi.c
@@ -126,7 +126,9 @@
 
 int spi_aai_write(struct flashctx *flash, const uint8_t *buf, unsigned int start, unsigned int len)
 {
-	return flash->mst->spi.write_aai(flash, buf, start, len);
+	if (flash->mst->spi.write_aai)
+		return flash->mst->spi.write_aai(flash, buf, start, len);
+	return default_spi_write_aai(flash, buf, start, len);
 }
 
 int register_spi_master(const struct spi_master *mst, void *data)
@@ -140,7 +142,7 @@
 		}
 	}
 
-	if (!mst->write_aai || !mst->write_256 || !mst->read || !mst->command ||
+	if (!mst->write_256 || !mst->read || !mst->command ||
 	    !mst->multicommand ||
 	    ((mst->command == default_spi_send_command) &&
 	     (mst->multicommand == default_spi_send_multicommand))) {
diff --git a/stlinkv3_spi.c b/stlinkv3_spi.c
index f5d31e2..59d9c16 100644
--- a/stlinkv3_spi.c
+++ b/stlinkv3_spi.c
@@ -444,7 +444,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 	.shutdown	= stlinkv3_spi_shutdown,
 };
 
diff --git a/usbblaster_spi.c b/usbblaster_spi.c
index 8f05088..1a26e36 100644
--- a/usbblaster_spi.c
+++ b/usbblaster_spi.c
@@ -209,7 +209,6 @@
 	.multicommand	= default_spi_send_multicommand,
 	.read		= default_spi_read,
 	.write_256	= default_spi_write_256,
-	.write_aai	= default_spi_write_aai,
 };
 
 const struct programmer_entry programmer_usbblaster_spi = {
