[Q] Quick Question Regarding BML -> MTD - Samsung Galaxy S (4G Model)

I have followed lumin30's guide (http://forum.xda-developers.com/showthread.php?t=1470716) and have successfully rooted my Galaxy S 4G with Super One Click, got Voodoo and CWM with Basic with a Twist and have flashed Valhalla - Black Edition on it.
I would like to an ICS OS flashed onto it as my next step now that I am more comfortable with the process, but even after scouring the Wiki I was left a bit confused about the partition switch.
From where I am at right now would I have to flash CM7 or CM9 onto the device to switch partition types followed by my ICS rom of choice or is it more simple or complicated than that?
Alternatively, are there any advantages to sticking with a GB rom as opposed to a ICS rom?

Most if not all ICS ROMs have a script that will automatically switch to MTD before flashing. So you can flash any ICS ROM straight from stock gingerbread
The advantages of sticking to gingerbread would be fully working WiFi calling

You need to flash from either Blastoff or Basic with a Twist kernel to flash to MTD. Other than that read the OP of the ROM you would like to flash.

My thanks to you both

Just a note.
You can flash BML -> MTD, but you have to oneclick/heimdall/odin to get back to BML from MTD. I'd like to find a work-around for this.
EDIT: and, don't forget the wiki!

Related

Leaked Gingerbread 2.3.5

Forgive me if this is covered elsewhere. I just read this CNet article about the leaked GB release. I am thinking about downloading it. Is this the one that people are having issues rooting with? If so, can someone provide me step by step instructions for this fix without changing kernel?
I have flashed ROM before. I follow instructions well, but I don't always follow exactly what is being discussed in the threads unless there are clear instructions. Perhaps I missed some that already exist?
http://www.everythingandroid.org/gi...fuse-4g-galaxy-s-4g-now-available/2011/09/23/
Thanks.
To root you'd need to:
Flash that release
Flash one of the custom Gingerbread kernels - note that this will break wifi and HDMI temporarily
Root the system partition (actually most custom kernels will do this for you)
Flash back to the kernel from the leak
Ok, so I can just flash back to the original kernel when done? Sounds simple enough. I have flashed the rim before, but not the kernel. However I am sure I can find instructions for this. I assume the Infusion kernel would work just fine?
Thanks.
Sent from my SAMSUNG-SGH-I997 using XDA App
Entropy512 said:
To root you'd need to:
Flash that release
Flash one of the custom Gingerbread kernels - note that this will break wifi and HDMI temporarily
Root the system partition (actually most custom kernels will do this for you)
Flash back to the kernel from the leak
Click to expand...
Click to collapse
Does your kernel root the system partition?
Yamaha750 said:
Does your kernel root the system partition?
Click to expand...
Click to collapse
In theory - it's a feature I have not tested as I've always used pre-rooted /system partitions - it's one of the features that came from gtg's initramfs work back when the Rogers Infuse first dropped. It should work as I believe gtg tested it.
https://github.com/Entropy512/initramfs_sgh-i997r/tree/master/voodoo/extensions - see the install_su script there

Can I revert from a mtd rom to a bml rom via cwm restore?

If im on an ics rom and have a backup of a gingerbread bml rom can I go back to it by simply restoring it in clockwork mod recovery or do I still have to 1 click first? It would be very useful to quickly switch between roms for when I need the better GPS or wifi calling
From the wiki:
MTD ROMs utilize a different partition layout from the stock-based BML ROMs. Because of this, BML Nandroid backups will not work with MTD based ROMs, and vice versa. Also, once you have flashed an MTD ROM, you must go back to stock first before installing another BML ROM. There are also a number of other differences present in MTD ROMs. MTD ROMs require the Google (Nexus S) USB drivers as opposed to the Samsung USB drivers.
Click to expand...
Click to collapse
It would be cool if we got something like this working sometime in the future, for these situations.
No....have to one click back unfortunately
http://forum.xda-developers.com/showthread.php?t=1470716
download One click Heimdall, it will revert your phone back to stock 2.3.6, its pretty easy if you follow the guide:fingers-crossed:

[Q] Before I Do Anything Rash....

Hopefully I've done my homework...
Currently on Froyo, stock kernel, sg4g is rooted (using 1-click)
If I want to upgrade to GB, I can do so by following Lumin30's Heimdall one-click for dummies guide.
If later I want to try a custom ROM, I have to flash a kernel with CWM built in.
Sound right?
DickyG said:
Hopefully I've done my homework...
Currently on Froyo, stock kernel, sg4g is rooted (using 1-click)
If I want to upgrade to GB, I can do so by following Lumin30's Heimdall one-click for dummies guide.
If later I want to try a custom ROM, I have to flash a kernel with CWM built in.
Sound right?
Click to expand...
Click to collapse
Yup
You may want to consider the CM9 + Proton kernel. I've been using it on my DD for a couple days now, and I don't miss the GB ROMs I was using. Pretty much all the things I care about are working now. It's been quite stable, and most of the problems have been UBD's solved by using the Google wrench - or uninstalling WeatherBug.
I don't know if you have to go GB first on the way to CM9. I haven't read up on that. Try the search first, read the CM9 dev and Q&A threads, then ask if you can't find it.
You do. For the GB bootloaders.
DickyG said:
Hopefully I've done my homework...
Currently on Froyo, stock kernel, sg4g is rooted (using 1-click)
If I want to upgrade to GB, I can do so by following Lumin30's Heimdall one-click for dummies guide.
If later I want to try a custom ROM, I have to flash a kernel with CWM built in.
Sound right?
Click to expand...
Click to collapse
lumin's guide... just read every step...
also, flash tweaks ( IF you want )

[Q] Restoring a nandroid backup on my current ROM?

My Samsung Galaxy S 4G is going through some pretty awesome times in its life right now. However, I'm worried that flashing/restoring the wrong way is going to cut its winning streak short. I mainly stick to the Cyanogenmods found here. ClockworkMod will be abbreviated as CWM, Cyanogenmod as CM. Below is the full history of this device in chronological order:
>Samsung Stock KJ6 (Gingerbread 2.3.6, BML)
>Root w/SuperOneClick
>Bhundven's Subtly Modified Stock with CWM5 + Voodoo Lagfix (kernel w/CWM5.0.2.7)
>Valhalla Black Edition (Gingerbread, BML, CWM5, bhundven's KJ6 Beta2 kernel)
>Cyanogenmod 7.2 (Gingerbread, MTD, CWM5.0.2.8, cyanogenmod-GB kernel)
>Cyanogenmod 9 (Ice Cream Sandwich, MTD, CWM6.0.1.0, 2.6.35.7-cyanogenmod-ICS kernel w/Hefe Kernel changes)
>Cyanogenmod 10 (Jellybean 4.1.x, MTD, CWM6.0.1.9, 2.6.35.7-cyanogenmod-JB Proton kernel)
>Cyanogenmod 9 (Ice Cream Sandwich, MTD, CWM6.0.1.0, 2.6.35.7-cyanogenmod-ICS kernel w/Hefe Kernel changes)
>Cyanogenmod 10.1 (Jellybean 4.2.2, MTD, CWM6.0.3.2, Aries 3.0.84 kernel)
After flashing CM10, I got caught in a bootloop (a confirmed bug in the ROM), and I had to use CWM to restore a CM9 nandroid/backup. I then flashed to CM10.1, and this is where I'm currently at. However, I want to go back to CM9 once again, the GPS only works on the ICS ROMs.
Can I restore CM9 using my current version CWM, or does the recovery version have to be the exact same build? I didn't seem to have any problems restoring CM9 from CM10, and I'm still not sure if there were any consequences in doing that.
From what I've read, restoring has to be done on the same Recovery version as the Nandroid. I've watched many Youtube videos of people suggesting that they flash ROMs on "a daily basis", I'm trying to figure out how they are comfortable with this, given such a restrictive restore environment.
Double44 said:
My Samsung Galaxy S 4G is going through some pretty awesome times in its life right now. However, I'm worried that flashing/restoring the wrong way is going to cut its winning streak short. I am only running unofficial Cyanogenmods found here. ClockworkMod will be abbreviated as CWM, Cyanogenmod as CM. Below is the full history of this device in chronological order:
>Samsung Stock KJ6 (Gingerbread 2.3.6, BML)
>Root w/SuperOneClick
>Bhundven's Subtly Modified Stock with CWM5 + Voodoo Lagfix (kernel w/CWM5.0.2.7)
>Valhalla Black Edition (Gingerbread, BML, CWM5, bhundven's KJ6 Beta2 kernel)
>Cyanogenmod 7.2 (Gingerbread, MTD, CWM5.0.2.8, cyanogenmod-GB kernel)
>Cyanogenmod 9 (Ice Cream Sandwich, MTD, CWM6.0.1.0, 2.6.35.7-cyanogenmod-ICS kernel w/Hefe Kernel changes)
>Cyanogenmod 10 (Jellybean 4.1.x, MTD, CWM6.0.1.9, 2.6.35.7-cyanogenmod-JB Proton kernel)
>Cyanogenmod 9 (Ice Cream Sandwich, MTD, CWM6.0.1.0, 2.6.35.7-cyanogenmod-ICS kernel w/Hefe Kernel changes)
>Cyanogenmod 10.1 (Jellybean 4.2.2, MTD, CWM6.0.3.2, Aries 3.0.84 kernel)
After flashing CM10, I got caught in a bootloop (a confirmed bug in the ROM), and I had to use CWM to restore a CM9 nandroid/backup. I then flashed to CM10.1, and this is where I'm currently at. However, I want to go back to CM9 once again, the GPS only works on the ICS ROMs.
Can I restore CM9 using my current version CWM, or does the recovery version have to be the exact same build? I didn't seem to have any problems restoring CM9 from CM10, and I'm still not sure if there were any consequences in doing that.
From what I've read, restoring has to be done on the same Recovery version as the Nandroid. I've watched many Youtube videos of people suggesting that they flash ROMs on "a daily basis", I'm trying to figure out how they are comfortable with this, given such a restrictive restore environment.
Click to expand...
Click to collapse
I think that you'll just need to be on one recovery at all times. I don't recommend updating your recovery.
Smack that thanks button If I helped!
Always make a nandroid backup before trying anything risky
Sent from my fabulous N7105 powered by Illusion ROM and Plasma Kernel.
Sent from dat small country called Singapore.
P.S. Quote my post for replies ASAP.
Thanks for the quick response
I'm not sure how it's possible to stick with one recovery? A new recovery version comes with each ROM I flash on the T959V, it's impossible to keep recovery the same.
Double44 said:
Thanks for the quick response
I'm not sure how it's possible to stick with one recovery? A new recovery version comes with each ROM I flash on the T959V, it's impossible to keep recovery the same.
Click to expand...
Click to collapse
Keep the recovery file in your sd-card. Flash it everytime u flash a new rom. (Make sure the rom you're using is compatible with that recovery though)
Smack that thanks button If I helped!
Always make a nandroid backup before trying anything risky
Sent from my fabulous N7105 powered by Illusion ROM and Plasma Kernel.
Sent from dat small country called Singapore.
P.S. Quote my post for replies ASAP.
Short answer, "I just flash with whatever recovery I have on my phone. In the rare cases that doesn't work, I flash a different recovery manually."
Long answer:
On the SGS4G, it is non-trivial to keep the recovery as it is integral with the run-time boot image. Flash a kernel, you flash recovery as well. You almost always get the kernel in a ROM.
Within a given Android release, you should be able to use "any" recovery to flash any well-built ROM. I regularly flash TWRP-based ROMs using CWR and vice versa.
I haven't looked into getting CWR to recognize a TWRP backup or vice versa though. They should both hold the same information, but I don't know how well they "play with others" on their naming, locations, and formats.
There sometimes are differences in how the ROM's "install me" code runs in different Android versions and occasionally, for example, a JB-era recovery won't flash a GB-era ROM or vice versa. When that happens, you can generally flash a kernel of the "target" ROM by itself, then flash the rest of the ROM. It is pretty easy if you have a Mac or Linux machine, a bit more complicated if you're running Windows. Making cross-version upgrades reliable are one of the more challenging things a custom-ROM maker needs to deal with.
You generally don't want to try to mix a /data partition from one Android version with a /system from another. Some of the user-space backup utilities like Titanium Backup can do a decent job of upgrading data from one Android version to another. I've never tried to downgrade.
jeffsf said:
Short answer, "I just flash with whatever recovery I have on my phone. In the rare cases that doesn't work, I flash a different recovery manually."
Long answer:
On the SGS4G, it is non-trivial to keep the recovery as it is integral with the run-time boot image. Flash a kernel, you flash recovery as well. You almost always get the kernel in a ROM.
Within a given Android release, you should be able to use "any" recovery to flash any well-built ROM. I regularly flash TWRP-based ROMs using CWR and vice versa.
I haven't looked into getting CWR to recognize a TWRP backup or vice versa though. They should both hold the same information, but I don't know how well they "play with others" on their naming, locations, and formats.
There sometimes are differences in how the ROM's "install me" code runs in different Android versions and occasionally, for example, a JB-era recovery won't flash a GB-era ROM or vice versa. When that happens, you can generally flash a kernel of the "target" ROM by itself, then flash the rest of the ROM. It is pretty easy if you have a Mac or Linux machine, a bit more complicated if you're running Windows. Making cross-version upgrades reliable are one of the more challenging things a custom-ROM maker needs to deal with.
You generally don't want to try to mix a /data partition from one Android version with a /system from another. Some of the user-space backup utilities like Titanium Backup can do a decent job of upgrading data from one Android version to another. I've never tried to downgrade.
Click to expand...
Click to collapse
Twrp backups won't work with cwm and vice versa. I've tried it.
Smack that thanks button If I helped!
Always make a nandroid backup before trying anything risky
Sent from my fabulous N7105 powered by Illusion ROM and Plasma Kernel.
Sent from dat small country called Singapore.
P.S. Quote my post for replies ASAP.
I feel like a more simple way is to go back to stock, re-root, and then go back to CM9.
I'm suddenly bursting at the seams with questions.
Irwenzhao said:
Keep the recovery file in your sd-card. Flash it everytime u flash a new rom. (Make sure the rom you're using is compatible with that recovery though)
Click to expand...
Click to collapse
Where would I look to find ROM/recovery compatibility? If I'm not mistaken, none of the ROMs I've used go into these details.
How would I backup a recovery? I would use ROM Manager, but ROM Manager is not compatible with the SGS4G. I've been doing my work manually through CWM only (which is recommended anyway), and I don't think CWM can be backed up through CWM itself.
I am planning to restore a CM9 backup eventually. If I were to backup a recovery, would I backup the current Jellybean recovery I have (CWM6.0.3.2), or would I be better off to backup the recovery that comes with the CM9/ICS nandroid (CWM6.0.1.0)? Both CWM's have software version 6, which almost makes sense that I was able to restore from CM10 before (CWM6.0.1.9); the only differences between the two recoveries are their build numbers.
If I were in need of a specific SGS4G kernel, where would a person look? I may need the kernel to CM9 (2.6.35.7-cyanogenmod-ICS kernel w/Hefe Kernel changes). Now that I think about it, what's the most important factor when restoring, the kernel or the version of recovery?
jeffsf said:
Short answer, "I just flash with whatever recovery I have on my phone. In the rare cases that doesn't work, I flash a different recovery manually."
Long answer:
On the SGS4G, it is non-trivial to keep the recovery as it is integral with the run-time boot image. Flash a kernel, you flash recovery as well. You almost always get the kernel in a ROM.
Within a given Android release, you should be able to use "any" recovery to flash any well-built ROM. I regularly flash TWRP-based ROMs using CWR and vice versa.
I haven't looked into getting CWP to recognize a TWRP backup or vice versa though. They should both hold the same information, but I don't know how well they "play with others" on their naming, locations, and formats.
There sometimes are differences in how the ROM's "install me" code runs in different Android versions and occasionally, for example, a JB-era recovery won't flash a GB-era ROM or vice versa. When that happens, you can generally flash a kernel of the "target" ROM by itself, then flash the rest of the ROM. It is pretty easy if you have a Mac or Linux machine, a bit more complicated if you're running Windows. Making cross-version upgrades reliable are one of the more challenging things a custom-ROM maker needs to deal with.
You generally don't want to try to mix a /data partition from one Android version with a /system from another. Some of the user-space backup utilities like Titanium Backup can do a decent job of upgrading data from one Android version to another. I've never tried to downgrade.
Click to expand...
Click to collapse
How would you manually flash a different recovery if you've already wiped the device? Are you restoring the current ROM, then downloading a different kernel, and trying again?
You wouldn't want to flash a BML ROM with an MTD ROM's recovery. You may know this already, but there are Gingerbread ROMs with both BML & MTD layouts. Luckily this trend disappears on the ICS ROMs by keeping it MTD, I don't plan on flashing any lower than ICS because of this.
Regarding your last sentence, isn't this why a person would wipe data and format /system before flashing?
AnAznBoy9724 said:
I feel like a more simple way is to go back to stock, re-root, and then go back to CM9.
Click to expand...
Click to collapse
I may not need to go down that route just yet.. though I could be wrong.
Double44 said:
I'm suddenly bursting at the seams with questions.
Where would I look to find ROM/recovery compatibility? If I'm not mistaken, none of the ROMs I've used go into these details.
Click to expand...
Click to collapse
Most ROM builders seem to be happy about just getting their ROM to flash over common other ROMs in use for the phone when they release them. It's more a case of "I tried it and it didn't work" for most ROMs. Clear exceptions include at least:
Froyo and Gingerbread had different boot loaders
Some MTD ROMs can't be flashed from a BML kernel
I don't know of any BML ROM that can be flashed from an MTD kernel
SELinux throws a wrench into cross-kernel flash compatibility
How would I backup a recovery? I would use ROM Manager, but ROM Manager is not compatible with the SGS4G. I've been doing my work manually through CWM only (which is recommended anyway), and I don't think CWM can be backed up through CWM itself.
Click to expand...
Click to collapse
/mnt/sdcard/TWRP or /mnt/sdcard/Clockwork have the backups in them. If you look at them in detail (and ignore the suffix) /data and /system and your android-secure are generally something manageable like tar or cpio format. Titanium Backup (Pro, at least) can read both CWR and TWRP backups.
I am planning to restore a CM9 backup eventually. If I were to backup a recovery, would I backup the current Jellybean recovery I have (CWM6.0.3.2), or would I be better off to backup the recovery that comes with the CM9/ICS nandroid (CWM6.0.1.0)? Both CWM's have software version 6, which almost makes sense that I was able to restore from CM10 before (CWM6.0.1.9); the only differences between the two recoveries are their build numbers.
Click to expand...
Click to collapse
You backup "recovery" every time you backup boot on the SGS4G. The recovery partition, as I understand the early bootloaders, is never used. It is the same image in both partition.
If I were in need of a specific SGS4G kernel, where would a person look? I may need the kernel to CM9 (2.6.35.7-cyanogenmod-ICS kernel w/Hefe Kernel changes). Now that I think about it, what's the most important factor when restoring, the kernel or the version of recovery?
Click to expand...
Click to collapse
If you wanted just the boot image from a ROM installer, which includes both the kernel and recovery, pretty much inseparably bound together, then you can un-zip the ROM and look for boot.img in the extracted files. It should also be the contents your "nandroid" backup of the boot or recovery partition (though I haven't confirmed that it is bit-for-bit equivalent, I would be surprised if it wasn't). You can grab the current Hefe Kernel which is what I generally use as my "go to" kernel for ICS. Then again, I'm arguably biased.
How would you manually flash a different recovery if you've already wiped the device? Are you restoring the current ROM, then downloading a different kernel, and trying again?
Click to expand...
Click to collapse
heimdall is your friend, along with a "recovery jig" or "download jig" (under $5 to make, or off eBay). You can flash a soft-bricked device with it.
Code:
heimdall flash --KERNEL path/to/boot.img
@bhundven thinks that 1.3.1 is the latest you should use.
http://forum.xda-developers.com/showthread.php?t=755265
http://glassechidna.com.au/heimdall/
https://github.com/Benjamin-Dobell/Heimdall/downloads
It can also be done from the command line, for example using adb into recovery. As a mis-typed command using that approach could potentially blow away boot loaders or the like, I tend not to use it myself.
You wouldn't want to flash a BML ROM with an MTD ROM's recovery. You may know this already, but there are Gingerbread ROMs with both BML & MTD layouts. Luckily this trend disappears on the ICS ROMs by keeping it MTD, I don't plan on flashing any lower than ICS because of this.
Click to expand...
Click to collapse
You can always use one of the one-click installers to get back to GB, if you want or need. I tend to be slow to upgrade as you can't reliably go back with your data, even with backups.
Regarding your last sentence, isn't this why a person would wipe data and format /system before flashing?
Click to expand...
Click to collapse
A ROM shouldn't care what's on /data though some are apparently unhappy with the cruft of others. Other have not been as lucky as I seem to have been. I always back up before flashing, and immediately go back if it didn't seem to go right, before I put in my SIM or turn on WiFi. (I always try to remember to turn off WiFi and pull my SIM card so that I don't have important changes in my app data when changing ROMs.)
I guess how many ROMs a day you are flashing, how likely you think it is that the ROM is "functional" and how easily you can recover from a bad one impacts how you make your personal decision about what your process is.
On the other hand, if you are changing Android versions, yes, wipe, clean install, and carefully restore app data, with frequent backups so you don't have to start over if something goes wrong.

[Q] can't restore my phone

I backed up my sgh t959v before installing custom rom. When i wanted to restore it error comes can't mount cache. please give me solution. i have already done cwm updat.
How did you back it up?
What ROM did you have previously?
What ROM did you install?
Why do you believe that the backup can be restored over the new ROM?
i backed up my phone by cwm recovery. I have custom kernel installed 5.x.x . I used the rom slimsaber 4.4.2 . Help me cause I'm not a pro like u. Thanx in advance
Sent from my SGH-T959V using xda app-developers app
My first guess is that the kernel from Slim doesn't partition the disk the same way as most other ROMs for our phone.
If you can be very specific about what you've done and what you want to accomplish, we can probably get you there. ROMs and versions will be very important
---
Posted from whatever phone booted today
SlimSaber-galaxys4gmtd-4.4.2-20140207
This is the rom i used and
my kernel version was 2.6.35.7-T959VUVKJ6-antsvx.v1.1.3
help man @jeffsf . U r a pro man plz figure out my prob
Sent from my SGH-T959V using xda app-developers app
Both Roms use different partitions. Kj6 is bml and saber is mtd. It ain't gonna happen.
In order to restore you'll first need to flash back to stock kj6. Then install antonx's kernel (or blastoff) and then you'll be able to restore using cwm.
That's about the long and short of it. All ICS, JB, and KK ROMs use a low-level way ("MTD") of accessing the internal "disk" that isn't compatible with the older "BML" method found in OEM ROMs and other Froyo and many GB ROMs. Additionally, Dao's recent KK ROMs use a subtly different version of MTD than other MTD ROMs.
While you could restore /system and /data from one major release to another, this is not recommended. It's dicey going up in version and then restoring (for example, from ICS to JB), and likely impossible going back. A tool like Titanium Backup (Pro) can help, but sometimes you're just stuck.
The general way of dealing with an internal "disk" change is (not including backup/restore):
Boot to recovery
Install the new kernel (can be "flash the ROM")
Reboot to recovery
Format all internal partitions
Install the ROM
Boot into the ROM
You generally will need app-level backups (for example Titanium Backup) to transition your data.
Going from BML to MTD worked on Team Acid MTD ROMs, such as CM9. I can't comment on other ROMs.
To go from MTD to BML a full re-flash using heimdall or the like is recommended.
To go between Froyo and Gingerbread absolutely requires re-flash -- see other threads for details.

Categories

Resources