Difference between revisions of "TYPE"

From The iPhone Wiki
Jump to: navigation, search
(update)
(11 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The '''TYPE''' tag is a 32-bit unsigned integer (<code>uint32_t</code>) that when viewed in big-endian(?) format, states the type of firmware image the IMG2/[[IMG3 File Format|IMG3]] is. Is is compared with the second parameter of <code>[[image_load]]</code> (register <code>r1</code>). If it does not match, <code>image_load(void);</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.
+
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.
   
 
== Types ==
 
== Types ==
  +
=== IMG2 ===
* [[Ramdisk]]: rdsk (0x7264736B)
 
* [[Apple Logo]]: logo (0x6C6F676F)
+
* [[AppleLogo]]: logo (0x6C6F676F)
  +
* [[BatteryCharging]]: batC (0x62617443)
* [[BatteryCharging0]]:
 
  +
* [[BatteryLow0]]: batl (0x6261744C)
* [[BatteryCharging1]]:
 
* [[BatteryLow0]]:
+
* [[DeviceTree]]: dtre (0x64747265)
  +
* [[iBoot (Bootloader)|iBoot]]: ibot (0x69626F74)
* [[BatteryLow1]]:
 
* [[BatteryFull]]:
+
* [[BatteryLow1]]: batL (0x6261746C)
* [[DeviceTree]]:
+
* [[LLB]]: llbz (0x6C6C627A)
* [[GlyphCharging]]:
+
* [[NeedService]]: nsrv (0x6E737276)
* [[GlyphPlugin]]:
+
* [[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)
 
* [[iBEC]]: ibec (0x69626563)
* [[iBoot]]: ibot
+
* [[iBoot (Bootloader)|iBoot]]: ibot (0x69626F74)
* [[iBSS]]: ibss
+
* [[iBSS]]: ibss (0x69627373)
 
* [[Kernelcache]]: krnl (0x62736E6C)
 
* [[Kernelcache]]: krnl (0x62736E6C)
  +
* Kernelcache restore: rkrn
 
* [[LLB]]: illb (0x696C6C62)
 
* [[LLB]]: illb (0x696C6C62)
* [[NeedService]]:
+
* [[NeedService]]: nsrv (0x6E737276)
  +
* OS restore image: rosi
  +
* PE’s RTOS environment: pert
  +
* PE’s Hammer test: hmmr
  +
* [[Ramdisk]]: rdsk (0x7264736B)
 
* [[RecoveryMode]]: recm (0x7265636D)
 
* [[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
  +
  +
== References ==
  +
<references />
   
 
{{stub|firmware}}
 
{{stub|firmware}}

Revision as of 01:54, 8 February 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)
  • OS restore image: rosi
  • PE’s RTOS environment: pert
  • PE’s Hammer test: hmmr
  • 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

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.