Difference between revisions of "IPSW File Format"

From The iPhone Wiki
Jump to: navigation, search
(Clarify Yonkers)
 
(7 intermediate revisions by 4 users not shown)
Line 6: Line 6:
 
* [[Restore Ramdisk]]
 
* [[Restore Ramdisk]]
 
* [[Update Ramdisk]] (some firmwares don't have one due to various reasons)
 
* [[Update Ramdisk]] (some firmwares don't have one due to various reasons)
* [[:/|Filesystem Ramdisk]] (the largest [[Apple Disk Image|.dmg]] file)
+
* [[:/|Filesystem]] (the largest [[Apple Disk Image|.dmg]] file)
 
* [[Device Tree]] (model specific)
 
* [[Device Tree]] (model specific)
 
* [[Kernelcache]] (model specific; processor specific on pre-[[S5L8930|A4]])
 
* [[Kernelcache]] (model specific; processor specific on pre-[[S5L8930|A4]])
* BuildManifest.plist (first appeared in [[iOS|iPhone OS]] 3.0b2)
+
* BuildManifest.plist (first appeared in [[iOS|iPhone OS]] 3.0 beta 2)
 
* Restore.plist
 
* Restore.plist
 
* ''Firmware/''
 
* ''Firmware/''
 
** ''all_flash/''
 
** ''all_flash/''
*** ''all_flash.XXXXX.production/'' (model specific i.e. [[m68ap]], [[n82ap]], etc.)
+
*** ''all_flash.XXXXX.production/'' (model specific i.e. [[M68AP]], [[N82AP]], etc.)
 
**** [[S5L File Formats#IMG2|IMG2]]/[[IMG3 File Format|IMG3]] files
 
**** [[S5L File Formats#IMG2|IMG2]]/[[IMG3 File Format|IMG3]] files
 
**** manifest
 
**** manifest
 
** dfu/''
 
** dfu/''
*** [[iBEC]].XXXXX.dfu (model specific i.e. [[m68ap]], [[n82ap]], etc.)
+
*** [[iBEC]].XXXXX.dfu (model specific i.e. [[M68AP]], [[N82AP]], etc.)
 
*** [[iBSS]].XXXXX.dfu
 
*** [[iBSS]].XXXXX.dfu
*** [[WTF]].XXXXX.dfu (model specific and only for [[m68ap]], [[n82ap]], [[n45ap]], [[n72ap]]; not present in firmwares for the [[n88ap|iPhone 3GS]] and later, because it was used to patch issues with the DFU mode that was burned into the bootrom)
+
*** [[WTF]].XXXXX.dfu (model specific and only for [[M68AP]], [[N82AP]], [[N45AP]], [[N72AP]]; not present in firmwares for the [[N88AP|iPhone 3GS]] and later, because it was used to patch issues with the DFU mode that was burned into the bootrom)
 
** [[Baseband Device|Baseband]] (may be one or many files depending on the model)
 
** [[Baseband Device|Baseband]] (may be one or many files depending on the model)
   
Line 50: Line 50:
 
*** <code>[[iBEC]].n88ap.RELEASE.dfu</code> (104772 bytes)
 
*** <code>[[iBEC]].n88ap.RELEASE.dfu</code> (104772 bytes)
 
*** <code>[[iBSS]].n88ap.RELEASE.dfu</code> (104772 bytes)
 
*** <code>[[iBSS]].n88ap.RELEASE.dfu</code> (104772 bytes)
  +
  +
== Firmwares found in IPSW ==
  +
Per http://newosxbook.com/bonus/vol1AppA.html
  +
{| class="wikitable"
  +
|-
  +
! Filename
  +
! Use
  +
|-
  +
| ICE17-1.xx.xx.Release.bbfw
  +
| Intel modem / baseband
  +
|-
  +
| Mav17-1.xx.xx.Release.bbfw
  +
| Maverick modem / baseband
  +
|-
  +
| AOP/aopfw-iphone##aop.im4p
  +
| Always on processor
  +
|-
  +
| Savage/Savage.B[0/2]-[Dev/Prod].[vt.]fw
  +
| FaceID
  +
|-
  +
| Yonkers/Yonkers.EA01_F###_[Dev/Prod]fw
  +
| FaceID (A12+)
  +
|-
  +
| SE/Stockholm##.RELEASE.sefw
  +
| Secure Element
  +
|-
  +
| Maggie/AppleMaggieFirmwareImage.im4p
  +
| ?
  +
|-
  +
| cpu_Multitouch.im4p
  +
| Multitouch controller
  +
|-
  +
| isp/adc-petra-d3x.im4p
  +
| Image Signal Processor
  +
|-
  +
| ane/h11_ane_fw_quin.im4p
  +
| [[Apple Neural Engine]]
  +
|-
  +
| WirelessPower/WirelessPower.iphone##.im4p
  +
| Wireless charging controller
  +
|-
  +
| SmartIOFirmwareCHIP.im4p
  +
| [[T8020]] and later Smart I/O
  +
|-
  +
| board_CallanFirmware.im4p
  +
| Haptics Firmware
  +
|-
  +
| ave/AppleAVE2FW.im4p
  +
| Audio/Video Encoder
  +
|-
  +
| agx/armfw_g11p.im4p
  +
| GPU Scheduler/Command Stream Processor
  +
|-
  +
| all_flash/sep-firmware.*.im4p
  +
| Secure Enclave Processor
  +
|-
  +
| liquiddetect@2436~iphone-lightning.im4p
  +
| Liquid Damage Detection
  +
|-
  +
| pmp/t8030pmp.im4p
  +
| Power Management Processor
  +
|-
  +
| Rose/r1p0/ftab.bin
  +
| U1 chip (Ultra Wideband)
  +
|-
  +
| vinyl_05.vnlfw
  +
| eSIM
  +
|-
  +
| Veridian
  +
| ? (Some form of signing/device integrity)
  +
|}
   
 
== Notes ==
 
== Notes ==

Latest revision as of 00:44, 21 March 2022

"IPSW" redirects here. For the component of XPwn, see ipsw.

IPSW (iPod[1] Software) files have the Magic Number 504B0304 (PK\003\004) and thus are ZIP archives. They can be modified with typical zip/unzip tools (i.e. change extension to .zip and double click). IPSWs are used to deliver the device's firmware to the end-user.

Archive Structure

Example

Here are the contents of the iPhone 3GS 3.0 (7A341) firmware IPSW:

Firmwares found in IPSW

Per http://newosxbook.com/bonus/vol1AppA.html

Filename Use
ICE17-1.xx.xx.Release.bbfw Intel modem / baseband
Mav17-1.xx.xx.Release.bbfw Maverick modem / baseband
AOP/aopfw-iphone##aop.im4p Always on processor
Savage/Savage.B[0/2]-[Dev/Prod].[vt.]fw FaceID
Yonkers/Yonkers.EA01_F###_[Dev/Prod]fw FaceID (A12+)
SE/Stockholm##.RELEASE.sefw Secure Element
Maggie/AppleMaggieFirmwareImage.im4p ?
cpu_Multitouch.im4p Multitouch controller
isp/adc-petra-d3x.im4p Image Signal Processor
ane/h11_ane_fw_quin.im4p Apple Neural Engine
WirelessPower/WirelessPower.iphone##.im4p Wireless charging controller
SmartIOFirmwareCHIP.im4p T8020 and later Smart I/O
board_CallanFirmware.im4p Haptics Firmware
ave/AppleAVE2FW.im4p Audio/Video Encoder
agx/armfw_g11p.im4p GPU Scheduler/Command Stream Processor
all_flash/sep-firmware.*.im4p Secure Enclave Processor
liquiddetect@2436~iphone-lightning.im4p Liquid Damage Detection
pmp/t8030pmp.im4p Power Management Processor
Rose/r1p0/ftab.bin U1 chip (Ultra Wideband)
vinyl_05.vnlfw eSIM
Veridian ? (Some form of signing/device integrity)

Notes

  1. IPSW files have been used since the very first iPod, though they have a different format than firmwares for iOS devices.