Misc partition: Why does it die? How do I fix it? - G1 Q&A, Help & Troubleshooting

This is a long thread because I'm trying to provide the maximum detail possible in the hopes of luring some experts to assist. I am a developer with 30+ years experience, though with little *nix experience, since I hitched my wagon to WinTel when people stopped hiring assembly programmers and the term "GUI" began appearing in help wanted ads.
Yesterday, based upon my experience with one phone that I successfully upgraded to CM6-RC1 and another one that failed, I posted a new thread in the G1 General section, which was probably the wrong place for it. Both phones are US TMo G1's purchased within a few days of each other, around December 2009.
During the subsequent 12 hours I read everything I could find about the dreaded "E: Can't find MISC: / (No space left on device)" problem, which I eventually determined was preventing me from proceeding further.
I found many, many examples of people on all types of hardware who were (and many still are) stuck with a hosed-up misc with no idea how to proceed. This was somewhat alarming to me.
I found a few people who were apparently able to fix it by simply doing a flash_image of a misc.img copied from elsewhere. I found a few who seemed to have fixed it with dd. I found others who went through various combinations of installing other things until the problem mysteriously vanished. I found great info about what the misc partition is and how it's used.
What I did not find is:
(a) any clear explanation of how it gets hosed in the first place,
(b) any clear explanation of how to troubleshoot it,
and most importantly (c) any clear explanation of ways to fix it.
This thread is a request for an expert to step in and fill those gaps. Maybe if we can get some "misc lore" in a single place, other people who encounter the problem won't be left hanging.
So first the back story:
Two days ago I decided to install CM6-RC1 on my own G1. It went very smoothly. I was already on Cupcake, so I formatted the card, downgraded back to RC29, I installed Cupcake, formatted again from the phone, used flashrec to install RA 1.7 (which is amazing, by the way; I may be a n00b to phone-guts but that is already apparent), verified the radio version, installed DangerSPL, installed CM6-RC1, and installed the Google Apps. Flawless process.
Loved it. CM6 is great. So the next morning I had my wife leave her phone at home with me. I had seen a thread which led me to believe that the card didn't necessarily have to be formatted twice. I was under the impression I could format it once and drop all the files out there -- only Cupcake needed to be named update.zip for the process outlined above.
So I connected her phone to my laptop, reformatted to FAT32 over USB from Win7, copied all 211 MB of files over, disconnected and went into flashboot. The RC29 downgrade worked fine. I restarted and logged in just to be sure RC29 was on there. I powered off and restarted in recovery mode -- and the misc problem was already there.
In the stock /!\ recovery screen, ALT+L showed the misc error. I couldn't remember if I had seen that previously (having only done this once before), so I hit ALT+S and hoped for the best. The progress bar went about halfway then bombed on an assert in line 4. And that's as far as I got updating my wife's phone: in theory my story could stop here, but being a lifelong geek-type, I decided to forge ahead. I didn't yet know the importance of misc or even recognize it as my main problem, so bear with me.
I rebooted and rooted via telnet and used flashrec to install RA, and tried installing Cupcake that way. I get a different error from RA: No signature, verification failed. I thought I might have a bad file, somehow, despite having used the same update.zip that went into my G1 just fine, so I downloaded it again from megaupload. Then I downloaded the other one named signed-kila-ota. Then I did a file compare and confirmed they're identical. That won't load through RA. Not sure what's up with that.
But after thinking about it and doing more reading, I concluded I probably didn't need Cupcake for CM6-RC1, I just needed the correct radio image to support DangerSPL. So I grabbed the G1 2.22.23 radio image and tried installing that through RA. It extracts and installs ok, then dumps the Can't read Misc error, then tells me to reboot to complete. So I reboot -- and it goes back into the running OS, of course. And then the light goes on, since I did clearly remember on my own G1 it went back into RA, not into Android.
More digging uncovers the radio/SPL thread that explains how misc is used to control reboots, and I finally clearly realize that misc is my problem. (Actually I still don't know why Cupcake won't load from RA, but I still suspect if I can just load the right radio image, it shouldn't matter.)
During the following six hours I have tried a huge variety of things to fix misc, primarily working through an adb connection.
First I tried making a nandroid backup from my working G1. Took me awhile to figure out I had to do it from the command line to force it to backup misc, then I wasted time trying to get the command line to restore that backup, then I finally made another backup on the non-working G1 and copied the "good" misc over -- and still couldn't get it to restore (kept telling me something about being the current version, which I interpreted to mean it wasn't restoring because it thought the backup already matched the live filesystem).
Again, not knowing much about *nix, at this point I was convinced misc was simply dead and gone. I know what a disk partition is, but I didn't see misc (or the others like recovery) in parted, so I don't think I even understand what it means to say misc is a partition. But I didn't see it anywhere, so I thought it had been erased or overwritten or something along those lines.
Then I ran across a thread in which someone suggested doing a "cat /proc/mtd" which yielded the following:
Code:
dev: size erasesize name
mtd0: 00040000 00020000 "misc"
mtd1: 00500000 00020000 "recovery"
mtd2: 00280000 00020000 "boot"
mtd3: 04380000 00020000 "system"
mtd4: 04380000 00020000 "cache"
mtd5: 04ac0000 00020000 "userdata"
I don't know what it means, but at least I see the system still knows something about misc.
Someone else asked for "dump_image misc /dev/zero" for diagnostic purposes, which yields:
Code:
mtd: ECC errors (0 soft, 1 hard) at 0x00000000
mtd: ECC errors (0 soft, 1 hard) at 0x00020000
Someone suggested "cat /dev/zero > /dev/mtd/mtd0" which results in the error message "cat: write error: No space left on device".
I tried copying misc.img out of the backup folder to the sdcard root and doing "flash_image misc /sdcard/misc.img" and was rewarded with the following lines which I can't interpret, although they're clearly related to the output shown above (I assume flash_image is probably a script or something, which is just doing those same steps internally?):
Code:
mtd: ECC errors (0 soft, 1 hard) at 0x00000000
mtd: ECC errors (0 soft, 1 hard) at 0x00020000
mtd: erase failure at 0x00000000 (I/O error)
mtd: erase failure at 0x00000000 (I/O error)
mtd: skipping write block at 0x00000000
error writing misc: No space left on device
I ran across another thread which suggested the command "dd if=/sdcard/misc.img of=/dev/block/mtd0"... that produced this initially encouraging-looking output, though I don't know what it means and it didn't fix misc:
Code:
512+0 records in
512+0 records out
I also saw a few steps and suggestions relating to fastboot. I didn't try any of these since the only instructions I could find for setting up fastboot (in that stickied noob thread) requires a version 2 radio image, which I can't install because misc is fried.
So, in short, searching xda and the Internet in general hasn't helped much, except perhaps to better prepare me to follow somebody else's instructions . In reality I have gone through several different sets of instructions multiple times and tried a variety of other things, but it always comes back to not being able to complete a radio image installation because of that problem with misc.
I'm willing to try just about anything... and I know there are quite a few others out there with a misc problem who can't seem to make any progress or get any input, so hopefully my exhaustive description of how I got here and what I've tried already will be useful to one of the local experts.

I know that ECC refers to the error correction checksum used to detect memory errors... but I find it awfully suspicious that the two supposed ECC errors fall on the very first and last slots on the misc range -- particularly since everybody else with this problem who posts the results of attempts to troubleshoot it or fix it reports exactly the same thing.
In other words, I assume the error message is wrong. This is pretty much the only reason I don't just conclude that the memory is actually hosed and go shopping for a new phone.
Oh, and... bump.

You are certainly telling the truth about it being quite long. That fact does, unfortunately, make it somewhat difficult to read.
I assume that you've seen a few of ezterry's and/or my own posts about the partitions, which is probably where you saw the info on the misc partition.
In any case, the misc partition isn't a "filesystem" partition as you are familiar with. It is actually just a simple data structure. In fact, only the system, cache, and userdata partitions are actually filesystem partitions, and the cache partition is only a filesystem partition part of the time -- during radio and spl updates, it also is used as a simple data structure with a header field and a payload field. That, along with the misc partition, instructs the SPL to perform a radio or spl update.
Now there is a possibility that it may be possible to salvage the device without a working misc partition. Specifically, the requirement is that you get yourself a high-engineering SPL (one with the ability to fastboot a radio image -- note: it is FAST boot, not flashboot).
One important thing to note that might make things easier is that an error "finding" the misc partition *might not imply a failed misc partition*. It could possibly be a failed CACHE partition. Have you tried FORMATTING your cache partition?
In any case, you are no doubt really wondering about my statement that you might be able to update the SPL without the use of a misc partition.... Read THIS thread and you will see how the partition tables are defined and how they can be overridden. This suggests a way that you can actually DEFINE the SPL partition to the linux kernel, which in turn, should allow you to flash_image an SPL update. What you need to do is determine the starting offset and length of the SPL partition, and define it along with the rest of the partitions on the kernel command line. Once this is done, you should be able to fastboot flash a radio update to the device.
Note: Having just done an RC29 NBH file, there is PRECISELY ONE high-engineering SPL that you can install to the device safely.... 1.33.2003 (ending with a THREE -- very important, a 5 is a brick when combined with an rc29's radio).
Also note: I don't take any responsibility if you fry it completely trying this idiotic procedure without a jtag standing by. It is quite risky. I suggest it because it may be your best chance of getting through this.
Note: fastboot does NOT require a 2.x radio image. Fastboot requires an engineering SPL, which for the same reason, you can't install.
Now as for the location of the read/write errors.... you think that it is suspicious that they occur at the first and last slot of the memory range...
Well this is not unexpected since there are only two slots. Each of 128 kB. The first at 0 offset wrt the start, the second at 20000 offset wrt the start. The ECC error itself says that each of the two blocks has failed whatever operation it was trying to perform.
I suggest that your first step might be to try again writing the RC29 NBH file.

Thank you for the explanations and all the details.
I have actually reloaded RC29 quite a few times. I followed the directions from scratch a couple times in case I had gotten something wrong (of course, this was easy to do since I get stuck pretty early in the process).
I'll try formatting CACHE and I'll take a look at using the SPL you reference and report back later.
I really appreciate the assistance.

Ah, just realized that when you do "Wipe cache" from RA recovery, formatting cache is the second step. Since that is immediately followed by another "Can't read MISC" error message, I guess formatting doesn't fix my misc issue.
In this paragraph:
In any case, you are no doubt really wondering about my statement that you might be able to update the SPL without the use of a misc partition.... Read THIS thread and you will see how the partition tables are defined and how they can be overridden.
Click to expand...
Click to collapse
Your "THIS" didn't link to anything. I'll go search for what you're referring to, since this would appear to be my only remaining solution. No JTAG handy, but if someone of your experience thinks this is probably my last-ditch option, I don't have much to lose anyway, right? I'll take it slowly.
Edit: I think this is it? forum.xda-developers.com/showthread.php?t=704560 Pretty clever... crazy and dangerous, sure, but what the hell, it's just a phone, lol...
Again, thanks for taking the time to help out.

MV10 said:
Ah, just realized that when you do "Wipe cache" from RA recovery, formatting cache is the second step. Since that is immediately followed by another "Can't read MISC" error message, I guess formatting doesn't fix my misc issue.
In this paragraph:
Your "THIS" didn't link to anything. I'll go search for what you're referring to, since this would appear to be my only remaining solution. No JTAG handy, but if someone of your experience thinks this is probably my last-ditch option, I don't have much to lose anyway, right? I'll take it slowly.
Edit: I think this is it? forum.xda-developers.com/showthread.php?t=704560 Pretty clever... crazy and dangerous, sure, but what the hell, it's just a phone, lol...
Again, thanks for taking the time to help out.
Click to expand...
Click to collapse
Before re-writing partitions find a recovery with 'erase_image' (I hear tell clockwork has it) install and try:
erase_image misc
then
flash_image misc <misc.img>
where misc.img is an old nandroid backup from a phone of the same region as your own (least its preferable its the same region your CID is in the structure)
It may correct the issue... if not we can try to flash an engineering SPL via flash_image..
I feel this is very safe in theory (as we don't have to worry about boot mode 3.. thus if a valid SPL is flashed you won't completely brick).. However we have no safeguards at this point in time so be careful that you really understand what is going on.. else you will write garbage to the SPL, and there is no helping that w/o JTAG.
(btw.. the SPL .. even the full engineering ones like 1.33.2003 and 1.33.2005 wont actually let you erase misc.. but will let you flash it)

Thank you, I'll try it later today.
Not that it's relevant to getting me fixed, probably, but no idea how/why this problem crops up? Or is it more a case of an error that can have multiple causes? I found it interesting that so many people were reporting it across the various Android forums, and there seemed to be no attempt to explain it. That kind of thing always makes me curious, particularly in an environment like this -- a room full of curious "dig in and figure it out" personalities...

If it ever happened to me, I would certainly try to figure it out, however this is really difficult since it has never happened to me. I don't think that it is anywhere near as common as you think.
What I believe about the situation at the moment is that it is *probably* a failure somewhere else along the line that simply has this SIDE EFFECT.
ezterry: Do you remember which memory address ranges are written by an nbh file? I recall that the nbh file has divisions for the different partitions, so I suspect that it may not write *everything*. Maybe misc and/or cache are not written?
Note: I have seen plenty of instances of the cache partition getting borked and having weird side-effect. The problem with the cache partition and why IT gets into weird states is that it is a dual-purpose partition -- sometimes a yaffs2 filesystem, sometimes a simple data structure, so if it gets into the data structure mode and something tries to use it as a filesystem, you end up with some interesting side-effects.

lbcoder said:
ezterry: Do you remember which memory address ranges are written by an nbh file? I recall that the nbh file has divisions for the different partitions, so I suspect that it may not write *everything*. Maybe misc and/or cache are not written?
Click to expand...
Click to collapse
The nbh is just a custom archive the header has 3 arrays of 32bit indicating the following for each partition included
> Partition type (this determines the partition via some mapping to flash radio,hboot,misc,cache,recovery,boot,system,splash1,diag)
> Partition offset from start of the nbh file (signature removed if included)
> size of image
The diagnostic nbh only has the fake 'diag' image.. however most others in the wild seem to have radio, hboot, splash1, recovery, system, cache, userdata...
I don't think I've seen one with misc.
Certainly none of my current collection have it. I Wonder if they allow it?

Clockwork's "erase_image misc" returns an error:
mtd: erase failure at 0x00000000
I also tried wiping and formatting the cache again, on the off chance that maybe clockwork did something differently. Nothing new to report there.
As for this kernel partition approach, do I correctly understand that I would be telling the kernel to create a new partition name mapped to a range which precedes misc where the SPL is located? I assume I can derive the size from an img of the stock SPL of the same version. Any tips on how I can figure out where it starts? (Apologies if it's in that thread Ibcoder referenced, I haven't finished reading it yet.)
Or am I thinking about this completely wrong?

Search for my post with the kernel command line with hboot replacing userdata.. it deliberately is not step by step but has the info needed.

On a somewhat peripherally-related note, I see in this post in the De-bricking thread:
forum.xda-developers.com/showpost.php?p=7072492&postcount=195
Ibcoder writes: 3) This person goes to boot to the recovery by issuing a "reboot recovery", which sets the command field of the MISC partition to boot-recovery and reboots.
Earlier I had thought about asking whether "reboot recovery" writes to MISC, since I issued that command from the RA console yesterday and to my surprise it worked. I figured I must have misunderstood something and maybe reboot recovery used some mechanism other than writing to MISC, but now I've run across the comment above.
Wouldn't that boot mode flag be the same thing recovery should use to finish installing a radio image?
ezterry, is this the post you're referring to?
forum.xda-developers.com/showpost.php?p=7064255&postcount=187

MV10 said:
On a somewhat peripherally-related note, I see in this post in the De-bricking thread:
forum.xda-developers.com/showpost.php?p=7072492&postcount=195
Ibcoder writes: 3) This person goes to boot to the recovery by issuing a "reboot recovery", which sets the command field of the MISC partition to boot-recovery and reboots.
Earlier I had thought about asking whether "reboot recovery" writes to MISC, since I issued that command from the RA console yesterday and to my surprise it worked. I figured I must have misunderstood something and maybe reboot recovery used some mechanism other than writing to MISC, but now I've run across the comment above.
Wouldn't that boot mode flag be the same thing recovery should use to finish installing a radio image?
ezterry, is this the post you're referring to?
forum.xda-developers.com/showpost.php?p=7064255&postcount=187
Click to expand...
Click to collapse
Suggesting, of course, that the misc partition itself is actually quite fine, but whatever subsystems responsible for screwing up when it screws up for you are in some other way broken.... which is not inconsistent with the theories I have presented above. Specifically, I am still quite concerned about your cache partition being somehow defective since it is known for having weird side-effects.
What you may possibly be able to do is hack the reboot command into "reboot flash-hboot"... be ***absolutely certain*** that you get your cache partition set up correctly and fully verified before you do this though, otherwise you WILL need jtag to fix it.

Later I wondered whether reboot had options to specify the flashing modes. I take it from your response that it does not. Given my meager relevant knowledge, significant hand-holding would probably be required to pull that one off!

Another oddity I have noticed: my own G1 shows a device ID of HT91CGZ02056 (through something like "adb devices" for example)... but my wife's G1 (with the MISC issue, or whatever it is) just returns a string of zeros: 000000000000. First noticed that in the nandroid backup directory name.
Not sure if that tells anyone anything useful or interesting, but it sure seems weird.

MV10 said:
Another oddity I have noticed: my own G1 shows a device ID of HT91CGZ02056 (through something like "adb devices" for example)... but my wife's G1 (with the MISC issue, or whatever it is) just returns a string of zeros: 000000000000. First noticed that in the nandroid backup directory name.
Not sure if that tells anyone anything useful or interesting, but it sure seems weird.
Click to expand...
Click to collapse
It could mean that there is a serious defect.... or it could be the same glitch that is causing you problems with misc. Remember that the device ID is stored within the same chip as the misc partition, just at a non-writeable address.

Ha, interesting, I didn't know there was any sort of relationship there. Very interesting.
Well, at this point my wife is freaking out without a phone so I'm just buying her a Galaxy S (yeah I know, Samsung... but frickin' T-Mo doesn't have anything else particularly compelling).
I'm sort of interested in what's wrong with her G1 and I have an unhealthy urge to keep fiddling with it, but honestly I can't justify spending much more time on it right now, too many other things going on in my non-phone-based life.
That means I have a thoroughly unexciting RC29 G1. I assume OTA updates aren't likely to work either (assuming they're still sent out). If either you or ezterry would have any interest in this device (maybe some questions about what went wrong since you haven't seen a MISC failure?), shoot me a PM, I'll see about shipping it off to one of you.
Regardless, I can't express how much I appreciate both of your attempts to help a complete stranger, and I look forward to reading about all the other weird and interesting stuff you guys dig up in the future...

Related

Apps2SD greyed out....

Yeah, first thing the 'uber coders' will think is 'google it' or 'rtfm'. Well been all over and still can't get it to work. But I'll jump though the hoops and hopefully someone will point out where the missing information is. As much documentation that is out there for Android, there is much left to be desired and checked for clarity. So here it goes:
After having many issues with Clockwork Mod recovery, I finally got AmonRA installed and was able to install CM5.0.7 (8 would not install properly at all...too many broken thing like FCs on settings and such).
Things I have done to try to get Apps2SD working:
1/ Manually partitioned SD card
2/ Use Recovery option to partition the card (converted to EXT4 as per Cyanogen's suggestion)
3/ Tried following advice here: http://code.google.com/p/android-roms/wiki/A2SD
4/ Tried following advice here: http://forum.xda-developers.com/showthread.php?t=520582
- which leads to here: http://forum.xda-developers.com/showpost.php?p=3879988&postcount=41 (which seriously need to be re-written.you can't type adb push while already in adb shell....not recognized)
5/ Ubuntu's Disk Utility tells me the EXT4 partition is clean.
So where to go from here? Nothing seems to make any sort of impact on this phone.
...to the QnA section.....
have you enabled apps2sd?
Settings>Applications and tick the Apps2SD box
Moved as not development.
garok89 said:
...to the QnA section.....
Click to expand...
Click to collapse
Nope, looking now....so far I've got 3 tabs opened because of that....this process is seriously sad. Why are there so many ways (some more poorly written than others) to do the same damn thing that the ROM is supposed to do itself? Don't worry, I'll try yet again another set of instructions to get this to work. Geeze....wasn't this hard the last time I enabled it. Seriously, I do't know why I torture myself with this....
garok89 said:
have you enabled apps2sd?
Settings>Applications and tick the Apps2SD box
Click to expand...
Click to collapse
See, now that's just insulting. Although I will forgive you if you have some sort of mental deficiency and missed reading the subject of this thread.....but just in case, I'll return the favour. If "Apps2SD" is greyed out, that means I am at Settings/Applications and quite have the capability to select option on the phone by pressing/touching the screen. Guess what.....it stayed greyed out. This is why I have a new thread here with the 5 other things that I've read, quite exhaustively, to whit there have been no positive results.
So, following the directions outline here: http://forum.xda-developers.com/showthread.php?t=534714
NO freaking change. This is on a fresh ROM install of 5.0.7. Seriously, My card size in 8GB, like his, so I used almost his numbers, just a few bytes different, and nada.
Talk about a sad state.
Yes I repartitioned the card, yes I wiped the partitions (after reinstalling the first time and getting nothing but FCs, wiped each section available in the Amon RA recovery menu....three times each.)
So, let's try yet another method.....
I downloaded Apps2SD.apk. Installed it and ran it....guess what...it aid my card wasn't paritioned?!?! Umm....wft? Why the hell was CM NOT seeing the paritions? This card has been partitioned at least 20 times in the last month, in various methods. Yeah, this i good for it's lifespan....
So I went through it's partitioning process...guess what...still greyed out.
Opened the app again... "It looks like your SD cars isn't partitioned..."...are you kidding me?? (yes the app was granted Super User permissions when it ran....)
So....where do I find the part in CM that is broken and not allowing Apps2SD to work?
How is it that after wiping each item THREE TIMES in th recovery list, and a FRESH INSTALL that my background is still the same????
What is not being wiped?
with 2.1 theres an option for all your settings to be backed up to google. if your background is stored in the same folder on the fat32 partition of your sd card, when you load the new rom, your phone will set your background to what it was.
i know because i went from 5.07 with one background to jubeh's 2.2 with another background, needed gps, wiped EVERYTHING(data, system, ext partition etc.) in RAmon's recovery, flashed 5.08 and had my old background from 5.07 set, along with all my old apps downloading automatically...half hour later and my phone was done syncing and set up exactly how i like it, w/o me doing anythin.
that's how your background is still the same. =P
edit: looking at your signature..is your ext fs first on your sd card? i might be wrong but i think the fat32 needs to be first???
JadedTech said:
Nope, looking now....so far I've got 3 tabs opened because of that....this process is seriously sad. Why are there so many ways (some more poorly written than others) to do the same damn thing that the ROM is supposed to do itself? Don't worry, I'll try yet again another set of instructions to get this to work. Geeze....wasn't this hard the last time I enabled it. Seriously, I do't know why I torture myself with this....
See, now that's just insulting. Although I will forgive you if you have some sort of mental deficiency and missed reading the subject of this thread.....but just in case, I'll return the favour. If "Apps2SD" is greyed out, that means I am at Settings/Applications and quite have the capability to select option on the phone by pressing/touching the screen. Guess what.....it stayed greyed out. This is why I have a new thread here with the 5 other things that I've read, quite exhaustively, to whit there have been no positive results.
Click to expand...
Click to collapse
i was not attempting to be insulting, i run the cmupdater support and have received numerous "app2sd is greyed out" emails when in fact it was the "move to sd" that was greyed out, not the apps2sd toggle. so get down from your high horse and dont assume that you are better than anyone else. in my experience dealing with hundreds of support requests, i have found it is the person who asks the question, not the people who attempt to help, who are the problem.
"computers don't make mistakes, people using computers make mistakes" comes to mind...
although ubuntu is showing it as clean, choose the "repair SD.ext" option in the recovery...
and although it is unlikely to correct it, fix apk uid mismatches. apps2sd can be a funny thing which can work one day and not the other at times.....
i dont know why i am still trying to help you after pretty much calling me mentally retarded, but hey....
oh, and by "the qna section" i meant that you asked a question in the development area, ie. the wrong section
See, now that's just insulting. Although I will forgive you if you have some sort of mental deficiency and missed reading the subject of this thread.....but just in case, I'll return the favour. If "Apps2SD" is greyed out, that means I am at Settings/Applications and quite have the capability to select option on the phone by pressing/touching the screen. Guess what.....it stayed greyed out. This is why I have a new thread here with the 5 other things that I've read, quite exhaustively, to whit there have been no positive results.[/QUOTE]
you have to have a partition and it will not be greyed out
Either the poor behavior in this thread is going to stop or I'll close it. There is no need to be insulting in any way.
garok89 said:
i was not attempting to be insulting, i run the cmupdater support and have received numerous "app2sd is greyed out" emails when in fact it was the "move to sd" that was greyed out, not the apps2sd toggle. so get down from your high horse and dont assume that you are better than anyone else. in my experience dealing with hundreds of support requests, i have found it is the person who asks the question, not the people who attempt to help, who are the problem.
Click to expand...
Click to collapse
Ok, a few things to clear:
1/ This has truly been one of my frustrating experiences in all the tech I have ever played with (and that's pushing 30 years). Granted you would not know my experiences and my tenaciousness in following directions, despite them having me going off-the-beaten-path because something does not fit any proposed remedy.
What was insulting was the fact that you assumed that I wouldn't check the most basic thing when the ONLY indication that Apps2SD was not working was that tick being greyed out. But that would be because I didn't go into great detail about that. I was kinda hoping that was a given because without it being ticked, it obviously doesn't work.
So, since there was some bas assumptions made, allow me to be the first to apologize deeply and hopefully we can move forward.
garok89 said:
"computers don't make mistakes, people using computers make mistakes" comes to mind...
although ubuntu is showing it as clean, choose the "repair SD.ext" option in the recovery...
Click to expand...
Click to collapse
Did that, no change. Although I will add in that your quote applies just as well to programmers as it does the users
garok89 said:
and although it is unlikely to correct it, fix apk uid mismatches. apps2sd can be a funny thing which can work one day and not the other at times.....
Click to expand...
Click to collapse
Well, doesn't seem to work at all here.<shrug>
garok89 said:
i dont know why i am still trying to help you after pretty much calling me mentally retarded, but hey....
Click to expand...
Click to collapse
That would be because I think you recognized how frustrated I have been and in reality, I'm not really venting at you but at the lack of a solution, despite there being soo many ways to supposedly fix this issue. That would also be because you are most likely the kind of techie that hates to see things not work and will spend more time trying to fix it rather than give in and simply 'reinstall' because you want to know the reason why it happened in the first place. Maybe I'm wrong there, maybe I'm not. I'm am seriously glad that you are taking your time because not a single other person has.
garok89 said:
oh, and by "the qna section" i meant that you asked a question in the development area, ie. the wrong section
Click to expand...
Click to collapse
Yeah, I forgot to apologize to the mod for that. Sorry Mod....
So, have any other ideas how to fix this? I am rather loathe to just try to 'update in hopes that it automagically fixes the issue' approach.
tdt1345 said:
you have to have a partition and it will not be greyed out
Click to expand...
Click to collapse
You might want to read my first post again.....
"Things I have done to try to get Apps2SD working:
1/ Manually partitioned SD card"
jamesd86 said:
with 2.1 theres an option for all your settings to be backed up to google. if your background is stored in the same folder on the fat32 partition of your sd card, when you load the new rom, your phone will set your background to what it was.
i know because i went from 5.07 with one background to jubeh's 2.2 with another background, needed gps, wiped EVERYTHING(data, system, ext partition etc.) in RAmon's recovery, flashed 5.08 and had my old background from 5.07 set, along with all my old apps downloading automatically...half hour later and my phone was done syncing and set up exactly how i like it, w/o me doing anythin.
that's how your background is still the same. =P
edit: looking at your signature..is your ext fs first on your sd card? i might be wrong but i think the fat32 needs to be first???
Click to expand...
Click to collapse
Yeah...I realized this after I left the house and was getting into the car. Just too frustrated when I posted. It was one of those 'don't drink and drive' but more of a 'don't vent and post' type of deals....well, at least not here. Thanks any ways.
have you tried ext2 before upgrading to ext4?
ext4 didnt like my spare g1 too much....but my main one got along fine with it
JadedTech said:
1/ Manually partitioned SD card"
Click to expand...
Click to collapse
Is the partition system ids correct:
Code:
# fdisk /dev/block/mmcblk0
Command (m for help): p
Disk /dev/block/mmcblk0: 8166 MB, 8166309888 bytes
252 heads, 62 sectors/track, 1020 cylinders
Units = cylinders of 15624 * 512 = 7999488 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 952 7436993 b Win95 FAT32
/dev/block/mmcblk0p2 953 1020 531216 83 Linux
Command (m for help):
The 'b' for the vfat partition and '83' for ext
The startup scripts use there values for some autodetection in cm5.
If all you change is the Id data wont be lost but you are at fault if you don't backup.
garok89 said:
have you tried ext2 before upgrading to ext4?
ext4 didnt like my spare g1 too much....but my main one got along fine with it
Click to expand...
Click to collapse
That is a very interesting observation as I have been automatically upgradeding to EXT4 (as I did read that is what Cyanogen uses...figured if it was good enough for him....) so I just reformatted my SD card from the Recovery partition into EXT2 with a 32MBswap and the rest in FAT32. No change. Damn....seemed like one of those 'simple and yet not obvious' type of answers that may have worked too...
ezterry said:
Is the partition system ids correct:
Code:
# fdisk /dev/block/mmcblk0
Command (m for help): p
Disk /dev/block/mmcblk0: 8166 MB, 8166309888 bytes
252 heads, 62 sectors/track, 1020 cylinders
Units = cylinders of 15624 * 512 = 7999488 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 1 952 7436993 b Win95 FAT32
/dev/block/mmcblk0p2 953 1020 531216 83 Linux
Command (m for help):
The 'b' for the vfat partition and '83' for ext
The startup scripts use there values for some autodetection in cm5.
If all you change is the Id data wont be lost but you are at fault if you don't backup.
Click to expand...
Click to collapse
Now this produced something interesting.
Code:
# fdisk /dev/block/mmcblk0
The number of cylinders for this disk is set to 243328.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):
#
So, how does one go about fixing this if this is the reason that "in certain setups cause problems"? This seems to be a likely candidate for the root of the issue.
Redo partitions in Fdisk?
instead of doing it from recovery
do it from ubuntu via gparted
Sorry for jumping in here but... A while back Dusty wrote a great tut for doing this correctly. Did you follow his thread instructions? If not, take a look. It may have the key to your happiness.
http://forum.xda-developers.com/showthread.php?t=534714&highlight=51dusty
JadedTech said:
So, how does one go about fixing this if this is the reason that "in certain setups cause problems"? This seems to be a likely candidate for the root of the issue.
Redo partitions in Fdisk?
Click to expand...
Click to collapse
The size warning only applies to the short falls of BIOS booting x86 PCs. We don't boot the dream from the sdcard or is the phone booted with a x86 BIOS...
If it was you need to ensure the boot partition is near to the beginning of the disk.. you can safely ignore it

Unmodded restore problems!!!Write protected? Also some Valuable Information

I recently aquired a Streak 7 and am having trouble resetting it since it has all the original owners info on it.
1. I encountered a force close error upon first boot.
- android.process.acore stopped unexpectedly
2. After this error continued to appear I said F*** this and rebooted into the Stock Dell recovery(Volume + and Power)
I chose option 3 for a factory reset and erase internal tablet storage.
Rebooted and Bam same bull**** errors. I did this 3 more times powering off with the pin hole off button after the streak kept booting with this error.
I read this entire forum development and general questions to see what problems others are having, I came across a few threads all very informative on how to attempt to restore your Streak 7.
Before attempting the various methods of either NVFlash, the fastboot method and even flashing clockwork recovery through fastboot I figured I would see what I could get the Streak to do in it's current state.
*Note* I am very familiar with ADB and Fastboot but if I over looked something I will not be offended if anyone can provide some useful information.
OK, Here is my story
I put the streak on my HDMI dock and was able to succefully install the ADB drivers on Windows 7 x64. From there I launched the ADB Shell
c:/androidsdk/tools> adb shell
$
once in the shell i found I could launch the android setting using this command
$ am start -a android.intent.action.MAIN -n com.android.settings/.Settings
Once in the settings and periodically hitting forceclose and quit to the .acore error I was able to retrieve this information
Android Version
2.2
Baseband Version
11.809.05.02.00
Kernel version
2.6.32.9
OEM Version
GLUNB1A132433
Build Number
14394
I also realized that I can install apps through adb so I went and installed the latest standalone ADW Launcher which installs fine and allows me to actually use the device a little.
c:\androidsdk\tools>adb install launcher.apk
1307 KB/s (2533717 bytes in 1.892s)
pkg: /data/local/tmp/launcher.apk
Success
You will notice that apps install to this location
/data/local/TMP
it turns out that even installing the new launcher won't allow me to do much because the previose owner changed his google password so I have no market acces or anything like that.
I then tried doing the factory reset within the Android settings>privacy>factory data reset.
The device reboots and I again encounter the same error and the device has also not reset the user data.
So i rooted the device and found that even root was only temporary, the ADB shell returns the # sign indicating that it has root, great but when the device is rebooted it returns to the condition I got it in.
If I run ADB remount with root I get this
c:\androidsdk\tools>adb remount
remount failed: Operation not permitted
c:\androidsdk\tools>
this tells me that even though the phone has root it will not mount any file system with read/write permissions
I then installed the latest free Clockwork Rom Manger via ADB
it prompts me for root permissions I select allow and then the app closes after it downloads and tries to write the clockwork recovery image. I said fine this won't work.
I moved on to the Flashing Clockwork Recovery via Fastboot
In Fastboot I get this
c:\androidsdk\tools>fastboot devices
? fastboot
c:\androidsdk\tools>fastboot -i 0x413C flash recovery clockwork.img
sending 'recovery' (4416 KB)...
OKAY [ 0.560s]
writing 'recovery'...
OKAY [ 0.110s]
finished. total time: 0.670s
c:\androidsdk\tools>
WOW I didn't know that 4MB could be sent and flashed over usb in under a second!!!! WTF!!!!!
So obviously there is something going on here where I cannot write to the internal memory...
I decided to just use NVFlash because people seem to be having luck with it
http://forum.xda-developers.com/showthread.php?t=1018809
I Didn't.......
I spent a hell of a lot of time downloading and redownloading the different images and finally got them all downloaded successfully. I run the restore.bat file and it says everything went fine but it didn't, I tried NVFlash with and without P14.img and it just doesn't seem to do anything it always restores it to how it was when i got it errors and all.
Now for the best method I tried, the fastboot method by flashing boot_orig.img, recovery_orig.img and system_orig.img
http://forum.xda-developers.com/showthread.php?t=1011654
Flash_image is not and ADB Shell command
and I also don't beleive the images are writing to the disc that fast.
I'm tired of typing now so please if anyone has any info on how I can write information to the internal ROM memory not the internal sd card I would greatly appreciate it.
Tom
wikedbubble said:
I recently aquired a Streak 7 and am having trouble resetting it since it has all the original owners info on it.
1. I encountered a force close error upon first boot.
- android.process.acore stopped unexpectedly
2. After this error continued to appear I said F*** this and rebooted into the Stock Dell recovery(Volume + and Power)
I chose option 3 for a factory reset and erase internal tablet storage.
Rebooted and Bam same bull**** errors. I did this 3 more times powering off with the pin hole off button after the streak kept booting with this error.
I read this entire forum development and general questions to see what problems others are having, I came across a few threads all very informative on how to attempt to restore your Streak 7.
Before attempting the various methods of either NVFlash, the fastboot method and even flashing clockwork recovery through fastboot I figured I would see what I could get the Streak to do in it's current state.
*Note* I am very familiar with ADB and Fastboot but if I over looked something I will not be offended if anyone can provide some useful information.
OK, Here is my story
I put the streak on my HDMI dock and was able to succefully install the ADB drivers on Windows 7 x64. From there I launched the ADB Shell
c:/androidsdk/tools> adb shell
$
once in the shell i found I could launch the android setting using this command
$ am start -a android.intent.action.MAIN -n com.android.settings/.Settings
Once in the settings and periodically hitting forceclose and quit to the .acore error I was able to retrieve this information
Android Version
2.2
Baseband Version
11.809.05.02.00
Kernel version
2.6.32.9
OEM Version
GLUNB1A132433
Build Number
14394
I also realized that I can install apps through adb so I went and installed the latest standalone ADW Launcher which installs fine and allows me to actually use the device a little.
c:\androidsdk\tools>adb install launcher.apk
1307 KB/s (2533717 bytes in 1.892s)
pkg: /data/local/tmp/launcher.apk
Success
You will notice that apps install to this location
/data/local/TMP
it turns out that even installing the new launcher won't allow me to do much because the previose owner changed his google password so I have no market acces or anything like that.
I then tried doing the factory reset within the Android settings>privacy>factory data reset.
The device reboots and I again encounter the same error and the device has also not reset the user data.
So i rooted the device and found that even root was only temporary, the ADB shell returns the # sign indicating that it has root, great but when the device is rebooted it returns to the condition I got it in.
If I run ADB remount with root I get this
c:\androidsdk\tools>adb remount
remount failed: Operation not permitted
c:\androidsdk\tools>
this tells me that even though the phone has root it will not mount any file system with read/write permissions
I then installed the latest free Clockwork Rom Manger via ADB
it prompts me for root permissions I select allow and then the app closes after it downloads and tries to write the clockwork recovery image. I said fine this won't work.
I moved on to the Flashing Clockwork Recovery via Fastboot
In Fastboot I get this
c:\androidsdk\tools>fastboot devices
? fastboot
c:\androidsdk\tools>fastboot -i 0x413C flash recovery clockwork.img
sending 'recovery' (4416 KB)...
OKAY [ 0.560s]
writing 'recovery'...
OKAY [ 0.110s]
finished. total time: 0.670s
c:\androidsdk\tools>
WOW I didn't know that 4MB could be sent and flashed over usb in under a second!!!! WTF!!!!!
So obviously there is something going on here where I cannot write to the internal memory...
I decided to just use NVFlash because people seem to be having luck with it
http://forum.xda-developers.com/showthread.php?t=1018809
I Didn't.......
I spent a hell of a lot of time downloading and redownloading the different images and finally got them all downloaded successfully. I run the restore.bat file and it says everything went fine but it didn't, I tried NVFlash with and without P14.img and it just doesn't seem to do anything it always restores it to how it was when i got it errors and all.
Now for the best method I tried, the fastboot method by flashing boot_orig.img, recovery_orig.img and system_orig.img
http://forum.xda-developers.com/showthread.php?t=1011654
Flash_image is not and ADB Shell command
and I also don't beleive the images are writing to the disc that fast.
I'm tired of typing now so please if anyone has any info on how I can write information to the internal ROM memory not the internal sd card I would greatly appreciate it.
Tom
Click to expand...
Click to collapse
Bump for a resolution. A lot of folks seem to be encountering this issue; I think it has something to do with a Linux failsafe measure (from another thread), but I'm not savvy enough in Linux to know for sure. Good luck to you!
Hey Thanks for the Bump, I am tearing my hair out over thins thing.
On another note I found this post for the LG GX2 for flashing clockwork recovery through APX with NVFLASH
http://www.techofweb.com/technology/flashing-cwm-recovery-g2x.html
I hope there might be a way to do this on the Streak, but I don't know that much about NVFlash. My hope in getting the clockwork recovery is that the restore and recovery tools used in clockwork recovery will in theory allow me to format and write roms to the internal memory...... I hope
Anyway I hope someone is reading and understanding my trouble other than Z4nd4r
Tom
I've been having similar problems with my streak7. It was working fine on stock 2.2.2 then got stuck in boot loop at the "stick together" screen.
I tried to factory reset in recovery. No change.
I tried to restore with nvflash. It completed fine, but no change.
http://forum.xda-developers.com/showthread.php?t=1018809
I tried with fastboot (boot.img, restore.img and system.img). It completed fine, no change.
I tried the 2.2.2 update.pkg in recovery, but it stops at "install modem error", no change.
I tried to flash DJ_Steve's honeycomb, and it stops at:
Formatting partition 2 BCT please wait... FAILED!
command failure: create failed (bad data)
bootloader status: partition table is required for this command (code: 8) message: nverror:0x2 (0x2) flags: 0
I tried formatting all partitions with:
nvflash --bl bootloader.bin --format_all
then restore with nvflash
It completes with no errors, but still no change.
I also tried to get clockwork on the streak 7 with fastboot. Even though I didn't get any errors, clockwork recovery did not get installed. So I'm thinking it's some sort of write protect error, since nothing I write to the device seems to be sticking.
If I format all partitions, would the streak 7 even get to the t-mobile "stick together" logo? I would think it would get stuck at the dell logo. I'm stuck at this point and have no idea what to try next. Any suggestions?
Could the problem be due to previous owner(s) trying to root the DS7 and Dell had implemented some kind of security measure to prevent rooting of the DS7?
Bump for a real solution.
I found a solution and my solution was to sell it before I threw it against a wall.
What's the common denominator, here? Were these all purchased used/3rd party?
Mine was bought new and ran great till mothers day and my sis asked to use it to post pics to facebook so I unmounted my sd and gave it to her she poped in her 32 gig sd card and got tired of waiting for the the gallery to populate and ejected the card without unmounting it and handed it back to me and said it was junk an and slow .......ever since its been stuck in read only
Ive dissasymbled it formated it flashed it factory reset it and reguardless of what I do still comes back the same as though I hadnt touched it.......even tried to short the nand chip out to clear it..........its like a cockroarch thats wounded .....it just wont finish dieing
I think we need a jtag solution. Doesn't seem like anything done with current tools will help.
I've scoured the internet and turned up nothing.
My streak 7 is collecting dust and probably going on eBay soon. To hell with Dell. This is my first Dell android device and probably my last.
Edit: found information
So I found the datasheet for the NAND chip the Streak 7 uses (http://omapworld.com/iNAND_e_MMC_4_41_IF_data_sheet_v1_0[1].pdf). Aparently the NAND has a write protect feature (temporary and permanent). Tech5 from this thread http://forum.xda-developers.com/showthread.php?t=1113264 says there's a failsafe function that locks the NAND in write protect mode. I don't have the hardware expertise to dig down and see if the system is write protecting the system by locking the chip in write protect mode. If we can somehow figure out how to disable the write protect on the chip, we may have a solution. Maybe someone with good hardware knowledge can take a look and give some feedback?
I'm having this same issue over here. I've tried NVFLASH and Fastboot and it acts like it's happening and then you reboot and get back to the same image every time. Maybe time for a call to Dell on this?
Call Dell
It looks like these Streaks are all stock and having the same problem. I tried calling dell but they wouldn't help me because the streak I got doesn't have the flap for the sd card and that is where they say the Service Tag is written. Freaking BullSh!t. Anyway if someone is willing to call dell and see what they have to say that would be awesome.
Dell is the only solution?
I had a same problem too. No matter what I do, the unit reverts back. It became Read-Only Mode. I guess it happens often enough DELL aware of this problem and the tech supports knows what to do. Only way to fix the unit at this point is ship it back.
I shipped back to Dell and Dell repaired it. Turn Around time: 1 Week.
This is my 1st post.
I do have Streak 5 and 7. I love Streak 5 and DJ Steve's ROM Rocks in Streak 5.
wikedbubble said:
It looks like these Streaks are all stock and having the same problem. I tried calling dell but they wouldn't help me because the streak I got doesn't have the flap for the sd card and that is where they say the Service Tag is written. Freaking BullSh!t. Anyway if someone is willing to call dell and see what they have to say that would be awesome.
Click to expand...
Click to collapse
Settings > About > Status > Service Tag at the bottom.
I'm on the phone with Dell right now about this as I can't find another solution and another user had to get theirs repaired. We'll see what they say.
Solution to write protect?
I was trying to copy some music to mine and got the write protect error message. I took out the micro SD card holder and it indeed was locked. Flipped the switch and back in business! Hope this helps someone!
I wonder if it is newer streaks that are doing this, because I think mine was in stock with Tmobile for a while. They had plenty of them there. They must be "Locking the bootloader" so to speak. If anyone wants to send one to a Dev maybe they can do something about it.
any luck with this any 1? =(
I had a similar issue last week, it looks to be the "Read-Only" Bug. I had to send mine back to Dell, and they just sent me a new unit.
Whatever you do, make sure your DS7 does NOT hit 0% battery, it seems to be the cause of this "Ready-Only" bug.

[HOW-TO/INFO] Bell FAQ [9-25-2011]

This is my attempt at a Bell FAQ, it is a work in progress.
Q. Why don't the instructions I found on how to do X not work?A. This is a development forum, sometimes things are written in shorthand assuming you know things you don't. At lot of things are specific to one carrier's phone or another. Sometimes things change and are now obsolete, something new was found, a better way of doing things, if you were not following it all along you are likely to be lost. Read between the lines, you are a human being with reasoning abilities, figure it out. ​Q. What should I do first?
A. Backup your phone. That means everything, especially your pds partition. Nandroid won't cut it and you have already modified your phone beyond the ability to get back if you can run it.
Ex. dd if=/dev/block/mmcblk0p3 of=/sdcard/backup/mmcblk0p3
Save your backup on your computer, create a zip of all the files, burn it off on cd/dvd, put it in a safety deposit box at your bank. Be prepared for bricking your phone. A lot of things mentioned in threads here are developed and tested for ATT phones, they may not work 100% on your phone.​Q. What is ADB?A. It stands for Android Debug Bridge or something like that. It is a program that runs on your computer that lets you talk to your phone using special commands. Your phone has to have adb enabled, it's a setting under application/development.
Ex. adb shell
This opens a linux shell connected to your phone. Linux is an operating system for computers, it is also used as the base for android phones.
Ex. adb install file.apk
Ex. adb push file /tmp
Ex. adb pull /tmp/file .​
Q. What is CWM recovery?A. Android phones come with a special boot configuration that allows for changes to the android system from a place outside the system. It is very corporate and does the job for official signed updates, but only Motorola and it's oems can sign the updates. Not much fun for us. CWM recovery is a replacement for the official recovery system that doesn't require signed updates.
You install CWM recovery using fastboot or moto-fastboot.​Q. What is unlocking the bootloader all about?A. It is the means of putting CWM recovery on your phone so you can install roms and other packages. It allows you to flash a partition with mods and have the phone not soft brick when you reboot. When the unlocked versions of the atrix bootloader were found it started a new round of mods. A lot of the threads prior to that are now obsolete.​Q. How do I unlock the bootloader?A. There is a huge thread already about this, see here.
WARNING: this is a permanent change to your phone.
Summary:
1. Download the archive
2. Extract the sbf inside, whatever it's called, that is the one to use.
3. Use linux sbf_flash or rsdlite from windows to install it.
3. fastboot oem unlock
4. Copy code fastboot spits out.
5. fastboot oem unlock code
6. fastboot reboot
You will see unlocked while booting and when you get into android you will have ~300MB of ram. This will need to be fixed. Also, you will lose all your data during the process, do a backup first.​Q. What is fastboot/moto-fastboot?A. It's a program to access the phone and do stuff, write phone partition images mostly. The stock one can only handle tiny system images, pretty useless for the Atrix, xda member eval- compiled the motorola version for us that can handle larger system images, do a search for moto-fastboot.
Ex. moto-fastboot flash recovery recovery.img.​Q. How do I fix the ram problem?A. I did up a CWM recovery zip to update the boot and recovery partitions to contain a kernel command line with the missing bit "[email protected]" added. See here.
There are other means of doing this, some boot images come prepackaged with the command line already embedded. There are ATT compiled kernels with a patch inside the kernel itself to do the same thing. You can search for those when you are ready to try things like custom ATT kernels on your phone.​Q. How do I root the phone?A. If you are unlocked and you have fastboot flashed a version of CWM recovery, it is trivial. By that I mean almost impossible for newbies to figure out.
It would go something like this:
1. Boot into CWM recovery.
2. use adb shell
3. adb push a su binary to the phone.
4. mount system as read write as /system
5. copy su binary to /system/bin
6. make sure it has the right permissions, 06755 mode , user root, group root.
7. unmount -l /system
8. when in android look on the market for Superuser.apk, install.
Every rooting method out there is all about putting su into /system/bin with 06755 permissions, most don't work anymore since Gingerbread. If you are looking for a simple, no brain involved solution, you are likely to get something working and also something else you didn't want like a replaced preinstall partition or an installed busybox with different functionality for some important system commands. (Busybox may be more up to date even, but if it doesn't do what is expected of the older version, it's still not good.)
Another way would be to create a CWM zip that simply puts the linux su binary in system with the correct permissions. Some info about creating your own can be found here. Doing this is more involved that just doing it manually, but it would be a good practice for getting into creating CWM updates.
Here is a link to a exploit someone did up to root the phone when running GB. Haven't tested it, and with an unlocked phone it is totally redundant, but it's nice that some found yet another security hole in the OS, seems similar in result to psneuter, so be sure to reboot the phone to fix the exploited system.
Seriously, if you are going to be reading or posting in the development section of xda for an android phone, take the 5 minutes to become familiar with adb and a few linux shell commands, it will save you hours of confusion and aggravation. If you fly blind trying things on your phone without understanding what you are doing you are eventually going to get into a place you can't get out of and need a new phone or REALLY have to struggle to understand things. You were warned. ​Q. How do I get back to stock?
A. You can't unless you have a backup of all your phone partitions and can update your radio and bootloader to be stock. Once you unlock your phone, it is recorded that you did so by blowing a physical fuse on the phone. This cannot be restored, you will need a new phone.
What does stock mean to you? When I bought my phone it had a certain radio, the bootloader couldn't be unlocked, the android system files had certain versions, etc. Beyond the android system there are 18 partitions that I know of on the phone, most phones do with 5-6. Every ota update or sbf files take the normal files and change them to something else, non android partitions get modified or replaced.
I have some solutions for getting close to stock, do a search for Gobstopper. There is one for Bell 2.2.2 and Bell 2.3.4, use one or the other. These attempt a full back to stock operation, that means the radio and bootloader will be stock, recovery will be stock as well. (All the partitions that are on the phone are written over with the ones that were on my phone when I bought it, with the exception of partitions 3 (pds), 15 (cache), 16 (data), and 18 (userdata or internal memory), factory reset clears cache and data, you don't want pds touched or internal memory.) Unlocked will no longer be displayed when you boot and you will no longer have CWM recovery installed. You will need to install the unlocked bootloader again and fastboot flash recovery again if stock is not what you wanted. (Your pds partition is not involved in this operation, so if you made changes to it, either directly or indirectly via a sbf this will not restore it, your pds partition contains individual phone information.)
More about sbf format here.​Q. What does the pds partition taste like?A. It's not really fit to eat. Now you know.
It is mmcblk0p3, a partition on your phone, it is mounted as /pds when android boots and contains a bunch of folders and files that nobody really understands fully but Motorola. Having a look at some of the files you will see things like your network physical address, bluetooth physical address. You will find threads where the display is all arsed up, cpu running at half speed, touch screen not working right, etc, all due to something going wrong with /pds. It is best to back it up and not mess with it. Restore it in an emergency. Maybe one day everything in there will be figured out, take a stab at it yourself.
See this thread by edgan for how to back up your pds partition.
See this thread by KeRmiT80 about attempting to fix your pds partition. Good motivation to see previous link.
​Q. I lost network data access after flashing X.
A. Check your APN list, if it's not a Bell firmware you are using, it probably doesn't have Bell's APN list. Scratch that, you don't know what that is or how to check it.
It stands for Access Point Name and a big list of them is stored on your phone in one big file (/system/etc/apns-conf.xml), each firmware has it's own version of it. Your phone will get two numbers from your carrier's phone network to do a look up in this list to figure out what configuration to use. So say it gets mcc 302, mcn 610, it will check the phone and look up 302, 610 in the file and read what it says there and use that config to try to connect. Now, another thing is that the phone knows what the home network is by these two numbers, embedded somewhere in the system. A foreign, non Bell carrier won't have Bell's numbers in there so your phone will think it's roaming. If you have roaming disabled, guess what, no data connection. Your carrier should be smart enough not to charge you for roaming, never had a problem with that, but you never know.
Here are the apn settings you can enter manually for your phone, see Bell's support link.
​Q. How do I get webtop over HDMI to work?
A. There are several threads on getting this to work on ATT phones and others, they are specific to the firmware being run on the phone. They involve copying two deodexed files to your system/app folder and replacing the ones already there. You will also need to clear your dalvik cache to get the new code recognized. They are DockService.apk and PortalApp.apk. If you are not deodexed then you also have to remove the .odex files for both.
Here is one thread for Gingerbread, in the zip there is one for ORFR that will get you to viewing the webtop on Bell GB, but applications don't load.
Here is another thread for Froyo that works, see the Bell specific bit in the OP. This does not work from Bell Gingerbread.​ To be continued...
Hoping the Mods sticky this
A link should be attached to the wiki as well. I will try to when I get home if it isn't done already.
shouldn't this be in general? or q&a?
Magnetox said:
shouldn't this be in general? or q&a?
Click to expand...
Click to collapse
Probably both. Most things referenced are in development.
Cheers!
Sent from my MB860 using xda premium
y2whisper said:
Hoping the Mods sticky this
A link should be attached to the wiki as well. I will try to when I get home if it isn't done already.
Click to expand...
Click to collapse
+1 this should be a sticky on either or both general or development...
cheers for this...this thread is going to help me with my youtube viewers BIG TIME!!
Very nice!
Keep it up NFHimself!
NFHimself said:
This is my attempt at a Bell FAQ, it is a work in progress.
Q. How do I root the phone?A. If you are unlocked and you have fastboot flashed a version of CWM recovery, it is trivial. By that I mean almost impossible for newbies to figure out.
It would go something like this:
1. Boot into CWM recovery.
2. use adb shell
3. adb push a su binary to the phone.
4. mount system as read write as /system
5. copy su binary to /system/bin
6. make sure it has the right permissions, 06755 mode , user root, group root.
7. unmount -l /system
8. when in android look on the market for Superuser.apk, install.
Every rooting method out there is all about putting su into /system/bin with 06755 permissions, most don't work anymore since Gingerbread. If you are looking for a simple, no brain involved solution, you are likely to get something working and also something else you didn't want like a replaced preinstall partition or an installed busybox with different functionality for some important system commands. (Busybox may be more up to date even, but if it doesn't do what is expected of the older version, it's still not good.)​ To be continued...
Click to expand...
Click to collapse
I used this method to root the stock Bell Gingerbread ROM. Works on an Atrix too. It's a quick download and easy for those people who may not be comfortable with the adb command line.
http://www.psouza4.com/Bionic/
thx
useful for newbies
but can you put some more details about returning to stock and explain the pds partition in details plz?
papakilo10 said:
I used this method to root the stock Bell Gingerbread ROM. Works on an Atrix too. It's a quick download and easy for those people who may not be comfortable with the adb command line.
http://www.psouza4.com/Bionic/
Click to expand...
Click to collapse
Had a look at the script in that one, should be fine, doesn't install a busybox or anything like that. I don't care for Superuser.apk in /system/app myself, but it won't harm anything having it there.
Cheers!
ytwytw said:
thx
useful for newbies
but can you put some more details about returning to stock and explain the pds partition in details plz?
Click to expand...
Click to collapse
I added a few things, anything in particular you wanted?
I am trying to avoid step by step tutorials or spoon feeding everything, so people who are lazy/careless will have to attempt to think for themselves. It just leads to more questions, more laziness, and bricked phones, and I don't have the time these days.
Cheers!

OMAP4430 boot.rom dump

My purpose is to locate the fastboot system, and I thought that I would start from, well, the start. Boot-up on the OMAP4430 tries many places, one is an on-chip 48kb ROM. I initially tried to read /dev/mem, but no matter what address I tried to read it would say Bad Address, so I had to make a kernel module, in which I dumped the boot ROM to a file... and it worked.
The reversion of the ROM on my bionic is 0x03 0x19
(Please read Ch 27(.4.2.1) of OMAP4430_ES2.x_PUBLIC_TRM_vY.zip )
I am more handy with ia32 assembly, not arm...
So where is fastboot? I can see a few other addresses, but if I try to map some of them, the device will reboot.. The TRM spoke of 0x08000000 for a fast boot XIP but a reboot occurs (I think) ... any ideas where to look next?
After a day of digging around, I was able to find that "fastboot"(0x08000000) address at 0x28C18 (0x28000 is the base address of the boot.rom) ... just helping out anyone else interested in looking into this. I somehow don't think that this is what I am looking for though... but atleast I do know that I am making some headway
Edit: Confirm that I am unable to read even one byte from 0x08000000 .. reboots
Edit2: Polling from the Control Register (0x4A0022C4) returned 0x00000AEF ... which means that
1) This is not a GP(General Purpose) OMAP4430
2) SYS_BOOT[5:0] is b101111 which tells us
a) to use Memory, not Peripheral boot devices
b) 1st boot device is MMC2(1)(perm) (eMMC/eSD = GPMC pins)
c) 2nd= USB-ULPI (external transceiver)
... Does the MMC mean it boots from the onboard 16gb? If so, then this might be easier to trace through than I thought...
Has anyone dumped the entire contents of that memory? or just the known partitions?
Edit3: Reading the TRM more (pg 5240) tells me that SDMMC2 only Raw mode is supported, no file system (FAT12/FAT16/FAT32) support because the purpose of this approach is to avoid the boot time penalty of searching for a file system hierarchy when it is not always necessary.
Edit4: ...and Sure enough, dumping the first 512 bytes of /dev/block/mmcblk1 shows the Bootable signature (0x55AA) at the end (0x01FE)
... I thought I read that it would just try to read in RAW mode, which makes it not want to even have such a thing, but I knew it had all those other partitions, so I figured I might have been wrong there...
A proper dump of this soon enough.. atleast I gave you guys the boot.rom from the actual OMAP4430 that would have been otherwise hard to retreive... I only wasted one day on this, not bad and I learned some ARM ASM
Edit5: Maybe I am getting ahead of myself, it is of type 0x83 ... which is Linux, not any of the FAT FS which the boot.rom supports... ?
Edit6: Well, it has the file it's looking for, not sure if it's a FAT system like it's suppose to be though, and it looks like in a 1MB dump that fastboot is in the 2nd or maybe more, partition... I still want to try to dump this "MLO" bootup file... but i have to learn about FAT fs structure, ugh...
The implications of deep hardware hacking like this make me very excited for what could be possible with the Bionic. It contains some absolutely absurd hardware for a mobile device so the sky's the limit at this point. Fantastic work! I could only dream of being able to comprehend the things that guys like you can.
Also I wonder if this thread would end up getting proper attention in the dev section.
projektorboy said:
The implications of deep hardware hacking like this make me very excited for what could be possible with the Bionic. It contains some absolutely absurd hardware for a mobile device so the sky's the limit at this point. Fantastic work! I could only dream of being able to comprehend the things that guys like you can.
Also I wonder if this thread would end up getting proper attention in the dev section.
Click to expand...
Click to collapse
I only wish I could comprehend what he is talking about. I'm glad to see a vested interest is being taken!
Sent from my DROID BIONIC
Thanks so much, Noxz for making the effort to do this!
hey, thanks finally for the responses, a full day after the initial dump and no responses... I think because it's NOT in the dev section... but I can't post a thread there until I have 10 posts... maybe I can get that privilege now, moderators?
The bad part with disassembling is that when it computes an jump in code(in ARM it's called a branch) and doesn't give a specific address, it makes finding that code very hard.. I found the text "MLO", the bootable file, in the boot.rom but nothing of the code I know referenced it yet, unfortunate because that partition is not a standard FAT fs and thus is taking a while to read, but if I did have the disassemble of the ROM code where it looks for that, or even just the file search, then I could easily see what it is reading...
Obviously knowing that fastboot and such is in the second or third partition is quite a step forward, but I need to dump this MLO file so we can read from start to finish...
I'll keep everyone posted
So this partition isn't a correct FAT fs... I don't know if being identified as a Linux partition means anything and I'm just not reading into it right, but I am having some time trying to look into these files, you can easily see the MLO file, a KEYS file, and a PRIMAPP file right at the start, or I should say the file name, but there isn't much information on where they are mapped, etc etc...
Maybe partition2 will be better? It's also identified as a Linux partition
I still have a few days to waste...
Sorry to ask dumb. But what exactly does this benefit me when flashing it?
Sent from my DROID BIONIC using Tapatalk
The current fastboot does not have several commands that is in the original source... but really, I am just interested in the entire boot procedure.. there's a few things I might like to change... The good news is because everything but the boot.rom resides on the eSD, that means we should be able to write to it very easily, so we can change quite a bit
Noxz, I am along with these guys in I would understand more if I was just dropped in the middle of Ghana :\ but I would like you to know that you have given me my 1024th item on my 'to research' list. So once I get bored with what I'm doing now, I am going to try to learn a little bit about ARM and OMAP
Hah, I understand...
I've done a bit of x86 ASM and BIOS disassembly before.. so I figured I might as well peek into this and see what is being hidden and such...
I am seeking help right now... If you know anything about the FAT filesystem... you can start by doing "dd if=/dev/block/mmcblk1p1 of=/mnt/sdcard-ext/partition1"
.. It obviously has that MLO bootup file in it as mentioned in the OMAP4430 TRM but I can't seem to trace what cluster it might be in... I have to assume that it is in fact a FAT fs... but it doesnt seem to follow any of the structures/formats I've been reading... ???
The boot rom you've dumped is the ti omap itself; the only real purpose of that is to bootstrap the bootloader. You are correct in that it's not a GP; none of the Motorola phones are -- this boot rom is what verifies the signature of the bootloader.
http://www.droid-developers.org/wiki/Booting_chain
While not exact, the above diagram will give you an overview of the layout used by Motorola phone. The short version is boot rom -> mbmloader -> mbm -> lbl -> kernel, where mbmloader is the Motorola terminology for the MLO or X-LOADER referenced in the TRM. mbm is the bootloader (motorola boot manager) and controls all actions henceforth, including fastboot (which replaced an older sbf protocol).
The CDT acts as a partition table and lists the layout of the device, including marking where the signatures are located and how often they're checked.
http://blog.opticaldelusion.org/2011/10/bionic-development-notes.html
Sorry for late answer.
Here you can find example of reversing OMAP 3430 bootrom http://hg.droid-developers.org/reverse_engineering/src/b8b881184b5f/asm
As mentioned before droid-developers wiki contain a lot of info about bootrom.
Here you can find info about bootrom itself http://www.droid-developers.org/wiki/Application_Processor_Boot_ROM
Here you can find info about security model in omap http://www.droid-developers.org/wiki/Security http://www.droid-developers.org/wiki/Secure_Services
Here you can find info about my project - emulation of early OMAP booting (including bootrom debugging) http://www.droid-developers.org/wiki/QEMU

[Q] M7 missing /dev/block/mmcblk0p22 and higher

Sorry for the novel, but I want to show the whole backstory to rule out quick fixes... I have an m7 a coworker asked me to take a look at. I don't know the full story, but apparantly he didn't do anything to the phone, he just woke up one day and it was suddenly broken. I'm not sure whether I believe him but I digress...
When I got it, about half the time the phone would just hang at the htc logo. If you power it off and back on, the other half of the time it would automatically bring itself to the bootloader. The bootloader said Tampered, locked, and security warning at the top.
I fought with it for a while, factory reset did nothing. I used htcdev to unlock the bootloader, and flashed twrp 2.8. Twrp was full of errors saying can't mount /data, can't mount /system, can't mount /cache etc. any time I tried to do anything it would keep complaining that it couldn't write to /cache/log/whatever.
Trying to format / wipe any of the partitions would fail. When I went to the mount screen, it showed "internal storage: 0mb" and clicking on that let me choose from internal storage 0mb and dgs USB 0mb.
Trying to adb side load in twrp failed as well, it would just say side load failed as soon as I entered the side load screen.
I installed twrp 2.3.6, and it did the exact same thing.
I then installed CWM touch 6.0.4.8, and it had basically the same errors about not being able to mount any partitions. The only difference with CWM was that the ADB side load would start, but trying to actually send any files to it fails. (Sending the file from the computer counts up and gets to 100%, but as soon as it gets to 100% it says the file is invalid (don't recall the exact error)
I finally found this link: (too new to port links, but google htc recover corrupted partitions, it's the first hit, from android revolution blog) and followed those steps, but when I run mkfs.ext4 for mmcblk0p36, 35 or 34 it complains that mmcblk0p36 is not a block special device.
I opened up adb shell, and ran ls /dev/block, it shows some mmcblk0, mmcblk0p1, mmcblk0p2, etc all the way up to p21, but there's nothing higher than 21. When I run that same command on my own m7 (running cm11) it has all the way up to p37.
I've tried to find more info about what's going on from there, but the only people I've found with similar problems all sent their phones back for warranty, and this one is out of warranty now.
So long story short, at this point am I right that it looks like a hardware fault and I'm sol? Or is there anything I'm missing about why half of those blocks would be missing? Do I stand a chance of remapping /data /system and /cache to lower numbered blocks or am I out to lunch?
This post was long enough without attaching logs or exact error messages, but if anyone thinks they might be of value let me know and I can include them.
Thanks!
joetomato said:
Sorry for the novel, but I want to show the whole backstory to rule out quick fixes... I have an m7 a coworker asked me to take a look at. I don't know the full story, but apparantly he didn't do anything to the phone, he just woke up one day and it was suddenly broken. I'm not sure whether I believe him but I digress...
When I got it, about half the time the phone would just hang at the htc logo. If you power it off and back on, the other half of the time it would automatically bring itself to the bootloader. The bootloader said Tampered, locked, and security warning at the top.
I fought with it for a while, factory reset did nothing. I used htcdev to unlock the bootloader, and flashed twrp 2.8. Twrp was full of errors saying can't mount /data, can't mount /system, can't mount /cache etc. any time I tried to do anything it would keep complaining that it couldn't write to /cache/log/whatever.
Trying to format / wipe any of the partitions would fail. When I went to the mount screen, it showed "internal storage: 0mb" and clicking on that let me choose from internal storage 0mb and dgs USB 0mb.
Trying to adb side load in twrp failed as well, it would just say side load failed as soon as I entered the side load screen.
I installed twrp 2.3.6, and it did the exact same thing.
I then installed CWM touch 6.0.4.8, and it had basically the same errors about not being able to mount any partitions. The only difference with CWM was that the ADB side load would start, but trying to actually send any files to it fails. (Sending the file from the computer counts up and gets to 100%, but as soon as it gets to 100% it says the file is invalid (don't recall the exact error)
I finally found this link: (too new to port links, but google htc recover corrupted partitions, it's the first hit, from android revolution blog) and followed those steps, but when I run mkfs.ext4 for mmcblk0p36, 35 or 34 it complains that mmcblk0p36 is not a block special device.
I opened up adb shell, and ran ls /dev/block, it shows some mmcblk0, mmcblk0p1, mmcblk0p2, etc all the way up to p21, but there's nothing higher than 21. When I run that same command on my own m7 (running cm11) it has all the way up to p37.
I've tried to find more info about what's going on from there, but the only people I've found with similar problems all sent their phones back for warranty, and this one is out of warranty now.
So long story short, at this point am I right that it looks like a hardware fault and I'm sol? Or is there anything I'm missing about why half of those blocks would be missing? Do I stand a chance of remapping /data /system and /cache to lower numbered blocks or am I out to lunch?
This post was long enough without attaching logs or exact error messages, but if anyone thinks they might be of value let me know and I can include them.
Thanks!
Click to expand...
Click to collapse
I don't know if the Unbrick Project would help or not. At least take a look at it to see if your situation might fit the criteria.

Categories

Resources