[FFU][UPE-DEV]Structure Full Flash Update Image for WP7 Devices - Windows Phone 7 Development and Hacking

Structure Full Flash Update Image (.FFU) for Windows Phone 7 Device
Full Flash Update - This is a System Flash Image for update WP7 Device. We upgrade this OS, example in tool UpdateWP.exe(from Zune catalog in PC).
In Part SDLR, from general ROM structure, we have too more files and modules, which reads the image system and its syntax.
Physical Flash Layout:
HashTable.blob
Partition Table Info
User Store Space
Bootloader/Modem -> (amss, fsbl, osbl, etc.)
SLDR
NK
IMGFS
User Store Space
Partition Table Info (ImageFlash) - example:
Code:
[FullFlash]
Version = 1.0
MigrateUserSettings = False
UpdateType = Normal
DevicePlatformID = {5B8F8B62-8E55-4531-8D70-15269B68C43E}
FormatUserStore = True
[BinaryRegion]
Size = 24924572
Name = Modem
[Store]
SectorSize = 2048
Name = OS
SectorCount = 479296
ID = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 2590
Name = SLDR
PartitionType = 32
BootDataSize = 12
TotalSectors = 3136
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 2540
Name = NK
PartitionType = 35
BootDataSize = 12
TotalSectors = 2944
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 66059
Name = IMGFS
PartitionType = 37
TotalSectors = 70719
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
More Information:
.ffu (Full Flash Update) file format (XML) will be used to pass information to the Zune software on which partitions are to be updated, etc. FFUs are signed just as .cabs are signed and only an .ffu which passes validation against the certificates on-device will be allowed to update a device.
Click to expand...
Click to collapse
Nokser

What does this mean?
Can install custom rom, downgrade bootloader?

Related

KernelIoControl 0x010125E0 = HAL Function 0x978 (2424)

Does anybody know the interpretation of KernelIoControl with dwIoControlCode = 0x010125E0? The breakdown of the Control Code is:
DeviceType = 0x0101 = FILE_DEVICE_HAL
Access = 0 = ANY_ACCESS
Function = 0x978 = 2424 dec = ?
Method = 0 = BUFFERED
So what is function 0x978 (2424)?
I searched through the WinCE Platform Builder 5.00 files and did not see any definition of 0x978 nor 2424.
thx,
((&->

Heimdall (Cross-Platform Flashing Tool) - Galaxy Tab?

I'm the creator of Heimdall the cross platform Galaxy S flashing tool. I was wondering if any one has attempted to flash a Galaxy Tab using my tool?
I suspect that the protocol for flashing the Galaxy Tab is identical. However, I don't have access to a Galaxy Tab so I'm unable to test myself. I would love to add the Galaxy Tab to the list of officially supported devices if someone can confirm it works.
EDIT: Just realised I never updated this post. Heimdall has officially supported the Galaxy Tab for a while now.
I might be able to do it if I find some better firmware to flash. Not sure yet.
Sent from my SCH-I800 using XDA App
I'll give it a try later today. I'm a Linux zealot.
Install notes for Linux + a question
sorry -- wrong thread. No clue how to delete, but I don't want to cross-post so just ignore this.
I compiled and tried using it to flash a modem.bin, but got an error. Heres the console output:
Code:
$ heimdall flash --pit P1_20100909.pit --modem modem.bin
Heimdall, Copyright (c) 2010, Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au
This software is provided free of charge. Copying and redistribution is
encouraged.
If you appreciate this software and you would like to support future
development please consider donating:
http://www.glassechidna.com.au/donate/
Claiming interface... Failed. Attempting to detach driver...
Claiming interface again... Success
Setting up interface... Success
Beginning session...
Handshaking with Loke... Success
Unexpected device info response!
Expected: 180 or 0
Received:3
Ending session...
Rebooting device...
Re-attaching kernel driver...
rotohammer, thanks for that. It seems as the initialisation process might be slightly different for the Galaxy Tab. Unfortunately the spot where it failed is the exact spot in the protocol that I have basically no clue about. The Galaxy S sends either 180 or 0, which is perhaps some sort of flags indicating the state of the device. Technically the flash could continue past there regardless of the value received but it's a bit of a safety net feature to stop right away.
I'll see if I can get my hands on a Galaxy Tab so I can get Heimdall working for Galaxy Tab users as well.
Works great
For those of you interested, I've modified the Heimdall source on Linux to accept the device info value of 3 and I have successfully flashed 2 different full firmwares on my T-Mobile Tab, as well as many individual files. It works much faster than Odin, and a lot less flaky. I let Benjamin know so he can include support in an upcoming release.
Thanks for the good work, Ben and Roto
Can Heimdall dump partititions from flash for backup?
Technomancer said:
Can Heimdall dump partititions from flash for backup?
Click to expand...
Click to collapse
It can dump, but the dumps, just like those from Odin, aren't very useful. Its a limitation on the exporting function of the phone software.
rotohammer said:
It can dump, but the dumps, just like those from Odin, aren't very useful. Its a limitation on the exporting function of the phone software.
Click to expand...
Click to collapse
I suppose the partitions are not mounted in the "downloading" mode, so any dumps from Heimdall should be better than dumps made using dd from the shell?
rotohammer said:
It can dump, but the dumps, just like those from Odin, aren't very useful. Its a limitation on the exporting function of the phone software.
Click to expand...
Click to collapse
Hi Rotohammer!
Great work again
What did you use as chip-type and chip-id for dumping? I.e.
Code:
heimdall dump --chip-type ??? --chip-id ??? --output <filename>
Volker1 said:
What did you use as chip-type and chip-id for dumping?
Click to expand...
Click to collapse
Code:
heimdall dump --chip-type NAND --chip-id 0 --output hdump.img
I wrote a simple too to display information about PIT files (attached). The factory-installed PIT (/dev/block/bml2) on my T-Mobile US tab is identical to the one known as P1_20100909.pit and reads:
Code:
$ ./PITinfo bml2.dump
Contents of PIT file:bml2.dump
---------------------------------------------------------------------------
file magic = 0x12349876 (expected value)
Unknown data: 0x135d800 0x1 0 0x1331e17 0x2cf560
Number of partitions = 14 (not the usual value)
Partition #1
Usual content: boot.bin, the primary boot loader (low-level hardware initialization)
partition entry type: 0 0 (normal partition)
ID = 0; flags = 0; unknown: 0
size = 1 blocks of 256 * 512 bytes = 131072 B = 128 kB = 0 MB
unknown string: [........]
partition name = [IBL+PBL.........................]
file name = [boot.bin........................................................]
Partition #2
Usual content: partition information table (PIT)
partition entry type: 0 0 (normal partition)
ID = 0x1; flags = 0; unknown: 0
size = 1 blocks of 256 * 512 bytes = 131072 B = 128 kB = 0 MB
unknown string: [........]
partition name = [PIT.............................]
file name = [................................................................]
Partition #3
Usual content: efs.rfs
partition entry type: 0 0 (normal partition)
ID = 0x14; flags = 0x2 (rfs file system); unknown: 0
size = 40 blocks of 256 * 512 bytes = 5242880 B = 5120 kB = 5 MB
unknown string: [........]
partition name = [EFS.............................]
file name = [efs.rfs.........................................................]
Partition #4
Usual content: Sbl.bin, the secondary boot loader (loads linux kernel)
partition entry type: 0 0 (normal partition)
ID = 0x3; flags = 0; unknown: 0
size = 5 blocks of 256 * 512 bytes = 655360 B = 640 kB = 0 MB
unknown string: [........]
partition name = [SBL.............................]
file name = [sbl.bin.........................................................]
Partition #5
Usual content: backup of secondary boot loader
partition entry type: 0 0 (normal partition)
ID = 0x4; flags = 0; unknown: 0
size = 5 blocks of 256 * 512 bytes = 655360 B = 640 kB = 0 MB
unknown string: [........]
partition name = [SBL2............................]
file name = [sbl.bin.........................................................]
Partition #6
Usual content: param.lfs /mnt/.lfs j4fs
partition entry type: 0 0 (normal partition)
ID = 0x15; flags = 0x2 (rfs file system); unknown: 0
size = 20 blocks of 256 * 512 bytes = 2621440 B = 2560 kB = 2 MB
unknown string: [........]
partition name = [PARAM...........................]
file name = [param.lfs.......................................................]
Partition #7
Usual content: zImage, the linux kernel
partition entry type: 0 0 (normal partition)
ID = 0x6; flags = 0; unknown: 0
size = 30 blocks of 256 * 512 bytes = 3932160 B = 3840 kB = 3 MB
unknown string: [........]
partition name = [KERNEL..........................]
file name = [zImage..........................................................]
Partition #8
Usual content: recovery.bin, the backup copy of zImage/initramfs
partition entry type: 0 0 (normal partition)
ID = 0x7; flags = 0; unknown: 0
size = 30 blocks of 256 * 512 bytes = 3932160 B = 3840 kB = 3 MB
unknown string: [........]
partition name = [RECOVERY........................]
file name = [zImage..........................................................]
Partition #9
Usual content: factoryfs.rfs
partition entry type: 0 0 (normal partition)
ID = 0x16; flags = 0x2 (rfs file system); unknown: 0
size = 1320 blocks of 256 * 512 bytes = 173015040 B = 168960 kB = 165 MB
unknown string: [........]
partition name = [FACTORYFS.......................]
file name = [factoryfs.rfs...................................................]
Partition #10
Usual content: dbdata.rfs
partition entry type: 0 0 (normal partition)
ID = 0x17; flags = 0x2 (rfs file system); unknown: 0
size = 348 blocks of 256 * 512 bytes = 45613056 B = 44544 kB = 43 MB
unknown string: [........]
partition name = [DBDATAFS........................]
file name = [dbdata.rfs......................................................]
Partition #11
Usual content: cache.rfs
partition entry type: 0 0 (normal partition)
ID = 0x18; flags = 0x2 (rfs file system); unknown: 0
size = 140 blocks of 256 * 512 bytes = 18350080 B = 17920 kB = 17 MB
unknown string: [........]
partition name = [CACHE...........................]
file name = [cache.rfs.......................................................]
Partition #12
Usual content: modem.bin
partition entry type: 0 0 (normal partition)
ID = 0x8; flags = 0; unknown: 0
size = 64 blocks of 256 * 512 bytes = 8388608 B = 8192 kB = 8 MB
unknown string: [........]
partition name = [MODEM...........................]
file name = [modem.bin.......................................................]
Partition #13
Usual content: Unknown
partition entry type: 0 2 (unknown value)
ID = 0; flags = 0x1; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [l.e. .(.]
partition name = [MOVINAND..)...*...p.i.t.........]
file name = [movinand.mst........D.:.\.2.4.....P.1.\.4... .S.M.D. .i.m.a.g.e.]
Partition #14
Usual content: Unknown
partition entry type: 1 1 (past-the-end marker)
ID = 0x8; flags = 0; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [........]
partition name = [................................]
file name = [................................................................]
I want to flash the Euro firmware (I'm back in Europe right now) by flashing P1000XWJJ4 (and then flash P1000XXJK5 on top). The P1_add_hidden.pit reads:
Code:
$ ./PITinfo P1_add_hidden.pit
Contents of PIT file:P1_add_hidden.pit
---------------------------------------------------------------------------
file magic = 0x12349876 (expected value)
Unknown data: 0x1 0 0x411e17 0x12fae0 0x43d800
Number of partitions = 15 (not the usual value)
Partition #1
Usual content: boot.bin, the primary boot loader (low-level hardware initialization)
partition entry type: 0 0 (normal partition)
ID = 0; flags = 0; unknown: 0
size = 1 blocks of 256 * 512 bytes = 131072 B = 128 kB = 0 MB
unknown string: [........]
partition name = [IBL+PBL.........................]
file name = [boot.bin........................................................]
Partition #2
Usual content: partition information table (PIT)
partition entry type: 0 0 (normal partition)
ID = 0x1; flags = 0; unknown: 0
size = 1 blocks of 256 * 512 bytes = 131072 B = 128 kB = 0 MB
unknown string: [........]
partition name = [PIT.............................]
file name = [................................................................]
Partition #3
Usual content: efs.rfs
partition entry type: 0 0 (normal partition)
ID = 0x14; flags = 0x2 (rfs file system); unknown: 0
size = 40 blocks of 256 * 512 bytes = 5242880 B = 5120 kB = 5 MB
unknown string: [........]
partition name = [EFS.............................]
file name = [efs.rfs.........................................................]
Partition #4
Usual content: Sbl.bin, the secondary boot loader (loads linux kernel)
partition entry type: 0 0 (normal partition)
ID = 0x3; flags = 0; unknown: 0
size = 5 blocks of 256 * 512 bytes = 655360 B = 640 kB = 0 MB
unknown string: [........]
partition name = [SBL.............................]
file name = [sbl.bin.........................................................]
Partition #5
Usual content: backup of secondary boot loader
partition entry type: 0 0 (normal partition)
ID = 0x4; flags = 0; unknown: 0
size = 5 blocks of 256 * 512 bytes = 655360 B = 640 kB = 0 MB
unknown string: [........]
partition name = [SBL2............................]
file name = [sbl.bin.........................................................]
Partition #6
Usual content: param.lfs /mnt/.lfs j4fs
partition entry type: 0 0 (normal partition)
ID = 0x15; flags = 0x2 (rfs file system); unknown: 0
size = 20 blocks of 256 * 512 bytes = 2621440 B = 2560 kB = 2 MB
unknown string: [........]
partition name = [PARAM...........................]
file name = [param.lfs.......................................................]
Partition #7
Usual content: zImage, the linux kernel
partition entry type: 0 0 (normal partition)
ID = 0x6; flags = 0; unknown: 0
size = 30 blocks of 256 * 512 bytes = 3932160 B = 3840 kB = 3 MB
unknown string: [........]
partition name = [KERNEL..........................]
file name = [zImage..........................................................]
Partition #8
Usual content: recovery.bin, the backup copy of zImage/initramfs
partition entry type: 0 0 (normal partition)
ID = 0x7; flags = 0; unknown: 0
size = 30 blocks of 256 * 512 bytes = 3932160 B = 3840 kB = 3 MB
unknown string: [........]
partition name = [RECOVERY........................]
file name = [zImage..........................................................]
Partition #9
Usual content: factoryfs.rfs
partition entry type: 0 0 (normal partition)
ID = 0x16; flags = 0x2 (rfs file system); unknown: 0
size = 1320 blocks of 256 * 512 bytes = 173015040 B = 168960 kB = 165 MB
unknown string: [........]
partition name = [FACTORYFS.......................]
file name = [factoryfs.rfs...................................................]
Partition #10
Usual content: dbdata.rfs
partition entry type: 0 0 (normal partition)
ID = 0x17; flags = 0x2 (rfs file system); unknown: 0
size = 348 blocks of 256 * 512 bytes = 45613056 B = 44544 kB = 43 MB
unknown string: [........]
partition name = [DBDATAFS........................]
file name = [dbdata.rfs......................................................]
Partition #11
Usual content: cache.rfs
partition entry type: 0 0 (normal partition)
ID = 0x18; flags = 0x2 (rfs file system); unknown: 0
size = 140 blocks of 256 * 512 bytes = 18350080 B = 17920 kB = 17 MB
unknown string: [........]
partition name = [CACHE...........................]
file name = [cache.rfs.......................................................]
Partition #12
Usual content: modem.bin
partition entry type: 0 0 (normal partition)
ID = 0x8; flags = 0; unknown: 0
size = 64 blocks of 256 * 512 bytes = 8388608 B = 8192 kB = 8 MB
unknown string: [........]
partition name = [MODEM...........................]
file name = [modem.bin.......................................................]
Partition #13
Usual content: Unknown
partition entry type: 0 2 (unknown value)
ID = 0x3; flags = 0x1; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [l.e. .(.]
partition name = [HIDDEN.D..)...*...p.i.t.........]
file name = [hidden.rfs.t........D.:.\.2.4.....P.1.\.4... .S.M.D. .i.m.a.g.e.]
Partition #14
Usual content: Unknown
partition entry type: 1 1 (past-the-end marker)
ID = 0x8; flags = 0; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [........]
partition name = [................................]
file name = [................................................................]
Partition #15
Usual content: Unknown
partition entry type: 0 2 (unknown value)
ID = 0; flags = 0x1; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [........]
partition name = [MOVINAND........................]
file name = [movinand.mst....................................................]
But it seems like I can't flash movinand.mst with heimdall. Note that it is present in the P1000XWJJ4 firmware file. So I guess I'm better off going the VirtualBox->Win32->Odin route?
Compile on Mac OS X
I've just successfully compiled libusb and Heimdall on Mac OS X.
I needed to set an environment variable by hand so that the "configure" of Heimdall detected libusb:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
Oh, and of course this source code modification is necessary for the Galaxy Tab to be supported:
main.cpp line 252:
if (unknown != 180 && unknown != 0 && unknown != 3)
Disclaimer: I haven't had time to try flashing anything yet.
I finally found the courage to flash my T-Mo US tab to Euro version. I made my own Franken-rom by combining P1000XWJJ4 with P1000XXJK5. Specifically, I
1. decompressed P1000XWJJ4.rar
2. took boot.bin, Sbl.bin, and dbdata.rfs from P1000XWJJ4/P1000XWJJ4_SERJJ2_XXJID/P1000XWJJ4-REV03-ALL-CL639474.tar.md5 (a tar archive despite the wrong ending)
3. decompressed P1000XXJK5.rar
4. took zImage, cache.rfs, factoryfs.rfs, modem.bin, and param.lfs from P1000XXJK5/P1000OXAJK5.tar
5. P1_20100909.pit
Then I rebooted my tab in download mode, plugged it into my PC's USB, and then flashed
Code:
$ ./heimdall flash --pit P1_20100909.pit --factoryfs factoryfs.rfs --cache cache.rfs --dbdata dbdata.rfs --boot boot.bin --secondary Sbl.bin --param param.lfs --kernel zImage --modem modem.bin
Heimdall, Copyright (c) 2010, Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au
This software is provided free of charge. Copying and redistribution is
encouraged.
If you appreciate this software and you would like to support future
development please consider donating:
http://www.glassechidna.com.au/donate/
Claiming interface... Failed. Attempting to detach driver...
Claiming interface again... Success
Setting up interface... Success
Beginning session...
Handshaking with Loke... Success
Downloading device's PIT file...
PIT file download sucessful
Uploading factory filesytem
Factory filesytem upload successful
Uploading cache
Cache upload successful
Uploading data database
Data database upload successful
Uploading primary bootloader
Primary bootloader upload successful
Uploading secondary bootloader
Secondary bootloader upload successful
Uploading param.lfs
param.lfs upload successful
Uploading kernel
Kernel upload successful
Uploading modem
Modem upload successful
Ending session...
Rebooting device...
Re-attaching kernel driver...
I had my German SIM card in and after some booting I ended up with a perfectly working German-localized Euro tab. Switching the language back to US Englisch works fine, too.
Volker1 said:
But it seems like I can't flash movinand.mst with heimdall. Note that it is present in the P1000XWJJ4 firmware file.
Click to expand...
Click to collapse
It is also present in JK2. So I guess in the end you decided not to flash movinand.mst, right ? Unless you used Odin and Heimdall ?
daniel.weck said:
It is also present in JK2. So I guess in the end you decided not to flash movinand.mst, right ? Unless you used Odin and Heimdall ?
Click to expand...
Click to collapse
Alright it looks like you guys have found one more file that Heimdall is technically capable of flashing but doesn't implement. I presume I'm missing quite a few files that the protocol supports, at least that's what the following list of utilised file identifiers would seem to indicate:
Code:
enum
{
kFilePrimaryBootloader = 0x00,
kFileSecondaryBootloader = 0x03,
kFileKernel = 0x06,
kFileParamLfs = 0x15,
kFileFactoryFilesystem = 0x16,
kFileDatabaseData = 0x17,
kFileCache = 0x18
};
I can easily add support for movinand.mst if I can find out what file identifier it uses. Unfortunately I don't have a Galaxy Tab and I need access to one in order to find out.
It's zero, if we trust the output of the PIT reader utility:
http://forum.xda-developers.com/showpost.php?p=9471190&postcount=14
Benjamin Dobell said:
Alright it looks like you guys have found one more file that Heimdall is technically capable of flashing but doesn't implement. I presume I'm missing quite a few files that the protocol supports, at least that's what the following list of utilised file identifiers would seem to indicate:
Code:
enum
{
kFilePrimaryBootloader = 0x00,
kFileSecondaryBootloader = 0x03,
kFileKernel = 0x06,
kFileParamLfs = 0x15,
kFileFactoryFilesystem = 0x16,
kFileDatabaseData = 0x17,
kFileCache = 0x18
};
I can easily add support for movinand.mst if I can find out what file identifier it uses. Unfortunately I don't have a Galaxy Tab and I need access to one in order to find out.
Click to expand...
Click to collapse
Well 0 is the primary bootloader, so right now I'm not trusting it.
Does anyone have any idea what the contents of movinand.mst is? Because I just figured out how to flash the recovery partition directly.
EDIT: And the EFS.

KB6 ROM (Android 2.2.1) @ Samfirmware for the GT-P1010 (wifi-only Galaxy Tab)

NOTE: the log below pertains to KB5...I haven't had time yet to look into KB6.
http://www.samfirmware.com/WEBPROTECT-p1010.htm
ro.build.display.id=FROYO.XWKB5
ro.build.version.sdk=8
ro.build.version.release=2.2.1
ro.build.date=Thu Feb 17 19:34:43 KST 2011
I'm going to unpack the various RFS archives, to see what's new. I've got a GT-P1000 Galaxy Tab (wifi+3G), so I'm not going to flash with Heimdall (let alone Odin ).
I made backups for factoryfs.rfs / dbdata.rfs etc. using the usual bit-by-bit "dd" -based method, and I've got a trusty TitaniumBackup archive ready, just in case
I notice that TV-out seems to be gone, and FM radio appears to be available. Hardware DSP support seems more present too. (read content logs below for more information)
TAR contents:
Code:
p1wifi_20110128_r10_00.pit (4 KB) (see PIT-info dumped below)
GT-P1010-CSC-SERKB3/
cache.rfs (10.9 MB) (see content listing below)
movinand.mst (51MB) (can be extracted with [URL="http://movitool.ntd.homelinux.org/trac/movitool/"]MoviTool[/URL], based on [URL="http://forum.xda-developers.com/showpost.php?p=9481702&postcount=30"]Volker1's method[/URL])
P1010XWKB5-REV03-ALL-low-CL913814/
boot.bin (256 KB)
cache.rfs (672 KB)
normalboot.img (4.3 MB)
param.lfs (612 KB)
recovery.img (4.3 MB)
Sbl.bin (1.2 MB)
system.rfs (331 MB)
userdata.rfs (1.2 MB)
Output from Volker1's PIT-info utility:
Code:
Contents of PIT file: p1wifi_20110128_r10_00.pit
---------------------------------------------------------------------------
file magic = 0x12349876 (expected value)
Unknown data: 0 0 0 0 0
Number of partitions = 13 (usual value)
Partition #1
Usual content: boot.bin, the primary boot loader (low-level hardware initialization)
partition entry type: 0 0 (normal partition)
ID = 0; flags = 0; unknown: 0
size = 1 blocks of 256 * 512 bytes = 131072 B = 128 kB = 0 MB
unknown string: [........]
partition name = [IBL+PBL.........................]
file name = [boot.bin........................................................]
Partition #2
Usual content: partition information table (PIT)
partition entry type: 0 0 (normal partition)
ID = 0x1; flags = 0; unknown: 0
size = 1 blocks of 256 * 512 bytes = 131072 B = 128 kB = 0 MB
unknown string: [........]
partition name = [PIT.............................]
file name = [p1wifi.pit......................................................]
Partition #3
Usual content: efs.rfs
partition entry type: 0 0 (normal partition)
ID = 0x14; flags = 0x2 (rfs file system); unknown: 0
size = 40 blocks of 256 * 512 bytes = 5242880 B = 5120 kB = 5 MB
unknown string: [........]
partition name = [EFS.............................]
file name = [efs.rfs.........................................................]
Partition #4
Usual content: Sbl.bin, the secondary boot loader (loads linux kernel)
partition entry type: 0 0 (normal partition)
ID = 0x3; flags = 0; unknown: 0
size = 5 blocks of 256 * 512 bytes = 655360 B = 640 kB = 0 MB
unknown string: [........]
partition name = [SBL.............................]
file name = [sbl.bin.........................................................]
Partition #5
Usual content: backup of secondary boot loader
partition entry type: 0 0 (normal partition)
ID = 0x4; flags = 0; unknown: 0
size = 5 blocks of 256 * 512 bytes = 655360 B = 640 kB = 0 MB
unknown string: [........]
partition name = [SBL2............................]
file name = [sbl.bin.........................................................]
Partition #6
Usual content: param.lfs /mnt/.lfs j4fs
partition entry type: 0 0 (normal partition)
ID = 0x15; flags = 0x2 (rfs file system); unknown: 0
size = 20 blocks of 256 * 512 bytes = 2621440 B = 2560 kB = 2 MB
unknown string: [........]
partition name = [PARAM...........................]
file name = [param.lfs.......................................................]
Partition #7
Usual content: zImage, the linux kernel
partition entry type: 0 0 (normal partition)
ID = 0x5; flags = 0; unknown: 0
size = 30 blocks of 256 * 512 bytes = 3932160 B = 3840 kB = 3 MB
unknown string: [........]
partition name = [NORMALBOOT......................]
file name = [normalboot.img..................................................]
Partition #8
Usual content: recovery.bin, the backup copy of zImage/initramfs
partition entry type: 0 0 (normal partition)
ID = 0x8; flags = 0; unknown: 0
size = 30 blocks of 256 * 512 bytes = 3932160 B = 3840 kB = 3 MB
unknown string: [........]
partition name = [RECOVERY........................]
file name = [recovery.img....................................................]
Partition #9
Usual content: factoryfs.rfs
partition entry type: 0 0 (normal partition)
ID = 0x16; flags = 0x2 (rfs file system); unknown: 0
size = 1430 blocks of 256 * 512 bytes = 187432960 B = 183040 kB = 178 MB
unknown string: [........]
partition name = [SYSTEM..........................]
file name = [system.rfs......................................................]
Partition #10
Usual content: dbdata.rfs
partition entry type: 0 0 (normal partition)
ID = 0x17; flags = 0x2 (rfs file system); unknown: 0
size = 302 blocks of 256 * 512 bytes = 39583744 B = 38656 kB = 37 MB
unknown string: [........]
partition name = [USERDATA........................]
file name = [userdata.rfs....................................................]
Partition #11
Usual content: cache.rfs
partition entry type: 0 0 (normal partition)
ID = 0x18; flags = 0x2 (rfs file system); unknown: 0
size = 140 blocks of 256 * 512 bytes = 18350080 B = 17920 kB = 17 MB
unknown string: [........]
partition name = [CACHE...........................]
file name = [cache.rfs.......................................................]
Partition #12
Usual content: modem.bin
partition entry type: 0 2 (unknown value)
ID = 0x3; flags = 0x1; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [........]
partition name = [HIDDEN.D........................]
file name = [hidden.rfs.t....................................................]
Partition #13
Usual content: Unknown
partition entry type: 0 2 (unknown value)
ID = 0; flags = 0x1; unknown: 0
size = 0 blocks of 0 * 512 bytes = 0 B = 0 kB = 0 MB
unknown string: [........]
partition name = [MOVINAND........................]
file name = [movinand.mst....................................................]
The usual CSC cache.rfs content:
Code:
/dbdata/svox/de-DE_gl0_sg.bin
/dbdata/svox/de-DE_ta.bin
/dbdata/svox/en-GB_kh0_sg.bin
/dbdata/svox/en-GB_ta.bin
/dbdata/svox/en-US_lh0_sg.bin
/dbdata/svox/en-US_ta.bin
/dbdata/svox/es-ES_ta.bin
/dbdata/svox/es-ES_zl0_sg.bin
/dbdata/svox/fr-FR_nk0_sg.bin
/dbdata/svox/fr-FR_ta.bin
/dbdata/svox/it-IT_cm0_sg.bin
/dbdata/svox/it-IT_ta.bin
/system/csc/feature.xml
/system/csc/contents.db
/system/csc/others.xml
/system/csc/sales_code.dat
/system/csc/customer.xml
/system/app/MusicODC.apk
/system/T9DB/qwerty_fi.kdb
/system/T9DB/phonepad_cs.kdb
/system/T9DB/qwerty_da.kdb
/system/T9DB/Samsung_400_PLlsUN_xt9.ldb
/system/T9DB/phonepad_lt.kdb
/system/T9DB/Samsung_400_TRlsUN_xt9.ldb
/system/T9DB/Samsung_400_DEusUN_xt9.ldb
/system/T9DB/Samsung_400_ETlsUN_xt9.ldb
/system/T9DB/Samsung_400_ENubUN_xt9.ldb
/system/T9DB/Samsung_400_SVusUN_xt9.ldb
/system/T9DB/qwerty_sv.kdb
/system/T9DB/Samsung_400_DAlsUN.ldb
/system/T9DB/phonepad_uk.kdb
/system/T9DB/phonepad_it.kdb
/system/T9DB/phonepad_el.kdb
/system/T9DB/qwerty_hu.kdb
/system/T9DB/qwerty_es.kdb
/system/T9DB/Samsung_400_UKlsUN_xt9.ldb
/system/T9DB/qwerty_fr.kdb
/system/T9DB/qwerty_et.kdb
/system/T9DB/Samsung_400_SKlsUN_xt9.ldb
/system/T9DB/phonepad_no.kdb
/system/T9DB/qwerty_nl.kdb
/system/T9DB/qwerty_lt.kdb
/system/T9DB/Samsung_400_LVlsUN_xt9.ldb
/system/T9DB/Samsung_400_ITlsUN_xt9.ldb
/system/T9DB/Samsung_400_PTlsUN_xt9.ldb
/system/T9DB/phonepad_da.kdb
/system/T9DB/Samsung_400_HUlsUN_xt9.ldb
/system/T9DB/Samsung_400_ELlsUN_xt9.ldb
/system/T9DB/phonepad_et.kdb
/system/T9DB/Samsung_400_KKlsUN_xt9.ldb
/system/T9DB/phonepad_es.kdb
/system/T9DB/qwerty_sk.kdb
/system/T9DB/phonepad_nl.kdb
/system/T9DB/qwerty_pt.kdb
/system/T9DB/Samsung_400_ESlsUN_xt9.ldb
/system/T9DB/Samsung_400_CSlsUN_xt9.ldb
/system/T9DB/phonepad_ru.kdb
/system/T9DB/phonepad_tr.kdb
/system/T9DB/qwerty_tr.kdb
/system/T9DB/phonepad_de.kdb
/system/T9DB/Samsung_400_FIlsUN_xt9.ldb
/system/T9DB/phonepad_ko.kdb
/system/T9DB/phonepad_fr.kdb
/system/T9DB/phonepad_fi.kdb
/system/T9DB/qwerty_ru.kdb
/system/T9DB/phonepad_en.kdb
/system/T9DB/qwerty_en.kdb
/system/T9DB/qwerty_cs.kdb
/system/T9DB/qwerty_el.kdb
/system/T9DB/Samsung_400_NOlsUN.ldb
/system/T9DB/Samsung_400_RUlsUN_xt9.ldb
/system/T9DB/qwerty_kk.kdb
/system/T9DB/qwerty_no.kdb
/system/T9DB/qwerty_uk.kdb
/system/T9DB/phonepad_lv.kdb
/system/T9DB/phonepad_pl.kdb
/system/T9DB/Samsung_400_NLlsUN_xt9.ldb
/system/T9DB/phonepad_sv.kdb
/system/T9DB/phonepad_sk.kdb
/system/T9DB/Samsung_400_LTlsUN_xt9.ldb
/system/T9DB/qwerty_pl.kdb
/system/T9DB/qwerty_de.kdb
/system/T9DB/Samsung_400_FRlsUN_xt9s.ldb
/system/T9DB/qwerty_ko.kdb
/system/T9DB/qwerty_lv.kdb
/system/T9DB/phonepad_pt.kdb
/system/T9DB/qwerty_it.kdb
/system/T9DB/phonepad_hu.kdb
/system/CSCFiles.txt
/system/SW_Configuration.xml
Changes in /system/app/ :
Removed DailyBriefing, Ebook, Mms, MobileTrackerEngineTwo, MobileTrackerUI, OtaProvisioningService, SamsungWidget_WeatherClock, SoundRecorder, signin, syncmldm, wipereceiver, wssomacp
Added PhoneCrashNotifier, PopupuiReceiverf, qik, qikhelp, skype
Changes in /system/bin/ :
Too many to list, but here are some notable ones:
Removed BCM4329B1_002.002.023.0534.0590.hcd (the driver for the multi-function Broadcom BCM-4329 chipset, also removed in /etc/wifi/ etc.), akmd2 (the multi-sensor driver, now split into several sub-daemons: geomagnetic, gyroscope, temperature, light, orientation, pressure, proximity, etc.)
Notable changes in /system/etc/ :
Added audio/codec/FMRadioEar.ini, audio/codec/FMRadioSpk.ini, and FM-radio stuff in /etc/firmware/ and /lib/libfmradio_jni.so (the Texas Intruments BRF6350 chip supports FM radio...but I don't think that /system/app/ contains an FM tuner application).
Notable addition: /lib/dsp/ + /lib/libOMX*.so + /lib/libVendor_ti_OMX*.so + lib/libaomx_*.so (Texas Intruments OMX/DSP, hardware encoding/decoding of 720p AMR, WB-AMR, AAC, h264, WMA, WMV, MP3, MPEG4, Flac, AC3, S263, etc.)
Code:
720p_h264vdec_sn.dll64P
720p_mp4vdec_sn.dll64P
720p_mp4venc_sn.dll64P
baseimage.dof
baseimage.map
chromasuppress.l64p
conversions.dll64P
dctn_dyn.dll64P
ddspbase_tiomap3430.dof64P
dfgm.dll64P
dynbase_tiomap3430.dof64P
eenf_ti.l64P
h264vdec_sn.dll64P
h264venc_sn.dll64P
ipp_sn.dll64P
jpegdec_sn.dll64P
jpegenc_sn.dll64P
m4venc_sn.dll64P
monitor_tiomap3430.dof64P
mp3dec_sn.dll64P
mp4v720parcdec_sn.dll64P
mp4varcdec_sn.dll64P
mp4vdec_sn.dll64P
mpeg4aacdec_sn.dll64P
mpeg4aacenc_sn.dll64P
mpeg4aridec_sn.dll64P
nbamrdec_sn.dll64P
nbamrenc_sn.dll64P
postprocessor_dualout.dll64P
qosdyn_3430.dll64P
ringio.dll64P
star.l64P
usn.dll64P
vpp_sn.dll64P
wbamrdec_sn.dll64P
wbamrenc_sn.dll64P
wmadec_sn.dll64P
wmv9dec_sn.dll64P
yuvconvert.l64p
Wifi access point doesn't seem very well protected (/etc/wifi/softap/hostapd.conf):
SSID = AndroidAP (not broadcast)
IP = 192.168.43.1
PASS = "password" (WPA)
By the way, the Wifi interface is different than on the fully-featured Tab: tiwlan0 (the access point is tiap0)
Nice let us know what's new and how you make out
This is great news and I am looking forward to your project, thanks!!!
Heads-up: original post updated with PIT partition structure and TAR contents.
Original post updated with further information (FM radio, DSP, etc.). None of this is authoritative, obviously. I am just making plain observations. I haven't even seen the manufacturer's specifications yet for this device.
Splice/combine the ROM with a P1000 ROM?
Cool. Does this mean that your aim to splice/combine the ROM with a P1000 ROM to create a custom Android 2.2.1 ROM WITH 3G capabilities, that is compatible with P1000?
And in that case, it sure would be nice to keep most of what has been removed from /system/* in the P1010 ROM, of course.
Very interesting, thanks for posting the analysis.
I wonder whether GL drivers are any newer than from P1000 ROMs.
And GPS daemon?
Also, interesting about these split sensor drivers.
edit
hmm, interesting, the GL drivers are for SGX530 not 540 like in normal tab.
And the CPU in 1010 is OMAP3 not Hummingbird.
KB6 now online @ Samfirmware.
I'm too busy to look into it though.
Hi,
I just got the Wifi version. How can I check the ROM version?
does the P1010 still have a gps radio?
jackfrostn said:
does the P1010 still have a gps radio?
Click to expand...
Click to collapse
Yes. Only differences between 3g and wifi model:
- no 3G radio
- less powerful CPU/GPU on wifi model (thus can't play HD/Full HD video)
- and off course, wifi model is cheaper
could someone try getting the skype and qik files working
any update on the ROMs progress?
bthoven said:
Yes. Only differences between 3g and wifi model:
- no 3G radio
- less powerful CPU/GPU on wifi model (thus can't play HD/Full HD video)
- and off course, wifi model is cheaper
Click to expand...
Click to collapse
Actually it CAN play HD video. It can record 720p movies so it would only make sense it'd be able to play them. I watch 720p episodes of Breaking Bad on mine.
Sent from my GT-P1010 using XDA Premium App
himmelhauk said:
Actually it CAN play HD video. It can record 720p movies so it would only make sense it'd be able to play them. I watch 720p episodes of Breaking Bad on mine.
Sent from my GT-P1010 using XDA Premium App
Click to expand...
Click to collapse
Yes, it can play 720p lower bitrate whilst the 3G version can play higher bit rate, and also 1080p.
bthoven said:
Yes, it can play 720p lower bitrate whilst the 3G version can play higher bit rate, and also 1080p.
Click to expand...
Click to collapse
Actually it is worth making a correction here as well, it plays 1080 just fine as well, at least for me.
Out of curiousity, where did you see that the wifi has a different CPU/GPU than the GSM/CDMA versions? I'm not finding that info anywhere.
chrisliphart said:
Out of curiousity, where did you see that the wifi has a different CPU/GPU than the GSM/CDMA versions? I'm not finding that info anywhere.
Click to expand...
Click to collapse
In all the TI OMAP libraries and kernel in the ROM?
skype for p1010 wifi
Skype will work with regular rom.i used it all day today
Yes, it does have gps radio on there. Well mine does anyway (in the uk)

[FFU][UPE-DEV]Structure Full Flash Update Image for Dell VenuePro[WP7][7.0.0.7004]

Structure Full Flash Update Image (.FFU) for Dell VenuePro Windows Phone 7 7.0.0.7004
Full Flash Update - This is a System Flash Image for update WP7 Device. We upgrade this OS, example in tool UpdateWP.exe(from Zune catalog in PC).
In Part SDLR, from general ROM structure, we have too more files and modules, which reads the image system and its syntax.
ImageFlash Structure:
Code:
[FullFlash]
Version = 1.0
MigrateUserSettings = False
UpdateType = Normal
DevicePlatformID = {5B8F8B62-8E55-4531-8D70-15269B68C43E}
FormatUserStore = True
[BinaryRegion]
Size = 24924572
Name = Modem
[Store]
SectorSize = 2048
Name = OS
SectorCount = 479296
ID = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 2590
Name = SLDR
PartitionType = 32
BootDataSize = 12
TotalSectors = 3136
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 2540
Name = NK
PartitionType = 35
BootDataSize = 12
TotalSectors = 2944
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
[Partition]
UsedSectors = 66059
Name = IMGFS
PartitionType = 37
TotalSectors = 70719
TargetStore = {ACE7CC5C-5F30-474b-A662-989B9B9DBA90}
Nokser

[FFU][UPE-DEV]Structure Full Flash Update Image for HTC Mazaa

Structure Full Flash Update Image (.FFU) for Windows Phone 7 HTC Mazaa
Full Flash Update - This is a System Flash Image for update WP7 Device. We upgrade this OS, example in tool UpdateWP.exe(from Zune catalog in PC).
In Part SDLR, from general ROM structure, we have too more files and modules, which reads the image system and its syntax.
Physical Flash Layout:
HashTable.blob
Partition Table Info
User Store Space
Bootloader/Modem -> (amss, fsbl, osbl, etc.)
BSP
SLDR1
SLDR2
NK
USP
DPP
IMGFS
PADUSER
User Store
Partition Table Info (ImageFlash):
Code:
[FullFlash]
Version = 1.0
MigrateUserSettings = False
UpdateType = Clean
Description =
DevicePlatformID = {2527F725-F4B7-404e-8379-F0CAE045AAB8}
FormatUserStore = False
[BinaryRegion]
Size = 27547389
Name = Modem
[Store]
SectorSize = 512
Name = OS
SectorCount = 62324736
ID = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 1
Name = BSP
PartitionType = 41
BootDataSize = 12
TotalSectors = 512
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 10199
Name = SLDR1
PartitionType = 32
BootDataSize = 12
TotalSectors = 13260
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 10199
Name = SLDR2
PartitionType = 32
BootDataSize = 12
TotalSectors = 13260
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 8107
Name = NK
PartitionType = 35
BootDataSize = 12
TotalSectors = 11776
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 0
Name = USP
PartitionType = 27
TotalSectors = 6912
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 1
Name = DPP
PartitionType = 41
TotalSectors = 512
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 528254
Name = IMGFS
PartitionType = 37
TotalSectors = 1028088
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 0
Name = PADUSER
PartitionType = 42
TotalSectors = 8
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
[Partition]
UsedSectors = 0
UseAllSpace = True
Name = User
PartitionType = 4
TotalSectors = 0
TargetStore = {7EF3850B-A401-4699-9821-7A4C483F6BAA}
More Information:
.ffu (Full Flash Update) file format (XML) will be used to pass information to the Zune software on which partitions are to be updated, etc. FFUs are signed just as .cabs are signed and only an .ffu which passes validation against the certificates on-device will be allowed to update a device.
Click to expand...
Click to collapse
Nokser
shape of the above
the program is doing what
thanks
Can downgrade spl 5 with this??
Magpir said:
Can downgrade spl 5 with this??
Click to expand...
Click to collapse
+1 for this
what does this do?
hmm... this has been around for weeks Nokser, but thanks!

Categories

Resources