diff --git a/host/arch/arm/lib/crossystem_arch.c b/host/arch/arm/lib/crossystem_arch.c
index 579be85..43a59cf 100644
--- a/host/arch/arm/lib/crossystem_arch.c
+++ b/host/arch/arm/lib/crossystem_arch.c
@@ -431,13 +431,11 @@
 	if (!FdtPropertyExist(FDT_NVSTORAGE_TYPE_PROP))
 		return vb2_read_nv_storage_disk(ctx);
 	media = ReadFdtString(FDT_NVSTORAGE_TYPE_PROP);
-	if (!strcmp(media, "flash"))
-		return vb2_read_nv_storage_flashrom(ctx);
 	if (!strcmp(media, "disk"))
 		return vb2_read_nv_storage_disk(ctx);
-	if (!strcmp(media, "cros-ec"))
+	if (!strcmp(media, "cros-ec") || !strcmp(media, "mkbp") ||
+	    !strcmp(media, "flash"))
 		return vb2_read_nv_storage_mosys(ctx);
-	fprintf(stderr, "Unsupported NVRAM storage type: %s\n", media);
 	return -1;
 }
 
@@ -449,13 +447,11 @@
 	if (!FdtPropertyExist(FDT_NVSTORAGE_TYPE_PROP))
 		return vb2_write_nv_storage_disk(ctx);
 	media = ReadFdtString(FDT_NVSTORAGE_TYPE_PROP);
-	if (!strcmp(media, "flash"))
-		return vb2_write_nv_storage_flashrom(ctx);
 	if (!strcmp(media, "disk"))
 		return vb2_write_nv_storage_disk(ctx);
-	if (!strcmp(media, "cros-ec"))
+	if (!strcmp(media, "cros-ec") || !strcmp(media, "mkbp") ||
+	    !strcmp(media, "flash"))
 		return vb2_write_nv_storage_mosys(ctx);
-	fprintf(stderr, "Unsupported NVRAM storage type: %s\n", media);
 	return -1;
 }
 
