<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.theiphonewiki.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nathulal</id>
	<title>The iPhone Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.theiphonewiki.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nathulal"/>
	<link rel="alternate" type="text/html" href="https://www.theiphonewiki.com/wiki/Special:Contributions/Nathulal"/>
	<updated>2026-05-26T12:12:18Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.14</generator>
	<entry>
		<id>https://www.theiphonewiki.com/w/index.php?title=PMB8878&amp;diff=3526</id>
		<title>PMB8878</title>
		<link rel="alternate" type="text/html" href="https://www.theiphonewiki.com/w/index.php?title=PMB8878&amp;diff=3526"/>
		<updated>2009-04-15T04:01:11Z</updated>

		<summary type="html">&lt;p&gt;Nathulal: /* Known Firmware Versions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the baseband processor used in the iPhone 3G. It is upgraded with [[BBUpdaterExtreme]]. It is also known as the PMB8878.&lt;br /&gt;
&lt;br /&gt;
==Datasheet==&lt;br /&gt;
Anyone got one? Infineon provides [http://www.infineon.com/dgdl/X-GOLD608_XMM6080.pdf?location=Products.Mobile_Phone_Baseband_ICs.WCDMA___HSDPA.X-GOLD__608_-_PMB_8878.PRODUCT_TYPE_DOCUMENTS.X-GOLD608_XMM6080.pdf&amp;amp;folderId=db3a304312fcb1bc0113000c158f0004&amp;amp;fileId=db3a30431936bc4b011957c66fee3850 this], which isn't really useful.&lt;br /&gt;
&lt;br /&gt;
==Secpack 2.0==&lt;br /&gt;
This is the security region in the files sent to the [[X-Gold 608]]. This is the first 0xCF8 is new fls and eep files.&lt;br /&gt;
&lt;br /&gt;
===Layout===&lt;br /&gt;
 0x634--Memory Map&lt;br /&gt;
 0x714--Descriptor&lt;br /&gt;
 0xCD4--Post secpack pointer to name&lt;br /&gt;
 0xCEC--Data length&lt;br /&gt;
&lt;br /&gt;
==Endpack==&lt;br /&gt;
The fls and eep files also have a footer tacked onto the end containing the loader and signature.&lt;br /&gt;
&lt;br /&gt;
==Memory Map==&lt;br /&gt;
  FLASH      0x20000000 0x1000000&lt;br /&gt;
  CODE       0x20000000   0x40000 0b0010(bootstrapper)&lt;br /&gt;
  CODE       0x20040000  0xDC0000 0b0100(main firmware)&lt;br /&gt;
  FFS        0x20A00000  0x100000 0b1100(empty)&lt;br /&gt;
  DYNFFS     0x20A00000  0x100000 0b1100(empty)&lt;br /&gt;
  FFS        0x20B00000   0x40000 0b1011(empty)&lt;br /&gt;
  DYN_EEP    0x20E40000   0x80000 0b0110&lt;br /&gt;
  SECPACK    0x20EC0000   0x40000&lt;br /&gt;
  SECZONE    0x20F80000   0x40000&lt;br /&gt;
  STATIC_EEP 0x20FC0000   0x40000 0b0111&lt;br /&gt;
  RAM        0x40000000  0x800000&lt;br /&gt;
&lt;br /&gt;
==MMU relocation table==&lt;br /&gt;
===Bootloader===&lt;br /&gt;
[[Image:Bltbl.png]]&lt;br /&gt;
&lt;br /&gt;
===Firmware===&lt;br /&gt;
[[Image:Bbmmu.png]]&lt;br /&gt;
&lt;br /&gt;
==Complete memory dump==&lt;br /&gt;
[http://depositfiles.com/files/i5119hpzm 0x00000000-0x0001FFFF]&lt;br /&gt;
&lt;br /&gt;
[http://depositfiles.com/files/mxslfu4dp 0x20000000-0x20FFFFFF]&lt;br /&gt;
&lt;br /&gt;
[http://depositfiles.com/files/6wiet73wn 0x40000000-0x407FFFFF]&lt;br /&gt;
&lt;br /&gt;
[http://depositfiles.com/files/fioppsphe 0xFFFF0000-0xFFFFFFFF]&lt;br /&gt;
&lt;br /&gt;
== Known Firmware Versions ==&lt;br /&gt;
  [[1.43.00]]    2.0 (Build 5A331 - Internal Beta)&lt;br /&gt;
  [[1.45.00]]    2.0 (Build 5A347 - Gold Master)&lt;br /&gt;
  [[1.48.02]]    2.0.1 (Build 5B108)&lt;br /&gt;
  [[2.04.03]]    2.1 (Build 5F90)&lt;br /&gt;
  [[2.08.01]]    2.0.2 (Build 5C1)&lt;br /&gt;
  [[2.11.07]]    2.1 (Build 5F136)&lt;br /&gt;
  [[2.28.00]]    2.2 (Build 5G77)&lt;br /&gt;
  [[2.30.03]]    2.2.1 (Build 5H11)&lt;br /&gt;
  [[4.20.01]]    3.0 beta 1 (Build 7A238j)&lt;br /&gt;
  [[4.22.01]]    3.0 beta 2 (Build 7A259g)&lt;br /&gt;
  [[4.24.02]]    3.0 beta 3 (Build 7A280f)&lt;br /&gt;
&lt;br /&gt;
==Accessing Interactive Mode==&lt;br /&gt;
Interactive mode isn't accessed by sending characters to the baseband. Instead a GPIO pin is raised with a kernel call to preupdate reset.&lt;br /&gt;
 result = IOConnectCallScalarMethod(conn, 0, 0, 0, 0, 0);	//reset&lt;br /&gt;
 result = IOConnectCallScalarMethod(conn, 1, 0, 0, 0, 0);	//power set&lt;br /&gt;
 result = IOConnectCallScalarMethod(conn, 2, 0, 0, 0, 0);	//configuring mux&lt;br /&gt;
 result = IOConnectCallScalarMethod(conn, 7, 0, 0, 0, 0);	//powercycle&lt;br /&gt;
 result = IOConnectCallScalarMethod(conn, 8, 0, 0, 0, 0);	//preupdate reset&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Baseband]]&lt;/div&gt;</summary>
		<author><name>Nathulal</name></author>
		
	</entry>
</feed>