diff --git a/sim/src/image.rs b/sim/src/image.rs
index 90d3a77..becd2c4 100644
--- a/sim/src/image.rs
+++ b/sim/src/image.rs
@@ -155,7 +155,7 @@
         }
     }
 
-    fn make_image_with_permanent(self, permanent: bool) -> Images {
+    pub fn make_image(self, permanent: bool) -> Images {
         let mut images = self.make_no_upgrade_image();
         for image in &images.images {
             mark_upgrade(&mut images.flash, &image.slots[1]);
@@ -173,16 +173,6 @@
         images
     }
 
-    /// Construct an `Images` for normal testing with perm upgrade.
-    pub fn make_image(self) -> Images {
-        self.make_image_with_permanent(true)
-    }
-
-    /// Construct an `Images` for normal testing with test upgrade.
-    pub fn make_non_permanent_image(self) -> Images {
-        self.make_image_with_permanent(false)
-    }
-
     pub fn make_bad_secondary_slot_image(self) -> Images {
         let mut bad_flash = self.flash;
         let images = self.slots.into_iter().map(|slots| {
@@ -390,10 +380,6 @@
         fails > 0
     }
 
-    pub fn run_perm_with_random_fails_5(&self) -> bool {
-        self.run_perm_with_random_fails(5)
-    }
-
     pub fn run_perm_with_random_fails(&self, total_fails: usize) -> bool {
         let mut fails = 0;
         let total_flash_ops = self.total_count.unwrap();
