[Q] [cLK] [Magldr] How to know your cache partition - Android Software/Hacking General [Developers Only]

Hi All.
Am looking to install a new Android NAND rom and it requires a specific cache partition (100MB or 140MB or 150), and for any reason I dont know what was the latest cache partition size that i had flashed on my device.
And i don't want to go in a hassle of changing my cache partition just to try the new rom, and if i didn't like that rom I should re flash the old one (by going back and search on the rom thread what the required size is), and may be losing data.
specialy if this is under cLK. which needs more knowledge and more steps.
Shouldn't be there a way to know your cache partition size from within your current running build, a command, or any app from the market. How life is easy
Appreciate Any Help or suggestion.
_______________________________
HD2 512
clk 1.3.3
CWM 3.1.0.0
Baseband version:15.42.50.11U_2.15.50.14
Android version:2.3.3
Kernel version: 2.6.32.15_r9-gd0fb339 tytung ubuntu #60
Mem info: avail/total=> 216MB /411MB
Mod version: Hyperdroid-cm7-v2.0.1-GregariousGreyhound
Build number: GRI40

Related

[MOD][RECOVERY] Custom MTD Partitions (resize Data,System and Cache ) [ 2010-10-29 ]

Custom MTD Partitions
This is an implimentaion of lbcoder's Custom partition layouts
be sure to checkout that thread for the full history
What does it do?
Well, basically Custom MTD Partitions resizes your MTD partitions
for instance this is a CM6.1RC1, ( heavily customised )
Code:
Filesystem Size Used Available Use% Mounted on
/dev/block/mtdblock3 73.0M 72.8M 236.0K 100% /system
/dev/block/mtdblock5 134.8M 107.2M 27.6M 80% /data
/dev/block/loop0 896.0K 896.0K 0 100% /system/lib/modules
/dev/block/loop1 4.0M 4.0M 0 100% /system/xbin
/dev/block/mmcblk0p2 457.4M 201.8M 231.1M 47% /sd-ext
/dev/block/mmcblk0p2 457.4M 201.8M 231.1M 47% /cache
/dev/block/mtdblock4 2.0M 776.0K 1.2M 38% /dev/cache
most of my Apps are on sd-ext, dalvik-cache is on data
/dev/cache is where the real cache partition is mounted, /cache is actually a bind mount from /sd-ext/cache
Applicable to..
Probably any device that uses the same kind of nand as the G1 MT3G ( msm_nand )
The intial scripts are geared towards G1 / MT3G. however I have 'rewritten' much of the script for v1.5 , it now reads the partition table in dmesg, so it _should_ be universal **
v1.5.3 confirmed to work on heroc
v1.5.6 confirmed to work on bravo + bravoc ( with S-OFF )
unsure if it will work with your device? checkout the source on github ( or ask your favourite dev to take a look )
The 'Tech' in Breif
This method is beautifully simple...
When booting we give the kernel the mtd partition table we want to use..
Thats it
In practice we need to do this when booting to recovery, and booting the rom.
below are files to make this as simple flashing a rom.
Credits :-
Lbcoder - for coming up with the idea
Skraw ( CM forums ) - for getting lbcoder interested
Koush - for AnyKernel
Cyanogen & Co - for giving us all such great ROMs to play with
Amon_RA and Koush - for giving us something to patch
Techjosh - for fixing the patchers for use with Rogers (EBi1)
Mblaster - for pointing out my nasty habit of using -r zip flag at the end of command ( breaks compatibility with older zip versions, fixed in AutoPatcher v1.5 )
Safety First
This method is safe, however it is not without risk
Two things could potentially go wrong
Recovery flash corrupt
This is extremely unlikely, and tbh could happen anytime you flash recovery
If in the very unlikely event that you find you can't reboot to recovery you have three options
re-flash recovery via fastboot ( the preferred option )
re-flash recovery via ROM ( not a great option with cm5.0.x/cm6 )
Do the whole root thing all over again ( no one wants to do that )
system, cache , data partition unmountable - corrupt
Under the right ( or wrong ) circumstances it is possible to get 'junk' files stuck in system ( or cache,data ), and in such away that recovery can not delete them, more serious corruption can render the partitions unmountable.
It is actually quite straight forward to fix this, but it does require fastboot
Code:
fastboot erase system -w
Clockwork Recovery 2.0.2.0 and later has erase_image binary, if you can adb shell in then
Code:
for i in system cache userdata;do erase_image $i;done
and reboot
I would advise you seek out how to 'fastboot', which tbh is a good thing to have regardless of using this 'hack' as it can get you out of so much trouble
*NB* don't use a patched recovery to flash SPL or RADIO ( you should avoid using recovery to flash these anyway, feel free to ask for current advice on spl / radio flashing )
Prevention is better than cure
I have only managed to corrupt partitions when switching partition layouts while having files on cache or data, for example going from System 67.5 Cache 67.5 to System 90 cache 5 with
cache approx 80% 'used'...
I have not been able to repeat this if I wipe Cache before rebooting,
therefore I advise that you wipe both cache and data * after patching recovery ( and rebooting )
* along with system if you are using clockwork
OK, now lets patch recovery and a ROM
Install Instuctions
It really is quite simple
download FR-recovery-v1.5.6-CustomMTD_S.zip and FR-boot-v1.5.6-CustomMTD_S.zip
create mtdpartmap.txt and put on /sdcard/ see configuration *
reboot to recovery
nandbackup
wipe cache + data
flash FR-recovery-v1.5.6-CustomMTD_S.zip
reboot to recovery ( reboot and hold Home )
Either : -
Nandrestore
Flash ROM + extras
flash FR-boot-v1.5.6-CustomMTD_S.zip
reboot
* configuration
The script in the recovery patcher checks for /sdcard/mtdpartmap.txt and reads that to override the default sizes.
e.g. for system 90mb and cache 2mb
NB make sure you mount sdcard first, else you won't write to sdcard/mtdpartmap.txt !
Code:
echo "mtd 90 2" > /sdcard/mtdpartmap.txt
data would be 117.8mb ( 116.7 useable )
e.g. for system 55mb and cache 2mb ( Purhaps a nice 'sugar free' Donut )
Code:
echo "mtd 55 2" > /sdcard/mtdpartmap.txt
data would be 152.8mb ( 151.7 useable )
NB, above data sizes are for G1s, MT3Gs should add ~78mb
All In One Patch runner ( New to v1.5.3 )
new option to run the All In One Patch script ( versions 1.3.6 and higher )
the format is
Code:
aio <option1> <option2> <option3>...
e.g.
Code:
aio swap remount shabang lwp
By default it will install the sd-ext mount ( option sdext )
so a line just reading aio will be fine
Note: the patch must be on the root of the sdcard, and its file name must start with "fr-patch" and end with ".txt"
if you have several versions the newest ( as per files datetime stamp ) will be used
Faking your SPL
If your using an SPL that is not officially supported by your ROM and that ROM checks your SPL you can 'patch' to fake it.
Code:
echo "spl 1.33.2005" >> /sdcard/mtdpartmap.txt
note that we are using ">>" here, this is to append to the file ( ">" would overwrite it )
you can by all means use any text editor you like, the script will automatically convert to unix format
NOTE : you are dodging the checks the ROM dev put in place, do not complain to them if this doesn't workout for you
in post 2 I have some 'CM6' Kernels I compiled for (1)0.95.xxxx SPLs
but I will only likely do these for RCs and Finals ( and there maybe a delay ).
In that post I point you towards the 'SafeSPL' ( 1.33.2003 ) this SPL is compatible with the current CM6 kernels ( so no need to wait for me or someone else to compile with bluetooth as modules ), but 1.33.2003 is not 'officially' supported ( its stock at 67.5mb system ) so you need to Fake your SPL ( say 1.33.2005 ) and resize to 90mb system ( or whatever you feel is optimum )
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.
Downloads
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.
http://tinyurl.com/customMTD
aab0fadf658ed275954aea8d0aed9c8f FR-AutoMTD_partitionPatcher_v1.5.6.tar.bz2
8857194cdbe34a52d173def4441ad2ae FR-AutoMTD_partitionPatcher_v1.5.6.zip
1f84a5ec50684a7830a93a8d455bc159 FR-boot-rpp-v1.5.6-CustomMTD_S.zip
bca0360f91aed0acf6e2dc82dfe01b56 FR-boot-v1.5.6-CustomMTD_S.zip
94b4238c2668cbe7cd52fb8ad5a2ee12 FR-recovery-v1.5.6-CustomMTD_S.zip
5404f1a41dbc60105d59c7fa0c335a70 FR-remove-v1.5.6-CustomMTD_S.zip
NB New Config option !!! to automatically run fr-patch136+
e.g.
Code:
mtd 90 2
spl 1.33.2005
aio swap remount shabang lwp a2sd
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.
ROM Zip Patcher for Devs
To make life even simpler for end users it is possible to integrate the 'patch' within a ROM
AutoMTD_partitionPatcher_v1.5.6.zip
currently Linux only,
within the zip is a tarball, untar that.
get that directory into your PATH, ( or just cd into it )
and then execute
Code:
PatchUpdateScript.sh <zip file to patch>
it will then
create a temp directory ( in your current directory )
copy your zip to it
extract required files
patch update(r)-script
zip and sign.
It simply saves the user from flashing the boot patch after flashing your ROM
The Future....
lbcoder has already suggested ways in which we can implement this 'on the fly'
so for instance it would be possible for a ROM , to instruct recovery what MTD partition layout is required, reload mtd kernel modules, and then flash ROM + boot.img
for those with huge partitions
Hey, you could go all silly and dual boot between ROMs ..
Anyway, enjoy and feel free to modify/improve on these
Changelog
v1-5-6 : 2010-10-28
Calculate userdata size, greatly improves compatibility
Added a version to patch a boot.img ( boot-rpp ) with run-parts
didn't want to , but some are using roms which don't have run-parts, so the 06BindCache script wasn't running
Added a remove version ( remove )
flashing this will return the recovery to SPL's layout
I may well integrate that better, so you don't need a separate zip
AutoMTD_partitionPatcher can convert a recovery.img to a AutoMTD flashable zip
PatchUpdateScript.sh <full path to>/recovery.img
boot patcher is much cleaner, it just uses the cmdline of the running recovery
removed the default 90 2 sizing, you *must* set your own size in mtdpartmap.txt
v1-5-4/5
added stuff
removed stuff
moved stuff
see v1-5-6
v1-5-3 : 2010-08-13
This should be last version we need
greater compatibility with none dreams/sapphires
option to launch All in One Patcher
v1-5-2 : 2010-08-0
Bug fixes
recovery was getting written to boot ( flash_image <partition> is now a variable )
typo in env variable was causing cache and data calculations to fail
AutoMTD now prints version number ( when flashing patched Zip )
tided up system "0x" 'fudge' ( to be compatible with trout/sapphire fall back )
removes temp files from memory when done
v1-5-1 : 2010-08-06
Bug fixes, had an extra '0x' on the system start + functions had wrong env var for the location of dmesg derived partition map
v1-5 : 2010-08-06
Version numbers brought into sync
Zipe Filename - 'reordered' ( easier to see version numbers in CWR )
AutoMTD Patcher - changes as per boot Patcher + zip recursion fix ( my bad habit, thanks go to mblaster for pointing this out )
Boot Patcher - cleaned up cache bind mount
Now supports leagcy /system/sd mount point
[*]supports ROM Manager ( real cache partition mounted on /dev/cache, recovery dir symlinked from 'fake' to 'real' cache )
Recovery Patcher - can 'fake' your SPL ( see configuration )
Recovery Patcher - creates more noise ( advise wipe and reboot )
Single Patcher script ( so I don't have make the same changes to three different files that essentially do the same job )
No longer 'Hardcoded' to 32[a/b] Partition Layout ( figures out SPL layout via dmesg ) **
uses original boot/recovery img's base configuration ( i.e. EBi0 and EBi1 compatible )
=< v1.4
Recovery Patcher v1.3, added SPL faker
Boot Patcher v1.2, fixed oversite where boot.img was not 'dumped'
Recovery Patcher v1.1 initial
Boot Patcher v1.1 ( was a fail, it didn't patch boot.img on CM roms as the tmp boot.img was deleted, my fault for just using the AutoMTD Patcher's script ( which runs before the tmp boot.img is deleted )
Boot Patcher v1 initial
Todo
- 2010-08-13 redundent ( launching AIO script ) - I might add some stuff to cm5/6's backup routine via the Auto patcher, things like the "All in One" installed scripts: 05mountsd and remount
windows compatible AutoMTD script ( meh, I hate batch scripts )
- 2010-08-13 DONE - thinking of adding a config option to launch the "all in one" script, but have to make that recovery compatible first
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.
Downloads
.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:._.:*~*:.
mediafire downloads
http://tinyurl.com/customMTD
aab0fadf658ed275954aea8d0aed9c8f FR-AutoMTD_partitionPatcher_v1.5.6.tar.bz2
8857194cdbe34a52d173def4441ad2ae FR-AutoMTD_partitionPatcher_v1.5.6.zip
1f84a5ec50684a7830a93a8d455bc159 FR-boot-rpp-v1.5.6-CustomMTD_S.zip
bca0360f91aed0acf6e2dc82dfe01b56 FR-boot-v1.5.6-CustomMTD_S.zip
94b4238c2668cbe7cd52fb8ad5a2ee12 FR-recovery-v1.5.6-CustomMTD_S.zip
5404f1a41dbc60105d59c7fa0c335a70 FR-remove-v1.5.6-CustomMTD_S.zip
The attached files are OLD
Custom MTD FAQ
FAQ
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Q my SPL starts with 0 or 10, and I want to try CM5.0.8 or/and CM6. DO I need to do anything extra?[/b]
A yeap, it seems the newer kernels are just a bit too big for x0.95.x00x SPLs, you can get round it with the below kernels. And to flash CM6 you need to 'fake' your SPL ( see configuration in OP ) or edit the updater-script. faking is easier.
However, I would recommend the 1.33.2003 SPL ( you still need to fake your SPL, but you won't need the 'special' kernels )
guide for flashing 1.33.2003 SPL by Ezterry
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
2010-07-11
I have compiled a kernel, which I hope is NoneDanger compatible
the source is simply CyanogenMod's github, I have taken the config from cm6rc1, and simply changed the bluetooth to modules
this approach has worked in the past
It is pre-patched with AutoMTD, so just flash cm6rc1, then flash this
FR-CM6RC1-bootimg4NoneD-AutoMTD.zip(MD5: 386D9A05A3C0FFC08E5B3F844D437AA7)
mirrors
http://rapidshare.com/files/406402016/FR-CM6RC1-bootimg4NoneD-AutoMTD.zip
http://www.mediafire.com/?152jnqwyme3
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
2010-07-27
NoneDanger compatible Kernel for RC2
FR-CM6RC2-bootimg4NoneD-AutoMTD.zip (MD5: 7858a8a8d126919318d1718c6e5167ec )
http://www.mediafire.com/file/ttxfcocsti3mma3/FR-CM6RC2-bootimg4NoneD-AutoMTD.zip
I'll have to dig out the src
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
2010-08-15
NoneDanger compatible Kernel for RC3
2010-08-17 ( Sorry, old one had a status6 bug )
New one here
87F160F08FCD2233DDD40FBFC50D3711 FR-CM6RC3-bootimg4NoneD-AutoMTD.zip
src = http://github.com/CyanogenMod/cm-kernel/tree/48c57f11abaaf3de6c81f6f5c44cfe2637251184
no modifications its straight cm ( besides the config, which you can get from the compiled kernel or zcat /proc/config.gz )
#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#*#
*NB* don't use a patched recovery to flash SPL or RADIO ( you should avoid using recovery to flash these anyway, feel free to ask for current advice on spl / radio flashing )
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Q do I need to flash both of the files each time I install a new rom?
A No, you only need to flash the recovery patcher once, unless you want to resize or you install a new recovery.
the boot patcher *must* be flashed after you have installed a new ROM or Kernel update
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Q my cache looks odd in df, I see two and its the same size as data or sd-ext, is something wrong?
A everything is fine, since we shrunk cache its no good for things like the Market, so a script is installed to 'bind mount' cache with /sd-ext/cache or data if sd-ext is not mounted.
it actually turns out that /cache is not actually used in CM6, so I might adapt the script a little in a future release.
EDIT: as of version 1.5 the cache bind mount script mount 'real cache' separately, which should reduce confusion
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Q When I tell ROM Manger to do something in recovery, it just reboots to recovery and does nothing. it used to do the action but not since I installed CustomMTD
A yeah, nearly forgot about that, I was going to fix it last week, basically ROM Manger writes commands to /cache, but its writing it to our bind mount so.. when recovery boots it doesn't see the commands.
In all honesty that one hasn't been pointed out to me yet, but yeah I can fix it..
EDIT: as of version 1.5 the cache bind mount is compatible with ROM Manager
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The Scripts
'source' is now available on github
http://github.com/Firerat/CustomMTD
errm, tbh I'm not all that clued up on it yet
looks very promising
So, will i need to change the values everytime i flash a different rom? or can i just set them to a large size and everything will work?
asb123 said:
looks very promising
So, will i need to change the values everytime i flash a different rom? or can i just set them to a large size and everything will work?
Click to expand...
Click to collapse
most roms have a target of 90mb system ( DangerSPL )
so 90 2 config will basically give you an extra 28mb on data than you would have with stock DangerSPL MTD map
so yeah
90 2 is a good all rounder
Firerat said:
most roms have a target of 90mb system ( DangerSPL )
so 90 2 config will basically give you an extra 28mb on data than you would have with stock DangerSPL MTD map
so yeah
90 2 is a good all rounder
Click to expand...
Click to collapse
is it okay if I make system 70mb?
The rom im using is only using 66 out of 90, i want more space for data instead. I remember you said something about it being a miltiple of 128K.
With this, could Devs stop skimping on stuff like wallpapers and ringtones or additional apps, and surpass the 90MB danger spl mark? It would seem so. Also, I do not make roms so I do not know how it works but if there is compression or lower quality stuff they would now be able to use up as much space as wanted correct?
Ace42 said:
is it okay if I make system 70mb?
The rom im using is only using 66 out of 90, i want more space for data instead.
Click to expand...
Click to collapse
yeap, should be fine
personally I would be tempted to use clockwork, since you can erase system ( part of partition options )
.img files can be found here
http://www.koushikdutta.com/2010/02/clockwork-recovery-image.html
I don't recommend flashing via ROM Manager with CM5 or CM6
fastboot it over, or flash via recovery
I may be a little over cautious recommending a full wipe, but I have never had problems when system, cache and data are clean.
if you are 'growing' system make sure cache and data are clean
if your 'shrinking' make sure system is clean ( so 'hangovers don't mess up /cache or data )
asb123 said:
With this, could Devs stop skimping on stuff like wallpapers and ringtones or additional apps, and surpass the 90MB danger spl mark? It would seem so. Also, I do not make roms so I do not know how it works but if there is compression or lower quality stuff they would now be able to use up as much space as wanted correct?
Click to expand...
Click to collapse
yes, you can 'grow' or 'shrink' at will
just hope it doesn't get used to be lazy and not trim bloat
Hi firerat,
you mentioned once before something about market data on the cahe... or something so downloads would be ok if a certain partition was big enough?....something like that... I am having a prob that might be related since it started when I tried to change from default to system 80 5 for data. now I cant sign in to google and after flashing gaaps there is no market? everything else in the gaaps zip is there...? It could be google i know but i remembered you saying that somewhere.
TheNewGuy said:
Hi firerat,
you mentioned once before something about market data on the cahe... or something so downloads would be ok if a certain partition was big enough?....something like that... I am having a prob that might be related since it started when I tried to change from default to system 80 5 for data. now I cant sign in to google and after flashing gaaps there is no market? everything else in the gaaps zip is there...? It could be google i know but i remembered you saying that somewhere.
Click to expand...
Click to collapse
I very much doubt it is related in anyway
/cache is where the market downloads apks to prior to install
it should be bind mounted to /sd-ext/cache or /data/cache if sd-ext is not mounted
your missing Market is related to something else
Firerat said:
I very much doubt it is related in anyway
/cache is where the market downloads apks to prior to install
it should be bind mounted to /sd-ext/cache or /data/cache if sd-ext is not mounted
your missing Market is related to something else
Click to expand...
Click to collapse
On my sdcard, why were my market Dls going to /Sdcard/Download folder?
I never seen them go there before, I'm used to seeing them in /cache.
Ace42 said:
On my sdcard, why were my market Dls going to /Sdcard/Download folder?
I never seen them go there before, I'm used to seeing them in /cache.
Click to expand...
Click to collapse
Because he bind mounted it.
Ace42 said:
On my sdcard, why were my market Dls going to /Sdcard/Download folder?
I never seen them go there before, I'm used to seeing them in /cache.
Click to expand...
Click to collapse
JAguirre1231 said:
Because he bind mounted it.
Click to expand...
Click to collapse
sorry for confusion
When I download stuff with dolphin HD it goes to /sdcard/download
maybe its different with stock browser
the cache bind mount is
added a few extra comments to make it easier to follow
/system/etc/init.d/06BindCache
Code:
#!/system/bin/sh
# check we don't already have a bind mount
# ( so if ran manually multiple times we don't end up with strange things happening )
if [ "`awk '/\/cache/' /proc/mounts |sed -n '$='`" -gt "1" ];
then
echo "cache already bind mounted"
echo `awk '/\/cache/' /proc/mounts`
exit
fi
# check if /sd-ext mounted, if yes then bind to /sd-ext/cache, if not /data/cache
if [ "`grep -q sd-ext /proc/mounts;echo $?`" = "0" ];
then
CacheDir=/sd-ext/cache
else
CacheDir=/data/cache
fi
# check we have something to bind mount, and create if not
if [ ! -d $CacheDir ];
then
install -m 771 -o 1000 -g 2001 -d $CacheDir
fi
mount -o bind $CacheDir /cache
# check dalvik-cache exists ( this is really for magics )
# so they don't end up in bootloop because dex files can not be created
if [ ! -d $CacheDir/dalvik-cache ];
then
install -m 771 -o 1000 -g 1000 -d $CacheDir/dalvik-cache
fi
actually, errm yeah it is d/l to /sdcard/downloads
not my doing
I guess cache really is pointless on froyo
hey firerat great job bro! again ive been really busy and i still didnt get to try this or the earlier betas you made...hell i havent even tried a froyo rom yet. ima try this right now and let you know how it goes!
speedysilwady said:
hey firerat great job bro! again ive been really busy and i still didnt get to try this or the earlier betas you made...hell i havent even tried a froyo rom yet. ima try this right now and let you know how it goes!
Click to expand...
Click to collapse
Froyo has been nice so far
but you may run into issues
for one the updater-script is actively 'kicking' NoneDanger
you can just remove the getprop checks
I have had problems booting cm5.0.8's kernel, I did get round it by compiling a new one from cm github,
I
'm not sure is cm6's kernel has the same issue
it does seem SPL related, I flashed Danger and it was fine, I plan to go back to NoneDanger and confirm it still doesn't work.
but figured that while I was on Danger I might as well put this (Custom MTD) through its paces with a DangerSPL
Firerat said:
Froyo has been nice so far
but you may run into issues
for one the updater-script is actively 'kicking' NoneDanger
you can just remove the getprop checks
I have had problems booting cm5.0.8's kernel, I did get round it by compiling a new one from cm github,
I
'm not sure is cm6's kernel has the same issue
it does seem SPL related, I flashed Danger and it was fine, I plan to go back to NoneDanger and confirm it still doesn't work.
but figured that while I was on Danger I might as well put this (Custom MTD) through its paces with a DangerSPL
Click to expand...
Click to collapse
lol yeah i was just gonna say the get prop error occured lemme remove those asserts resign and see what happens
hmm oddly everything flashed fine on the latest nightly build but when it gets past the g1 screen it keeps rebooting to recovery? ima rewipe and try again and see if i can get a logcat if it happens again
edit: no dice when i run logcat =/
-exec '/system/bin/sh/' failed: permission denied (13) -"
double edit: i get the same error for any rom i try to flash when i look at the logcat. the only difference is cm's latest nightly build rebooted on the g1, super e freezes at the g1 screen...ima try to modify the .txt to go back to the stock layout so i can nandroid my cachehacked cm5.08 back if not...idk what to do..
speedysilwady said:
hmm oddly everything flashed fine on the latest nightly build but when it gets past the g1 screen it keeps rebooting to recovery? ima rewipe and try again and see if i can get a logcat if it happens again
edit: no dice when i run logcat =/
-exec '/system/bin/sh/' failed: permission denied (13) -"
Click to expand...
Click to collapse
Odd, but at leasat the kernel is booting, I wasn't getting anywhere with cm5.0.8
It could be a general error
Which build are you using
I'm on a nightly, but I know Defcon works
If its still not working, try the older v1 version of boot patcher in lbcoders thread
I did change boot v1.1 to the script I use in the automtd one
I'm on the nightly 0704 (944 I think ) btw
Firerat said:
Odd, but at leasat the kernel is booting, I wasn't getting anywhere with cm5.0.8
It could be a general error
Which build are you using
I'm on a nightly, but I know Defcon works
If its still not working, try the older v1 version of boot patcher in lbcoders thread
I did change boot v1.1 to the script I use in the automtd one
I'm on the nightly 0704 (944 I think ) btw
Click to expand...
Click to collapse
noo this wasnt cm5.08 this was the latest nightly, same one youre 0704 on.
it got to the g1 screen and right when its abt to hit the boot animation it reboots.
i tried super e but it froze on the g1 screen
trying to get back to 67 67 for cache and system so i can nandroid but its weird that the logcat wont show no matter what rom i use.

[Q] BeBook 7" Live Tablet

Does anyone have this tablet? I can't find this tablet on the website.
I want to know if this tablet can be upgraded to v3.0 or higher when ics comes on CyanogenMod?
Technical Specifications
Weight: 426 gr
Dimensions: 202 x 140 x 11 mm
CPU Samsung Cortex A8 1.0 GHZ
OS: Android 2.2
WiFi 802.11 b/g/n
Bluetooth
Capacitive Multi Touch Screen
7" TFT-LCD Display
SDRAM 512 MB
4 GB Internal Memory
Micro SD/SDHC slot (Up to 32 GB)
G-Sensor
Mini-HDMI port out
Mini-USB port
Microphone
Adobe Flash Compatible
Camera: 2 MP
2 Stereo Speakers
I've the exact same question about the Cyanogen Mod.
Also, I would like to know if it's possible to perform a COMPLETE back up (root or nand backup) without this mod. (without nandroid backup)
The device is also released as the BQ DaVinci. That company released a firmware update to Gingerbread a couple of days ago.
However, I'm a bit reluctant to install it, because it'll change the splash screen and who knows what else.
The update procedure seems to be different from other devices: you have to put a folder called SDFUSE on the root of the SD-card and reboot. The folder contains these files:
SDFUSE
--> ramdisk-uboot.img
--> sdfuse.txt
--> system.img
--> u-boot.bin
--> zImage
Does anyone have any idea on how to reverse-assemble these files (i.e. extract or replace boot splash screen,...)
Mahalaleel said:
I've the exact same question about the Cyanogen Mod.
Also, I would like to know if it's possible to perform a COMPLETE back up (root or nand backup) without this mod. (without nandroid backup)
The device is also released as the BQ DaVinci. That company released a firmware update to Gingerbread a couple of days ago.
However, I'm a bit reluctant to install it, because it'll change the splash screen and who knows what else.
The update procedure seems to be different from other devices: you have to put a folder called SDFUSE on the root of the SD-card and reboot. The folder contains these files:
SDFUSE
--> ramdisk-uboot.img
--> sdfuse.txt
--> system.img
--> u-boot.bin
--> zImage
Does anyone have any idea on how to reverse-assemble these files (i.e. extract or replace boot splash screen,...)
Click to expand...
Click to collapse
There is not much help here..
I think we can forget an answer to our question
From experience I can say 2.3.4 DaVinci upgrade works fine on BeBook Live, even Angry Birds Space is now playable!
Indeed so, I discovered that as well.
But... still no possibility to upgrade to a custom ROM apparently?
AGSO Somx 7 GS20 has same format for their ROMs. In my understanding:
zImage - linux kernel compressed
u-boot-config - ???
ramdisk-uboot.img - ram disk image for loading
system.img - image of /system disk
To convert other ROMs into this format you have to get kernel and ramdisk images from boot.img, then make system partition image (create virtual disk with same size, make filesystem on it, move all /system files to the disk).
After some researching:
zImage - linux kernel gzip-compressed (just kernel, with empty initramfs inside) with built-in unpacker code at start
u-boot-config.bin - u-boot loader and/or its config (perhaps, stage 2 loader as S5PC110 has two-stage loader)
ramdisk-uboot.img - initramfs image (initramfs archive by cpio, then gz [output name "ramdisk"], then mkimage from u-boot distribution)
system.img - image of /system disk (ext4, not compressed)
BQ put ICS (Android 4.0) online for the BQ DaVinci, works fine also (booting takes a bit). Definitely a good idea if you still are using the device, Skype and so on works smooth!

[Q] Yarvik TAB360 runing on Gingerbread

Hi, first of all i am a noob and i want to apologyze for my english wich is not very good.
So... i've got a Yarvik Tab360 tablet wich runs on Gingerbread 2.3.4. kernel 2.6.36 wich i have allready rooted by zergrush exploit. What i want to know is how can i do ROM backup because i could'nt find any hint how to make CWM work on this tablet. I've allready tried to do like in Froyo Android 2.2.3 with flash_image but no success, the OS is diferent. So if you have any hints about this and if theres a way to install a nice custom ROM or Honeycomb, ICS... please let me know, i'll be glad to test. Another thing that drives me crazy is that i cant use properly App2SD ,because my microsd is mounted as .../mnt/extern_sd and internal storage is mounted like .../mnt/sdcard. There's a way to make internal storage as a single partition? because right now is splited in 2 partitions like one for system files and another for cache and data; or there's a way to configure App2SD to move data at .../mnt/extern_sd not on .../mnt/sdcard how it is set by default? And there's a way to pack my system files in a zip archive and restore it by recovery console like by just pressing on install update.zip?
Here is some info about my hardware so maybe someone knows a popular tablet with the same conf.
BuildInfos
Android version : 2.3.4
Release Codename : REL
API LEVEL : 10
CPU ABI : armeabi-v7a
Manufacturer : unknown
Bootloader : unknown
CPU ABI2 : armeabi
Hardware : sun4i
Radio : unknown
Board : crane
Brand : iNet
Device : crane-evb
Display : 18F2-D1-H1-H01-1434-2011.12.21
Fingerprint : iNet/crane_evb/crane-evb:2.3.4/GRJ22/eng.inet_ximeng.20111221.203427:eng/test-keys
Host : InetSoftware
ID : GRJ22
Model : TAB360
Product : crane_evb
Tags : test-keys
Type : eng
User : inet_ximeng
[Solved]
Solved with runing CWM and do recovery on this tablet, users with similar tablets INET/crane_evb should take a look at this post http://forum.xda-developers.com/showthread.php?t=1378594 or just search for "made by inet".
many thanks for user fun_

MultiRom V32 Resurrected (D850) [Updated: 07-12-2015]

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
## Introduction ##​
MultiROM is one-of-a-kind multi-boot mod for Nexus 6. It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to that device. Besides booting from device's internal memory, MultiROM can boot from USB drive connected to the device via OTG cable. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. You can see how it looks on the left image below and in gallery. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs and MultiROM even has its own installer system, which can be used to ship other Linux-based systems.
Features:
* Multiboot any number of Android ROMs
* Restore nandroid backup as secondary ROM
* Boot from USB drive attached via OTG cable
Warning!:
It _is_ dangerous. This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. It is no longer messing with data partition or boot sector, but it is possible that something goes wrong and you will have to flash factory images again. Make backups. Always.
## Installation ##
1. Via MultiROM Manager app
This is the easiest way to install everything MultiROM needs. Install the app and select MultiROM and recovery on the Install/Update card. If the Status card says Kernel: doesn't have kexec-hardboot patch! in red letters, you have to install also patched kernel - either select one on the Install/Update card or get some 3rd-party kernel here on XDA. You are chosing kernel for your primary ROM, not any of your (future) secondary ROMs, so select the version accordingly.
Press "Install" on the Install/Update card to start the installation.
2.Manual installation
Firstly, there are videos on youtube. If you want, just search for "MultiROM installation" on youtube and watch those, big thanks to all who made them. There is also an awesome article on Linux Journal.
MultiROM has 4 parts, but you really only need to install 3 parts:
MultiROM Installer:
TWRP Modified Recovery:
Patched Kernel: Primary roms Must have a Kexec Hardboot Patched Kernel
MultiRom UnInstaller:
Adding ROMs:
1. Android
Go to recovery, select Advanced -> MultiROM -> Add ROM. Select the ROM's zip file and confirm. As for the space, clean installation of stock 5.0 after first boot (with dalvik cache generated and connected to google account) takes about 1 GiB of space.
Using USB drive:
During installation, recovery lets you select install location. Plug in the USB drive, wait a while and press "refresh" so that it shows partitions on the USB drive. You just select the location (extX, NTFS and FAT32 partitions are supported) and proceed with the installation.
If you wanna use other than default FAT32 partition, just format it in PC. If you don't know how/don't know where to find out how, you probably should not try installing MultiROM.
If you are installing to NTFS or FAT32 partition, recovery asks you to set image size for all the partitions - this cannot be easilly changed afterward, so choose carefully. FAT32 is limited to maximum of 4095MB per image - it is limitation of the filesystem, I can do nothing about that.
Installation to USB drives takes a bit longer, because the flash drive is (usually) slower and it needs to create the images, so installation of Ubuntu to 4Gb image on my pretty fast USB drive takes about 20 minutes.
Enumerating USB drive can take a while in MultiROM menu, so when you press the "USB" button in MultiROM, wait a while (max. 30-45s) until it searches the USB drive. It does it by itself, no need to press something, just wait.
Updating/changing ROMs:
1. Primary ROM (Internal)
Flash ROM's ZIP file as usual, do factory reset if needed (it won't erase secondary ROMs)
Go to Advanced -> MultiROM in recovery and do Inject curr. boot sector.
2. Secondary Android ROMs
If you want to change the ROM, delete it and add new one. To update ROM, follow these steps:
Go to Advanced -> MultiROM -> List ROMs and select the ROM you want to update.
Select "Flash ZIP" and flash ROM's ZIP file.
Special Thanks to @Tasssadar..​
XDA:DevDB Information
MultiRom V32 Resurrected (D850), ROM for the AT&T LG G3
Contributors
Eliminater74, thewalkingdude, Tasssadar
Source Code: https://github.com/Tasssadar/multirom
ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.4.x
ROM Firmware Required: 4.4.x
Version Information
Status: Beta
Created 2015-04-23
Last Updated 2015-07-12
- Download Section
MultiRom V32 Installer: multirom-20150712-v32-UNOFFICIAL-d850.zip
MultiRom Modified TWRP Recovery: TWRP_MultiRom_2.8.7.x_D850_20150712-signed.zip
MultiRom Kexec Hardboot Kernel By @777jon: AOSP-777-Kernel_d850-R10.zip
MultiRom Uninstaller: multirom_uninstaller.zip
Warning: Kernel is for LP 5.1 Only with 32gb variants at question. Sorry 16gigers, I havent done one for you yet.. but you can try this one.. It just may work.
Note: You can compile your own Kexec Hardboot Kernel as well. @fechanaitor and @777jon both have the Correct MultiRom patch that works with this version.
SideNote: Little UnKnownFact. This MultiRom is set up to allow installing Stock OEM roms as secondery as well..
And @777jon's 777Kernel does work on secondary as well with this version..
...
The first 18 lines on iomem
00000000-059fffff : System RAM
00008000-0114c58f : Kernel code
0130e000-016c22fb : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd9fffff : System RAM
f9017000-f9017fff : msm-watchdog
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
f991d000-f991dfff : msm_serial_hsl
f9923000-f9923fff : f9923000.i2c
f9924000-f9924fff : f9924000.i2c
f9962000-f99620ff : msm_serial_hsl
f9966000-f9966fff : spi_qsd
f9967000-f9967fff : f9967000.i2c
fb21b000-fb21dfff : pmu_base
fc380000-fc3e9fff : fc380000.msm-bimc
My device is a 3 gig on firmware D85020F. I have rooted and installed bumped twrp. Let me know if there's anything I missed. Thank you.
Sent from my LG-D850 using XDA Free mobile app
dginsd said:
The first 18 lines on iomem
00000000-059fffff : System RAM
00008000-0114c58f : Kernel code
0130e000-016c22fb : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd9fffff : System RAM
f9017000-f9017fff : msm-watchdog
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
f991d000-f991dfff : msm_serial_hsl
f9923000-f9923fff : f9923000.i2c
f9924000-f9924fff : f9924000.i2c
f9962000-f99620ff : msm_serial_hsl
f9966000-f9966fff : spi_qsd
f9967000-f9967fff : f9967000.i2c
fb21b000-fb21dfff : pmu_base
fc380000-fc3e9fff : fc380000.msm-bimc
My device is a 3 gig on firmware D85020F. I have rooted and installed bumped twrp. Let me know if there's anything I missed. Thank you.
Sent from my LG-D850 using XDA Free mobile app
Click to expand...
Click to collapse
By your iomem stats, I can already see that location 0x0ff00000 would prob. be the best for you..
I still need a few others to post to get more of an understanding where everyone is at. I dont wanna make 3 versions. I want only to make one version that works for everyone..
Thats why I need the iomem stats. It helps me determine where to put the kexec_mem_min location...
To explain, the kexec_mem_min is the location where kernel stores during a reboot its within the first 256 megs of ram. and the location you would use is
one of your system ram banks in an address that doesnt get written over during reboot.
Thats why this part is a must..
I'll try to help.
How do I grab that info. I'd be happy to help. Thanks for your help Sir!
mcwdude said:
How do I grab that info. I'd be happy to help. Thanks for your help Sir!
Click to expand...
Click to collapse
Use root explorer or similar kind of app and go to root and then to /proc and then there's a text file called iomem. Open in a text editor.
This is also from a D850 3gb on Cyanide
00000000-059fffff : System RAM
00008000-011be32f : Kernel code
01310000-0181c303 : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd7fffff : System RAM
dd900000-dd9fffff : System RAM
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
f991d000-f991dfff : msm_serial_hsl
f9923000-f9923fff : f9923000.i2c
f9924000-f9924fff : f9924000.i2c
f9962000-f99620ff : msm_serial_hsl
f9966000-f9966fff : spi_qsd
f9967000-f9967fff : f9967000.i2c
fb21b000-fb21dfff : pmu_base
fc380000-fc3e9fff : fc380000.msm-bimc
fc401680-fc401683 : restart_reg
fc4016c0-fc4016c3 : restart_reg
fc401700-fc401703 : clk_base
fc4281d0-fc4291cf : vmpm
00000000-059fffff : System RAM
00008000-0114c58f : Kernel code
0130e000-016c22fb : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd9fffff : System RAM
f9017000-f9017fff : msm-watchdog
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
D850 on Rooted Lollipop Stock
D85020f
d850 running cyanide 3GB
00000000-059fffff : System RAM
00008000-010a2e27 : Kernel code
0120e000-01710f3b : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd9fffff : System RAM
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
f991d000-f991dfff : msm_serial_hsl
f9923000-f9923fff : f9923000.i2c
f9924000-f9924fff : f9924000.i2c
f9962000-f99620ff : msm_serial_hsl
f9966000-f9966fff : spi_qsd
f9967000-f9967fff : f9967000.i2c
fb21b000-fb21dfff : pmu_base
fc380000-fc3e9fff : fc380000.msm-bimc
fc401680-fc401683 : restart_reg
fc4016c0-fc4016c3 : restart_reg
fc401700-fc401703 : clk_base
fc4281d0-fc4291cf : vmpm
fc460000-fc463fff : fc460000.msm-sys-noc
fc468000-fc46bfff : fc468000.msm-periph-noc
fc470000-fc473fff : fc470000.msm-ocmem-noc
fc478000-fc47bfff : fc478000.msm-mmss-noc
fc480000-fc483fff : fc480000.msm-config-noc
fc4a8000-fc4a9fff : tsens_physical
fc4bc000-fc4bcfff : tsens_eeprom_physical
fc820000-fc82001f : rmb_base
fc880000-fc8800ff : qdsp6_base
fd485300-fd48530b : halt_base
fda00020-fda0002f : csi_clk_mux
fda00030-fda00033 : csiphy_clk_mux
fda00038-fda0003b : csiphy_clk_mux
fda00040-fda00043 : csiphy_clk_mux
fda04000-fda040ff : fda04000.qcom,cpp
fda08000-fda080ff : fda08000.qcom,csid
fda08400-fda084ff : fda08400.qcom,csid
fda08800-fda088ff : fda08800.qcom,csid
fda08c00-fda08cff : fda08c00.qcom,csid
fda0a000-fda0a4ff : fda0a000.qcom,ispif
fda0ac00-fda0adff : fda0ac00.qcom,csiphy
fda0b000-fda0b1ff : fda0b000.qcom,csiphy
fda0b400-fda0b5ff : fda0b400.qcom,csiphy
fda0c000-fda0cfff : fda0c000.qcom,cci
fdb00000-fdb0ffff : kgsl-3d0
fdb20000-fdb2ffff : kgsl-3d0
fdc80000-fdc803ff : vbif_base
fdce0000-fdce3fff : wrapper_base
fe200000-fe2000ff : qdsp6_base
fec00000-fed7ffff : fdd00000.qcom,ocmem
Wow, ok I guess you are interested..
Be aware:, That CM based LP 5.1's are not working correctly as secondary roms. I am working with @Tasssadar on fixing this problem. But Logs are the main thing needed which its hard to show a log
when it wont write to the last_kmsg file. But this problem is present for the time being.
And once I have this Compiled and good to go, I will need testers, as I dont own a D850.
One more thing, you will have to use the current kexec hardboot patch kernels till I set up one of my roms to build you one with my patch.
I never planed on porting anything to your device, so I dont have a local_manifest setup with your device for building roms/kernels.
That would break my #1 rule. Which I knew would happen sooner or later..
I am no pro Dev, im just a person that learns quick and picks up alot of by trials and errors, I have done 90% of all the hard leg work to get this MultiRom to work very good as it was intended to work on
our devices. all patches was received by Mr @Tasssadar him self.
I am also talking to @Tasssadar about getting our Devices compatible on his MultiROMmgr app thats on Google PlayStore. Which would allow you to boot any rom straight from the app as well as install.
and a few other options.
I cant promise that the first few builds will work good, As I dont have the D850 to test it. But as we go along and tweak it, we can get it working.
Code:
00000000-059fffff : System RAM
00008000-011be32f : Kernel code
01310000-0181c303 : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd7fffff : System RAM
dd900000-dd9fffff : System RAM
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
It's a 3gig, I think all D850s are 3gig, no?
I'm patiently waiting for an updated multirom-enabled twrp. For what it's worth, I seem to be the only one for whom skin1980's release actually worked as advertised, using CM11 as my primary too! There are however certain roms that fail to boot as secondary.
shimbob said:
Code:
00000000-059fffff : System RAM
00008000-011be32f : Kernel code
01310000-0181c303 : Kernel data
0d700000-0f9fffff : System RAM
0ff00000-5fffffff : System RAM
80000000-dd7fffff : System RAM
dd900000-dd9fffff : System RAM
f920c100-f92fbfff : f9200000.dwc3
f9824900-f9824a9f : mmc0
f98a4900-f98a4a1b : mmc1
It's a 3gig, I think all D850s are 3gig, no?
I'm patiently waiting for an updated multirom-enabled twrp. For what it's worth, I seem to be the only one for whom skin1980's release actually worked as advertised, using CM11 as my primary too! There are however certain roms that fail to boot as secondary.
Click to expand...
Click to collapse
I just spent the last 20 mins reading up on this bump stuff, Since T-Mobiles come unlocked, I never had to worry about bump. But I have the script.
When I release the Modified TWRP Multirom recovery, I will release it in 2 ways,
#1: run this Bump scrip on the img and then package it.
#2: Just releae the recovery.img and let you all run the script to bump it. ( Just in case I mess things up )
Just till I know that I am doing it right, after thats been validated I will just release the package already bumped and good to go.
I wish LG would just unlock all thier phones. Good thing T-Mobile Forced them too.
I didnt forget about anyone here, I will take me a few days, I have alot going on at the moment.
I am still trying to fix the 5.1 bug. So I can boot 5.1 from secondary. At the same time
im trying to move my build environment to Omnirom LP.. Which took changing the BoardConfig.mk and BoardConfigCommon.mk.
Which will also let me compile on CM sources as well. with a sepolicey change for recovery..
With all that said, Just give me a few days.. I know you would hate to hear this, but I put my device first.. Whats the point in porting a not working version.
Eliminater74 said:
I didnt forget about anyone here, I will take me a few days, I have alot going on at the moment.
I am still trying to fix the 5.1 bug. So I can boot 5.1 from secondary. At the same time
im trying to move my build environment to Omnirom LP.. Which took changing the BoardConfig.mk and BoardConfigCommon.mk.
Which will also let me compile on CM sources as well. with a sepolicey change for recovery..
With all that said, Just give me a few days.. I know you would hate to hear this, but I put my device first.. Whats the point in porting a not working version.
Click to expand...
Click to collapse
No problem man we're not in a rush we're just interested in the project.
MultiRom Resurrected (D850) Posted:
MultiRom Resurrected V32 (D850)​
Update: Use a pre-kexec Hardboot patched Kernel for now. Might not work well.. but for now its good enough. Till I make you a beter one.
Also, I cant remember what kexec_mem_min location I used, I think its 0x0ff00000 But not sure.. if it works let me know. if it doesnt. Still let me know with logs please.
and Im not sure about the bump thing. I used the bump.py that Cyanogenmod uses. Anyhow, I only bumped the recovery.. I dont think the multirom needs bumping since its only a bunch of scripts..
I posted 3 recovery uploads for a reason, one is the flashable and the other is a bumped image and the last is just a recovery.img not bumped.
Pick your own poison.....................
I need logs if your going to complain about this. Really I only did this as a request from someone..
Dont forget this is still in testing stages, Till I get a feel as to how this works with your device.. Not sure if I got the location correct. but try it and let me know.
Eliminater74 said:
MultiRom Resurrected V32 (D850)​
Update: Use a pre-kexec Hardboot patched Kernel for now. Might not work well.. but for now its good enough. Till I make you a beter one.
Also, I cant remember what kexec_mem_min location I used, I think its 0x0ff00000 But not sure.. if it works let me know. if it doesnt. Still let me know with logs please.
and Im not sure about the bump thing. I used the bump.py that Cyanogenmod uses. Anyhow, I only bumped the recovery.. I dont think the multirom needs bumping since its only a bunch of scripts..
I posted 3 recovery uploads for a reason, one is the flashable and the other is a bumped image and the last is just a recovery.img not bumped.
Pick your own poison.....................
I need logs if your going to complain about this. Really I only did this as a request from someone..
Dont forget this is still in testing stages, Till I get a feel as to how this works with your device.. Not sure if I got the location correct. but try it and let me know.
Click to expand...
Click to collapse
Hey thanks for posting so fast. Was able to successfully flash the MultiROM'd TWRP however 2 things:
1. It boots really really slowly. Was wondering if it actually worked or not for the longest until TWRP finally loaded up.
2. I then flashed the multirom zip and then the 777 kernel zip and added Resurrection Remix and MultiRom properly recognized it.
3. However when I tried to run RR it returned an error and a log was created. Sending that log to you via pm now.
arjuna_ said:
Hey thanks for posting so fast. Was able to successfully flash the MultiROM'd TWRP however 2 things:
1. It boots really really slowly. Was wondering if it actually worked or not for the longest until TWRP finally loaded up.
2. I then flashed the multirom zip and then the 777 kernel zip and added Resurrection Remix and MultiRom properly recognized it.
3. However when I tried to run RR it returned an error and a log was created. Sending that log to you via pm now.
Click to expand...
Click to collapse
TWRP takes a bit it seems, you gota understand that I turned off the screen while it boots. Thats how I set it in the BoardConfig.mk because the menu wasnt working the other way around.
and the 777 kernel patch isnt my patch, I said you would have to wait for me to do the correct patch. some roms wont work that great with the old patch.. it uses different memory locations
and set different. My patch was direct from @Tasssadar.. He told me what I needed to change to get it working with our devices. same with the hooks file...
Also, RR 5.1 might have problems......... anything related to 5.1 after the 17th is related to CM issues thats being worked on ( This is only as Secondary rom only) Should work as primary..
Kernel panics, are caused of out of boounds memory location.. thats the reason I needed everyones iomem..
But I think I used the 0x0ff00000 but really cant remember. Alot going on.........
As I said in prev. post. I dont own this device other then the fact I have a G3.. and it will take a lot of testing and a few tweaks to get this to work correctly.
I dont expect the first few to work. As long as the Recovery booted, Then I know I did something right. I was worried about the bump thing..
I didnt want to brick anyones phone. So that worried me.. But since it worked. I know I am doing it right.
I did start creating MultiRom on LP 5.0.2 build. and All the problems that used to be on the 4.4.4 build kinda fixed it self.. Vibration and everything seem to work correctly with the LP builds.
so when we tweak this right. I will convert the D850 BoardConf file over to the cm 12.0+ section as I already have for the D851.. Shouldnt be to hard since I already know what I need to change..
First time took a while. I had to find all the correct files to change for the port over ...........
I just upgraded my windows 10 to build 10061 (Yes im a tester for Microsoft) Been one since 1998.... So I was offline for a bit while the update happened..
But my other system was up and running.. But I was also in the middle of a few updated on my linux system as well.
Anyhow, we will get this working correctly for you.. Just give me time.
Update: I made a little error when I compiled the first MultiRom..
I forgot to change the dir structure from D851 to D850.. So thats why it didnt work.
TWRP should be working.. That has nothing to do with what I forgot to do............
I am compiling a new update. Will post it as soon as its done.................
--=[ Multirom V32 Fixed and RePosted ]=--​
Update: I Re-Posted Multirom V32.. Sorry last one has a simple mistake.. This one should work for 90% of you.
kexec_mem_min location I used is: 0x0ff00000 Which by all rights, should work for all. I cant stay that 5.1 roms will work..

Mobile/Android devices architecture

I'm having trouble understanding the architecture of mobile (and Android) devices. I compare it a lot to the design of PCs, laptops, etc, which I know quite well.
Here's my understanding on how PCs work when booting:
​The hardware has firmware stored in ROM (Read Only Memory). Actually, Flash memory is used nowadays, on which the stored content can of course be changed, unlike real ROM memories in the old days. Because the firmware is hardware-specific and its operation is very critical, its content is rarely updated or otherwise changed. Installing new firmware is called flashing. Firmware in a PC is most commonly BIOS or UEFI, the task of which is (briefly) to first run the POST tests, provide some interfaces and finally start the software in the mass storage. By mass storage, I mean memory separate from the firmware's Flash memory, which can also be Flash memory, such as an SSD disk, or a more traditional hard disk.​The BIOS (i.e. firmware) in the specified order (which first is the internal NVMe SSD or the external USB hard disk?) tries to load the software into the RAM memory for execution from mass storage MBR (Master Boot Record) part . Master boot record is a physical defined area in mass storage. Bootloader software is stored on this MBR part.​​When the bootloader (located on the MBR part) is loaded into RAM and run, it knows the contents of the end of the disk and starts the kernel from there.​​The kernel starts (in Linux) the init process, nowadays often Systemd, which starts the rest of the software.​--------------------
What kind of memories and storages are most commonly found in Android devices? One main memory (i.e. RAM)? One Flash memory for firmware (i.e ROM)? Another separate flash drive that acts as mass storage? Possibly SD card and USB stick as external mass storage?
What is firmware on Android devices?
What is the bootloader in (located in MBR part) on Android?
Linux is the kernel used by Android, which is started by the bootloader? After that, Android continues to boot, how?
A pile of terms, which I have ambiguities:
Bootloader; What's it like on Android? It is often characterized as hardware specific. So is it the case that the bootloader in Android is firmware? So in Android, the firmware runs the tasks of the PC world BIOS and bootloader (located in the MBR part), and then starts the Android located on the mass storage?
Recovery; What is this technically?
Android ROM; I can't understand this. As far as I know, Android is an operating system located mass storage, not Read-Only-Memory firmware.
Rooting; On a PC, we are used to the fact that the owner of the device has root rights. Is it just that the manufacturers have decided to set the default root password to some generated random string, and by default, the user only has access to the basic user account?
After the above has been answered, I would like someone to explain to me (separately) technically, starting from the hardware level (where and how), how do Android devices booting and work? Links to additional information are also welcome. hank you very much! If anyone can answer my questions, thank you very much!
Your questions should put you to shame.
Start reading yourself, building up your knowledge as you read.
Anyway, welcome to the forum. After a year of reading, you will laugh at your post.
ze7zez said:
Your questions should put you to shame.
Start reading yourself, building up your knowledge as you read.
Anyway, welcome to the forum. After a year of reading, you will laugh at your post.
Click to expand...
Click to collapse
I know my questions are stupid, but I'm impasse. It seems that there is much less information about designing for mobile devices than PCs. Could you link some articles on this? As the last article I read this, but it didn't help much, because I compare too much what I learned on PCs.
There are no stupid questions, there are only stupid answers.
Start with the basics based on information from google:
Architecture overview | Android Open Source Project
source.android.com
ze7zez said:
There are no stupid questions, there are only stupid answers.
Start with the basics based on information from google:
Architecture overview | Android Open Source Project
source.android.com
Click to expand...
Click to collapse
That is useful, but there is a reason why I asked about mobile/Android device design/architecture. Android itself is as far as I know (if I'm not mistaken) just an operating system, like the desktop operating systems Windows and Ubuntu, but mobile/Android devices are very different from PCs in terms of hardware and firmware. For example: https://www.quora.com/Is-there-anything-like-BIOS-in-mobiles-How-do-they-boot
How long is a huge ball of string?
No simple answer...
This is for those who are new to Android development and basically have NO understanding about the partition structure. I will give a high-level introductory explanation. PC GNU/Linux users: please note this is completely different from x86 (PC Linux) partition table. You will not come across partitions denoted as sda1, sda2, sdb1, sdb2, and so on. Instead, it will be structured as follows:
/boot
This is the partition that has all the data that is necessary for the phone to boot. It includes the kernel and the RAMDISK (these are the only components of the operating system that are stored in this partition. The remaining are stored in /System). Without this partition, the device will simply not be able to boot. Wiping this partition from recovery should only be done if absolutely required and once done, the device must NOT be rebooted before installing a new one, which can be done by installing a ROM that includes a /boot partition.
/system
This partition basically contains the entire operating system, except the kernel and the RAMDISK (as mentioned in /boot explanation). This includes the Android User Interface as well as all the system applications that come pre-installed on the device. Wiping this partition will remove Android from the device without rendering it unbootable, but you will still be able to boot into the /recovery partition to install a new ROM.
/recovery
The recovery partition can be considered as an alternative boot partition that lets you boot the device into a recovery console for performing advanced recovery and maintenance operations on it. Think of this like a proprietary recovery partition that PC companies put on prebuilt PCs. When you flash a custom recovery such as TWRP or CWM, you are overwriting this partition.
/data
Also called userdata, the data partition contains the user’s data – this is where your contacts, messages, settings and apps that you have installed go. Wiping this partition essentially performs a factory reset on your device, restoring it to the way it was when you first booted it, or the way it was after the last official or custom ROM installation. When you perform a wipe data/factory reset from recovery, it is this partition that you are wiping.
/cache
This is the partition where Android stores frequently accessed data and app components. Wiping the cache doesn’t effect your personal data but simply gets rid of the existing data there, which gets automatically rebuilt as you continue using the device.
/misc
This partition contains miscellaneous system settings in form of on/off switches. These settings may include CID (Carrier or Region ID), USB configuration and certain hardware settings etc. This is an important partition and if it is corrupt or missing, several of the device’s features will will not function normally.
/sdcard
This is not a partition on the internal memory of the device but rather the SD card. In terms of usage, this is your storage space to store your media, documents, downloads, pictures, videos, ROMs etc. on it. It is like the equivalent of the ' Users/[Username] ' folder in Windows and ' /home/~ ' folder in x86 Linux. Wiping it is perfectly safe as long as you backup all the data you require from it, to your computer first. Though several user-installed apps save their data and settings on the SD card and wiping this partition will make you lose all that data.
On devices with both an internal and an external SD card – devices like the Samsung Galaxy S and several tablets – the /sdcard partition is always used to refer to the internal SD card. For the external SD card – if present – an alternative partition is used, which differs from device to device. In case of Samsung Galaxy S series devices, it is /sdcard/sd while in many other devices, it is /sdcard2. Unlike /sdcard, no system or app data whatsoever is stored automatically on this external SD card and everything present on it has been added there by the user. You can safely wipe it after backing up any data from it that you need to save.
/sd-ext
This is not a standard Android partition, but has become popular in the custom ROM scene. It is basically an additional partition on your SD card that acts as the /data partition when used with certain ROMs that have special features called APP2SD+ or data2ext enabled. It is especially useful on devices with little internal memory allotted to the /data partition. Thus, users who want to install more programs than the internal memory allows can make this partition and use it with a custom ROM that supports this feature, to get additional storage for installing their apps. Wiping this partition is essentially the same as wiping the /data partition – you lose your contacts, SMS, market apps and settings.
/Boot (Is NOT viewable in Android)
/Recovery (Is NOT viewable in Android)
/Data (Userdata) (Is viewable in Android)
/Cache (Is viewable in Android)
/System (Is viewable in Android)
/Misc (Is NOT viewable in Android)
Ram
https://developer.android.com/topic/performance/memory-management
Understanding Firmware naming:
N986USQU1ATGM
N=Note
986U or F etc, the model of device
SQ, FX etc = CPU and model specific
U,S,E = Update, Security, Engineering, respectively
1,2,3,4,5 etc = bootloader revision (This is important! You cannot go to a previous revision)
A,B,C,D = Android version
T, U = Year (T=2020, U=2021 etc)
A,B,C etc = month (January A - December L)
1 - 9 and then A - Z =build compilation. This basically means how many builds there are in a month. They start at 1 and go to Z
So N986USQU1ATGM would be
N968-U-SQ-U-1-A-T-G-M
N968U (Note 20 Ultra Carrier version), SQ (Snapdragon), U (Update), 1 (Bootloader version), A (Build 10), T (2020), G (July), M (22nd build)
How to enter Download Mode:
Turn off the device.
Connect USB cable to your PC (Leave it disconnected from the phone)
Press and hold down the Volume Up and Volume Down buttons. While they are still pressed, plug in the USB cable into your phone.
The phone will go into download mode press volume up. In Odin you will see that phone is added.
Dirty Flash:
I would only do this if you are having to manually update to the newer firmware and would not do it if you are coming/going to U/U1 or from beta firmware or if you are on an old firmware. I'd also highly recommend doing a back up prior to the doing this
Load these into Odin
BL
AP
CP
HOME_CSC
Do NOT flash CSC or USERDATA, either of these WILL wipe your device
This is a "dirty flash" and these can sometimes cause issues. Keep in mind if things start going sideways and stuff starts not working right, your first step to a solution will be to wipe the device.
Tips on flashing U1 Firmware:
You will have to wipe, can NOT dirty Flash going between U and U1 firmware
Use the patched ODIN linked in post #2 or #3, Odin3_v3.13.3b (They are exactly the same)
Have an active US Carrier SIM installed to get carrier features
If you get your CSC Stuck on XAA/XAA/(Insert your carrier here), and can not get Carrier options back.
PIT files
https://ihax.io/samsung-pit-files-explained
plus_rlus said:
I know my questions are stupid, but I'm impasse. It seems that there is much less information about designing for mobile devices than PCs. Could you link some articles on this? As the last article I read this, but it didn't help much, because I compare too much what I learned on PCs.
Click to expand...
Click to collapse
The are no stupid questions.
Questions are asked when we do not understand something and want to learn.
There is nothing wrong or negative about asking questions.
Questions are a part of how we learn.
Cheers.
plus_rlus said:
<SNIP>
What kind of memories and storages are most commonly found in Android devices? One main memory (i.e. RAM)? One Flash memory for firmware (i.e ROM)? Another separate flash drive that acts as mass storage? Possibly SD card and USB stick as external mass storage?
What is firmware on Android devices?
What is the bootloader in (located in MBR part) on Android?
Linux is the kernel used by Android, which is started by the bootloader? After that, Android continues to boot, how?
A pile of terms, which I have ambiguities:
Bootloader; What's it like on Android? It is often characterized as hardware specific. So is it the case that the bootloader in Android is firmware? So in Android, the firmware runs the tasks of the PC world BIOS and bootloader (located in the MBR part), and then starts the Android located on the mass storage?
Recovery; What is this technically?
Android ROM; I can't understand this. As far as I know, Android is an operating system located mass storage, not Read-Only-Memory firmware.
Rooting; On a PC, we are used to the fact that the owner of the device has root rights. Is it just that the manufacturers have decided to set the default root password to some generated random string, and by default, the user only has access to the basic user account?
After the above has been answered, I would like someone to explain to me (separately) technically, starting from the hardware level (where and how), how do Android devices booting and work? Links to additional information are also welcome. hank you very much! If anyone can answer my questions, thank you very much!
Click to expand...
Click to collapse
Firmware is the hardware specific drivers, library files and other resources that are supplied by the manufacture(s) and are chipset specific.
The firmware is proprietary and normally closed source. Basically the parts that make the hardware work.
The bootloader is what actually boots the device.
This is supplied by the device manufacture(s) and is device specific.
It is separate from the system.​
Recovery is a mini Android environment.
- Factory (Stock) recoveries are restricted to the user but have unrestricted (root) access to the device.
- Custom recoveries (TWRP, OrangeFox, ..) allow the user unrestricted (root) access to the device.
Android ROM (rom) is the actual system (OS) and normally you would include the version that you are running.
Stock roms - Google 12L, AOSP xx, OOS 12, MIUI xx, ColorOS xx, ...
Custom roms - Lineage 19.1, crDroid 12.1, AospExtended 12.1, ...
In computer terms it would be..
Windows 7, Linux (Fedora 34), MacOS Monterey.​I am not sure what the current versions of MIUI and ColorOS are, hence the xx.​
Once the bootloader boots the device, a few things can happen.
- The system boot image (system kernel) takes over and boots the device into system (rom).
- The recovery boot image (recovery kernel) takes over and boots the device into recovery (mini Android environment).
- If system fails to boot, device reboots into recovery (Recovery Party) if recovery can boot.
- If no boot image takes over, you will stay in the bootloader, reboot into some special mode or just a good old fashion boot-loop.
There have been a lot of changes to Android though the years..
Each device, manufacture, Android version.. can be different from another.
The most common bootloader is (or supports) fastboot but, this is manufacture and device specific.
Not to be confused with fastboot_d (new story that started with Android 10/11?).​This has also changed though the years, some manufacture use their own variation of bootloader.
HTC had H-BOOT, Samsung does their own thing along with some other manufactures.
Rooting....
By default the substitute (switch) user su command is removed from Android.
This is what most refer to as superuser since it defaults to root user if you do not specify a substitute user.​
This has been a long and changing story in the Android world also.
Old but, well worth the read.
How-To SU - [chainfire.eu] - Link
The current most popular used root solution is Magisk.
It is a little more than just su. ​Magisk - [GitHub] - Link
---
It might be easier if you see an actual partition table.
Nexus 7 16 Gig WiFi - [PastBin] - Link
Might as well make it an ... interesting one.
In this example, userdata only has 1.2 Gigs since the rest is used by other partitions.
userdata is mounted as /sdcard.​
Save for boot, cache, system, misc, recovery and userdata.
The other partitions would be considered firmware.
When the device boots, the partitions get mounted to /dev/block.
Hope it helps more than confuse.
Cheers.

Categories

Resources