Difference between revisions of "TYPE"

From The iPhone Wiki
Jump to: navigation, search
(New page: Contains a fourcc denoting the "type" of firmware image it is. Compared with R1 of image_load(); when verifying the image. If it does not match, image_load(); will fail and the image will ...)
 
(added some...)
(17 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Contains a fourcc denoting the "type" of firmware image it is. Compared with R1 of image_load(); when verifying the image. If it does not match, image_load(); will fail and the image will not be loaded. If R1 to image_load(); is zero, then all types are allowed.
+
The '''TYPE''' tag is a 32-bit unsigned integer (<code>uint32_t</code>) that when viewed in little-endian format, states the type of firmware image the IMG2/[[IMG3 File Format|IMG3]]/[[IMG4 File Format|IMG4/IM4P]] file is. Is is compared with the second parameter of <code>[[image_load]]</code> (register <code>r1</code><ref>[https://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/iPhoneOSABIReference/Articles/ARMv6FunctionCallingConventions.html Apple on ARM __fastcall]</ref>). If it does not match, <code>image_load</code> will fail and the image will not be loaded. If <code>0</code> is passed in <code>r1</code>, then the check is skipped.
   
== Known Types ==
+
== Types ==
  +
=== IMG2 ===
* '''LLB''' - illb
 
  +
* [[AppleLogo]]: logo (0x6C6F676F)
* '''iBoot''' - ibot
 
  +
* [[BatteryCharging]]: batC (0x62617443)
* '''iBEC''' - ibec
 
  +
* [[BatteryLow0]]: batl (0x6261744C)
* '''iBSS''' - ibss
 
  +
* [[BatteryLow1]]: batL (0x6261746C)
* '''Kernel''' - krnl
 
  +
* [[DeviceTree]]: dtre (0x64747265)
* '''Ramdisk''' - rdsk
 
  +
* [[iBoot (Bootloader)|iBoot]]: ibot (0x69626F74)
* '''Apple Logo''' - logo
 
  +
* [[LLB]]: llbz (0x6C6C627A)
* '''Recovery Mode''' - recm
 
  +
* [[NeedService]]: nsrv (0x6E737276)
  +
* [[RecoveryMode]]: recm (0x7265636D)
   
  +
=== IMG3+ ===
  +
* Any: ''empty string'' (0x00000000)
  +
* [[AppleLogo]]: logo (0x6C6F676F)
  +
* [[BatteryCharging0]] (charging – bright): chg0 (0x63686730)
  +
* [[BatteryCharging1]] (charging – dim): chg1 (0x63686731)
  +
* [[BatteryFull]]: batF (0x62617446)
  +
* [[BatteryLow0]] (empty): bat0 (0x62617430)
  +
* [[BatteryLow1]] (red, composed onto empty): bat1 (0x62617431)
  +
* Dali: dali
  +
* [[DeviceTree]]: dtre (0x64747265)
  +
* DeviceTree restore: rdtr
  +
* Diagnostics: diag
  +
* Environment variables: ienv
  +
* FDR Trust object for AP: fdrt
  +
* FDR Trust object for SEP: fdrs
  +
* [[GlyphCharging]]: glyC (0x676C7943)
  +
* [[GlyphPlugin]]: glyP (0x676C7950)
  +
* Hypervisor/monitor: hypr
  +
* [[iBEC]]: ibec (0x69626563)
  +
* [[iBoot (Bootloader)|iBoot]]: ibot (0x69626F74)
  +
* [[iBSS]]: ibss (0x69627373)
  +
* [[Kernelcache]]: krnl (0x62736E6C)
  +
* Kernelcache restore: rkrn
  +
* [[LLB]]: illb (0x696C6C62)
  +
* [[NeedService]]: nsrv (0x6E737276)
  +
* Restore Logo: rlgo
  +
* OS restore image: rosi
  +
* PE’s RTOS environment : pert
  +
* PE’s Hammer test: hmmr
  +
* Homer : homr
  +
* Maggie Firmware : magg
  +
* Alamo : almo
  +
* Audio Codec Firmware : acfw
  +
* Multitouch Firmware : mtfw
  +
* GPU Firmware : gfxf
  +
* Wireless Power(?) : wchf
  +
* SmartIOFirmware : siof
  +
* ANE Firmware : anef
  +
* Static Trust Cache : trst
  +
* Restore Trust Cache : rtsc
  +
* Low Power mode : lpw0
  +
* [[Ramdisk]]: rdsk (0x7264736B)
  +
* [[RecoveryMode]]: recm (0x7265636D)
  +
* [[SEP-Firmware]] (SEP OS): sepi (0x73657069)
  +
* SEP OS (restore): rsep
  +
* SiVal’s (Silicon Validation<ref>[https://www.linkedin.com/jobs/view/silicon-validation-test-and-triage-engineer-at-apple-543262317 Job listing on LinkedIn]</ref>) CFE loader: cfel
  +
* SiVal’s RBM test: rbmt
  +
* SiVal’s PHLEET test: phlt
  +
* tsys tester
  +
* ispf
  +
  +
== References ==
  +
<references />
  +
  +
{{stub|firmware}}
 
[[Category:Firmware Tags]]
 
[[Category:Firmware Tags]]
[[Category:Firmware Parsing]]
 

Revision as of 14:45, 6 October 2018

The TYPE tag is a 32-bit unsigned integer (uint32_t) that when viewed in little-endian format, states the type of firmware image the IMG2/IMG3/IMG4/IM4P file is. Is is compared with the second parameter of image_load (register r1[1]). If it does not match, image_load will fail and the image will not be loaded. If 0 is passed in r1, then the check is skipped.

Types

IMG2

IMG3+

  • Any: empty string (0x00000000)
  • AppleLogo: logo (0x6C6F676F)
  • BatteryCharging0 (charging – bright): chg0 (0x63686730)
  • BatteryCharging1 (charging – dim): chg1 (0x63686731)
  • BatteryFull: batF (0x62617446)
  • BatteryLow0 (empty): bat0 (0x62617430)
  • BatteryLow1 (red, composed onto empty): bat1 (0x62617431)
  • Dali: dali
  • DeviceTree: dtre (0x64747265)
  • DeviceTree restore: rdtr
  • Diagnostics: diag
  • Environment variables: ienv
  • FDR Trust object for AP: fdrt
  • FDR Trust object for SEP: fdrs
  • GlyphCharging: glyC (0x676C7943)
  • GlyphPlugin: glyP (0x676C7950)
  • Hypervisor/monitor: hypr
  • iBEC: ibec (0x69626563)
  • iBoot: ibot (0x69626F74)
  • iBSS: ibss (0x69627373)
  • Kernelcache: krnl (0x62736E6C)
  • Kernelcache restore: rkrn
  • LLB: illb (0x696C6C62)
  • NeedService: nsrv (0x6E737276)
  • Restore Logo: rlgo
  • OS restore image: rosi
  • PE’s RTOS environment : pert
  • PE’s Hammer test: hmmr
  • Homer : homr
  • Maggie Firmware : magg
  • Alamo : almo
  • Audio Codec Firmware : acfw
  • Multitouch Firmware : mtfw
  • GPU Firmware : gfxf
  • Wireless Power(?) : wchf
  • SmartIOFirmware : siof
  • ANE Firmware : anef
  • Static Trust Cache : trst
  • Restore Trust Cache : rtsc
  • Low Power mode : lpw0
  • Ramdisk: rdsk (0x7264736B)
  • RecoveryMode: recm (0x7265636D)
  • SEP-Firmware (SEP OS): sepi (0x73657069)
  • SEP OS (restore): rsep
  • SiVal’s (Silicon Validation[2]) CFE loader: cfel
  • SiVal’s RBM test: rbmt
  • SiVal’s PHLEET test: phlt
  • tsys tester
  • ispf

References

Tango Utilities-terminal.png This firmware article is a "stub", an incomplete page. Please add more content to this article and remove this tag.