Related
For the last couple of weeks i'm trying to get a Blur-rom working on my G1, but sadly it's giving me alot of problems.
I mainly tried flashing it from scratch, which means im running the following setup:
Running a class 6, microsd card;
fat32 (7200mb)
ext3 (500mb)
linux-swap (128mb)
Click to expand...
Click to collapse
I also tried the same setup, except i used ext2 instead of ex3.
The problems I have;
After flashing the rom everything works ok. I sign in to motoblur, and set everything up. But after doing a reboot, the problems start. Right after I enter my pincode, and the homescreen starts loading, i'm getting force closes all over. In the end all I see is a blackscreen, and the white taskbar.
Is my setup wrong? If you ppl want more information, I can flash it again, and will try to collect some logs.
Thx in advance.
*bump*
Still having the same problems, also when running the newest blur rom around (Motorola Blur / S-Blur_1.071 - Bluetooth).
Here is more info (my logs)
http://pastebin.com/m1b544f9c
Hopefully somebody can help, since I wanna run this one on my phone badly
FREAKJAM said:
*bump*
Still having the same problems, also when running the newest blur rom around (Motorola Blur / S-Blur_1.071 - Bluetooth).
Here is more info (my logs)
http://pastebin.com/m1b544f9c
Hopefully somebody can help, since I wanna run this one on my phone badly
Click to expand...
Click to collapse
First what kind of phone do you have? G1/MT3G/Hero ?
Next, did you make sure and do a COMPLETE wipe on your phone?
This means erase:
/system/sd/app_s
/system/sd/dalvik-cache
/system/sd/app
/system/sd/app-private
All of /data
You would do that from the Recovery screen. You can't just go into Recovery, then choose Drop to a terminal and then type
Code:
busybox rm -rf /system/sd
That won't work, when you boot into Recovery none of your partitions are mounted. And choosing "Do a data wipe" from the recovery menu DOES NOT erase your /system/sd partition. You need to mount /system/sd before clearing everything off of it.
As far as your partitions are concerned, keep it as ext2 and not ext3. Read the first post in the Blur thread and it explains how your sdcard should be partitioned.
You should also probably run a fsck on your ext2 partition to make sure it's still functional.
Code:
e2fsck -fy /dev/block/mmcblk0p2
And also verify your swap is still good
Code:
mkswap /dev/block/mmcblk0p3
Given the errors you're having it sounds like you did not do a complete wipe as explained in the first thread, or your ext2 partition is corrupt and you just need to run a fsck on it
I installed the rom completely fresh on a G1 (dream), formatted my sdcard and made 3 new partitions using parted on the recovery console.
So basically saying this isn't enough?
reformatting my sd card now and did the following;
mkpartfs primary fat32 0 7200
mkpartfs primary ext2 7200 7700
mkpartfs primary linux-swap 7700-7828
busybox rm -rf /system/sd
e2fsck -fy /dev/block/mmcblk0p2 (no errors)
mkswap /dev/block/mmcblk0p3 (swap information 128mb, so seems good)
Click to expand...
Click to collapse
will flash now, and get back to you when i have more info
FREAKJAM said:
I installed the rom completely fresh on a G1 (dream), formatted my sdcard and made 3 new partitions using parted on the recovery console.
So basically saying this isn't enough?
Click to expand...
Click to collapse
Technically yes that is all you would need, but once again follow the steps I outlined. No need to blow away partitions. I don't know your level of expertise so I don't know if you're doing it correctly. For all I know you could be creating the partitions, then forgetting to format /dev/block/mmcblk0p1 as fat32, or forgetting to format /dev/block/mmcblk0p2 as ext2, or forgetting to mkswap on /dev/block/mmcblk0p3.
Since you are the only one having this issue it basically means you are missing a step somewhere along the way. The ROM does not hate your phone, lol.
Please follow the regular ROM flashing guidelines. After you create the partitions make sure you can manually mount the fat32 partition at /sdcard and the ext3 partition at /system/sd. Also make sure you didn't somehow screw up the phone parititions, IE /dev/block/mtdblock[1-5]
I think I flashed my phone atleast 200x in the last 6 months..
I'm very addicited to flashing, and I setup a hero rom just like that using parted.
I always reformat my sdcard to start "fresh".
Anyways, flashing now
parted /dev/block/mmcblk0
GNU Parted 1.8.8.1.179-aef3
Using /dev/block/mmcblk0
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
print
print
Model: SD USD (sd/mmc)
Disk /dev/block/mmcblk0: 8017MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 512B 7200MB 7200MB primary fat32 lba
2 7200MB 7700MB 500MB primary ext2
3 7700MB 7828MB 128MB primary linux-swap(v1)
Click to expand...
Click to collapse
e2fsck -fy /dev/block/mmcblk0p2
e2fsck 1.41.6 (30-May-2009)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/block/mmcblk0p2: 11/244320 files (0.0% non-contiguous), 30701/488281 blocks
Click to expand...
Click to collapse
mkswap /dev/block/mmcblk0p3
Setting up swapspace version 1, size = 127995904 bytes
Click to expand...
Click to collapse
FREAKJAM said:
I think I flashed my phone atleast 200x in the last 6 months..
I'm very addicited to flashing, and I setup a hero rom just like that using parted.
I always reformat my sdcard to start "fresh".
Anyways, flashing now
Click to expand...
Click to collapse
K lemme know how that goes. If it crashes like that again do something for me, open up a shell using "adb shell" and do "cat /data/a2sd.log" and tell me what it says
Here is my log, phone is still booting tho, but seems a2sd is done already.
Beginning a2sd at 05:50 06/16/2009
Does post install script exist: No
Does /dev/block/mmcblk0p2 exist: Yes
Running fsck ....
e2fsck 1.41.6 (30-May-2009)
ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab file while determining whether /dev/block/mmcblk0p2 is mounted.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/block/mmcblk0p2: 11/244320 files (0.0% non-contiguous), 30701/488281 blocks
Mounting /system/sd : Ok
Changing owner on /system/sd to app user: Ok
Changing permissions on /system/sd to 771: Ok
Cleaning up any symlinks in /data
Moving apps to SD finally....
Created /system/sd/app
Changed uid/guid to app user on /system/sd/app
Changed permissions to 771 on /system/sd/app
*****CRITICAL / Watch below for errors ******
Moving /data/app: Ok
Deleting /data/app: Ok
Creating symlink to /system/sd/app: Ok
***** CRITICAL DONE ******
Created /system/sd/app-private
Changed uid/guid to app user on /system/sd/app-private
Changed permissions to 771 on /system/sd/app-private
Created /system/sd/dalvik-cache
Changed uid/guid to app user on /system/sd/dalvik-cache
Changed permissions to 771 on /system/sd/dalvik-cache
*****CRITICAL / Watch below for errors ******
***** CRITICAL DONE ******
Mounting dalvik-cache: Ok
Setting owner to app use for /data/dalvik-cache: Ok
Setting permissions to 771 on /data/dalvik-cache: Ok
Finished 05:50 06/16/2009
Click to expand...
Click to collapse
Still splashscreen on my phone atm.. booting takes longer then normal! Waiting for around 5 mins now.. will wait a bit longer
FREAKJAM said:
Here is my log, phone is still booting tho, but seems a2sd is done already.
Still splashscreen on my phone atm.. booting takes longer then normal! Waiting for around 5 mins now.. will wait a bit longer
Click to expand...
Click to collapse
Well what is adb logcat showing? Is it still progressing? Is it throwing errors?
Redid a total new format and flash cuz it was taking pretty long..
here is some stuff from the logcat;
http://pastebin.com/d2fef07f0
still on the splashscreen for some minutes now..
FREAKJAM said:
Redid a total new format and flash cuz it was taking pretty long..
here is some stuff from the logcat;
http://pastebin.com/d2fef07f0
Click to expand...
Click to collapse
The ONLY way to get the errors you got there are from a pre-existing installation on your phone.
#
E/PackageManager( 1714): Package com.arcsoft.mediagallery has no signatures that
#
match those in shared user android.media; ignoring!
Click to expand...
Click to collapse
Your md5sum for the update should be:
62b9b3925e95b70eda1c77e8317dc7a9 S-Blur_1.071-full.zip
If it is not then re-download the update again and try flashing.
Redo a wipe and when you are positive you have wiped, check manually that all the files are gone. Don't re-partition/format. Just do the following from recovery shell
Code:
mount /system/sd
busybox rm -f /system/sd/app_s/*
busybox rm -f /system/sd/dalvik-cache/*
busybox rm -f /system/sd/app/*
busybox rm -f /system/sd/app-private/*
umount /system/sd
mount /data
busybox rm -f /data/app/*
busybox rm -f /data/app_s/*
umount /data
mount /system
busybox rm -f /system/app/*
umount /system
Phewww, then do a flippin flash of the ROM. That should GUARANTEE that you have a clean wipe.
G:\>md5 S-Blur_1.071-full.zip
62B9B3925E95B70EDA1C77E8317DC7A9 S-Blur_1.071-full.zip
Click to expand...
Click to collapse
did the whipe just like u said..
and now flashing again.. pfew
will keep u posted!
thanks for the help so far!
It installed, and I logged in to gmail etc.
after first reboot, again FC all over. This rom really must hate my phone
http://pastebin.com/dc9c4e47
E/AndroidRuntime( 1844): java.lang.NullPointerException
E/AndroidRuntime( 1844): at java.util.Locale.setDefault(Locale.java:855)
did you make it through set up?
can u make it into settings and mess with that?
what blur rom are you flashing? it may be messed up
I can set everything up, all the info bout what rom I am currently trying to flash is found in the 2nd post.
After the first reboot, it's giving all the force closes.
FREAKJAM said:
It installed, and I logged in to gmail etc.
after first reboot, again FC all over. This rom really must hate my phone
http://pastebin.com/dc9c4e47
Click to expand...
Click to collapse
Where are you located? The US/Europe/somewhere else? It's having issues setting your locale. When the setup first comes up, are you selecting US English?
I'm from Holland. I select US English yes, but I vaguely remember that it jumped to Deutsch, and that I can't change it back to English.
Perhaps it won't let me run this rom since i'm from the EU.
FREAKJAM said:
I'm from Holland. I select US English yes, but I vaguely remember that it jumped to Deutsch, and that I can't change it back to English.
Perhaps it won't let me run this rom since i'm from the EU.
Click to expand...
Click to collapse
Hmmm there's a very good chance that it wouldn't work if you chose anything but English. You may need to use a different libril.so since the one in the ROM is for US. Or Motorola might have designated this only for US users as they will have a different device (the Dext ?) for Europe. Basically it's the Cliq but for overseas. Anyways, erase everything again, reflash and this time make sure you select US English and everything else US just in case Motorola is not allowing anyone outside of US. If that doesn't work you might be out of luck.
You would need to unpack the ROM and hack it to work on your device. Kind of how we hack it to work on G1's
I don't have to skills to "hack" system files. I'll try one more time, trying a US setup. Otherwise ill just have to live with it. Thanks for all the help, esp shafty.
So I tried this baby again after playing with Hero Eclair for a while.
The problem is that the setup-language during the first setup keeps jumping back to German. What files do I have to edit to remove the languages I dont need?
Thnx.
These are git repos for the initramfs that I pulled from the Austria Firmware and the Kernel Source downloaded and reuploaded to github. I'm going to fork and start working on a kernel for when I get the 7.7 myself, but if anyone else wants to start working on it and use them, feel free.
Kernel is still uploading, mistakenly reuploaded the initramfs twice. (Facepalm)
https://github.com/bedwa/P6800-Kernel
https://github.com/bedwa/P6800-initramfs
Enjoy guys!
I have a 6800 device imported from Hong Kong and have been trying to figure out how to port CWM recovery to it. I work as a developer but I haven't looked at this before as I haven't needed to
So far I have rooted the device and had a dig around the filesystem. The partitioning looks similar to the 7 plus:-
179 1 20480 mmcblk0p1 /efs
179 2 1280 mmcblk0p2 /boot
179 3 1280 mmcblk0p3 /mnt/.lfs
179 4 8192 mmcblk0p4
179 5 8192 mmcblk0p5
179 6 8192 mmcblk0p6 / recovery
179 7 204800 mmcblk0p7 /cache
179 8 16384 mmcblk0p8 <radio/modem>
179 9 851968 mmcblk0p9 /system
179 10 13791232 mmcblk0p10 /data
179 11 458752 mmcblk0p11 /preload
179 12 8192 mmcblk0p12
I'm trying to figure out what's in 4,5 and 12.
I have the kernel source code downloaded and buildig and I'm now looking at where to go next. If anyone can post any links to resources on the web which might speed up the process then it would be most appreciated. I don't have a lot of time to spend on this.
Could you "if dd" them and send me a link? I'll be able to find out which is the recovery.img. ;-)
P4 - https://rapidshare.com/files/2298175628/mmcblk0p4.img?bin=1
P5 - https://rapidshare.com/files/2298175628/mmcblk0p4.img?bin=1
P6 - (/recovery) https://rapidshare.com/files/1289796625/recovery.img?bin=1
Let me know what you find and if you don't mind how you went about it. Have got to go and be sociable now
looking in /sys/block/mmbclk0/
gives all the partition info - name,size,ofset, corresponds with pit info from heimdall.
also interested in this
Heres the info (not sure if it helps):
mmcblk0/mmcblk0p4
alignment_ofset 0
discard_alignment 4265607168
inflight 0 0
partition 4
partition_name param
size 16384
start 57344
stat 25 118 1144 0 0 0 0 0 25 40
mmcblk0/mmcblk0p5
alignment_ofset 0
discard_alignment 4257218560
inflight 0 0
partition 5
partition_name kernel
size 16384
start 73728
stat 0 0 0 0 0 0 0 0 0 0
mmcblk0/mmcblk0p6
alignment_ofset 0
discard_alignment 4248829952
inflight 0 0
partition 6
partition_name recovery
size 16384
start 90112
stat 0 0 0 0 0 0 0 0 0 0
mmcblk0/mmcblk0p7
alignment_ofset 0
discard_alignment 4240441344
inflight 0 0
partition 7
partition_name cache
size 409600
start 106496
stat 11 128 20 6 2 64 465 0 280 485
mmcblk0/mmcblk0p8
alignment_ofset 0
discard_alignment 4030726144
inflight 0 0
partition 4
partition_name modem
size 32768
start 516096
stat 58 2560 20944 380 0 0 0 0 330 380
mmcblk0/mmcblk0p9
alignment_ofset 0
discard_alignment 4013948928
inflight 0 0
partition 9
partition_name factoryfs
size 1703936
start 548864
stat 8796 407 701658 31365 0 0 0 0 15540 31325
Thanks - that helps confirm what I had found by digging around and completes the list of partitions.
I have now extracted initramfs from both the runtime and recovery kernels.
Now I need to find time to do some reading on how to port CWM recovery.
Anyone know whats in the param partition?
A quick update....
The partitioning for the 7.7 is very similar to the 7plus.
I have been in contact with the garyd9 who ported CWM to the 7plus and he has given us a few pointers including his github username.
See:-
http://forum.xda-developers.com/showthread.php?p=21717604#post21717604
Interestingly he says that it's likely that the samsung's kernel source release will not have the correct defconfig so we are going to need to tweak it.
The recovery binary gets compiled from the Cyanogenmod sources which are easily obtained.
Unfortunately I'm going to be tied up with my day job for most of this week but will try and look at this again on Friday.
Is there anyone that can keep the ball rolling while I'm busy?
Thanks
Ddraig
I'm getting this one and selling my Note. I'm so excited to see you guys working out of something for P6800 here.
Thanks to all devs in advance!
...........
Dark-Master said:
I'm getting this one and selling my Note. I'm so excited to see you guys working out of something for P6800 here.
Thanks to all devs in advance!
Click to expand...
Click to collapse
+1 here
Anybody want to buy my outdated,used Note?
Hehehe.. well, at least I just *seconds ago* ordered my Tab 7.7 from ebay uk.
Let the modding and ROM flashing begin!
@Lucid what's wrong with your Note..?
Sent from another Galaxy...
Nexus
There is nothing wrong with my Note, it is the best phone I've ever had.
So I went ahead and bought the 7.7 to see if that one is even better. Needs to arrive still.
I intend to use it as a daily phone and will keep it to my ear if needed,
no matter the reactions of other people.
Gadgetwise, I live for myself, not the general public.
I might sell on of them, but history shows I keep all my "old" phones.
I use my galaxy nexus for day to day but since finding out about phoneleash i dont really touch my phone anymore.. check out phone leash if you have two SIMs.. although i guess it can work with GV also..
Sent from another Galaxy...
Tab 7.7
I placed my 7.7 next to my Titan, Sensation and the Galaxy Note today to see how it fares, no way is it practical to put to the ear and it is pretty ridiculous to carry. It's a compact device but not THAT compact. My Kindle Fire was more handy. The bezel is too large.
However, the phone functionality is superb and if one can find an unobtrusive way to carry it, we could finally unify our communication requirements in one device.
lucid said:
There is nothing wrong with my Note, it is the best phone I've ever had.
So I went ahead and bought the 7.7 to see if that one is even better. Needs to arrive still.
I intend to use it as a daily phone and will keep it to my ear if needed,
no matter the reactions of other people.
Gadgetwise, I live for myself, not the general public.
I might sell on of them, but history shows I keep all my "old" phones.
Click to expand...
Click to collapse
monakh said:
.However, the phone functionality is superb and if one can find an unobtrusive way to carry it, we could finally unify our communication requirements in one device.
Click to expand...
Click to collapse
Check out the Samsung HM5000 Bluetooth pen thingy.
Y Ddraig Goch said:
A quick update....
The partitioning for the 7.7 is very similar to the 7plus.
I have been in contact with the garyd9 who ported CWM to the 7plus and he has given us a few pointers including his github username.
See:-
http://forum.xda-developers.com/showthread.php?p=21717604#post21717604
Interestingly he says that it's likely that the samsung's kernel source release will not have the correct defconfig so we are going to need to tweak it.
The recovery binary gets compiled from the Cyanogenmod sources which are easily obtained.
Unfortunately I'm going to be tied up with my day job for most of this week but will try and look at this again on Friday.
Is there anyone that can keep the ball rolling while I'm busy?
Thanks
Ddraig
Click to expand...
Click to collapse
Ddraig - I have been trying to get this get up and running.
So far I have managed to compile a zImage (recovery.img) using pretty much with the default config. Flashed through heimdall
I have used garyd9 recovery_initramfs, used his /sbin folder as is. The rest of the files are taken from the stock gt-6800 ramdisk inc modules. Where necessary make changes to partition entrys.
It boots in to clockworkmod recovery fine. It can mount all partitions but not /cache partition properly. I have checked the path and it seems correct ??
(I can mount via adb but cwm says it cant find it)
I will try building recovery binary at some point but will be busy for some days now.
I can you sent you some of my config files / recovery.img if it helps.
ezynow said:
Ddraig - I have been trying to get this get up and running.
So far I have managed to compile a zImage (recovery.img) using pretty much with the default config. Flashed through heimdall
I have used garyd9 recovery_initramfs, used his /sbin folder as is. The rest of the files are taken from the stock gt-6800 ramdisk inc modules. Where necessary make changes to partition entrys.
It boots in to clockworkmod recovery fine. It can mount all partitions but not /cache partition properly. I have checked the path and it seems correct ??
(I can mount via adb but cwm says it cant find it)
I will try building recovery binary at some point but will be busy for some days now.
I can you sent you some of my config files / recovery.img if it helps.
Click to expand...
Click to collapse
Sounds like you have made some progress with custom recovery, you need to be careful if you are using garyd9 recovery_initramfs on your device, note one i think this for a wifi device being p6210 if you device is a p6800 check all the mounting points as there are some slight differences between wifi and 3g devices. how did you compile your source and make compatible odin file. i'm on a mac and so far i can't get heimdall to work with p6810.
kassemja said:
Sounds like you have made some progress with custom recovery, you need to be careful if you are using garyd9 recovery_initramfs on your device, note one i think this for a wifi device being p6210 if you device is a p6800 check all the mounting points as there are some slight differences between wifi and 3g devices. how did you compile your source and make compatible odin file. i'm on a mac and so far i can't get heimdall to work with p6810.
Click to expand...
Click to collapse
After 2 days of kernel building and insmod, I've finally got a P6810 module to insmod successfully into my stock device. This is the config. It comes from the samsung source (GT-P6810_HC_Opensource) download with some DEBUG params turned off, and the local version set for the Australian DTKL5 firmware. I hope it can help someone avoid some trial and error pain. The p6800 guys may be able to turn off similar debugs and get theirs working. This is not fully tested, if you find other params that need changing please advise.
EDIT: I flashed this kernel to my device and it worked.
Here is more information on the environment.
CodeSourcery toolchain arm-2009q3-67-arm-none-linux-gnueabi.bin
Change the supplied Makefile CROSS_COMPILE to point to installed toolchain (eg, /home/davp/toolchains/arm-2009q3/bin/arm-none-linux-gnueabi-)
Copy the supplied file to .config in the directory where you unpacked the kernel source, then run make
Links http://forum.xda-developers.com/showpost.php?p=21870378&postcount=23 for how to do a basic initramfs to go with the new kernel (the result of this is running a command like: make -j5 CONFIG_INITRAMFS_SOURCE=initramfs_root, and then tar and flash the zImage).
Copy of the .config file (from the kernel directory):
Can you confirm you have suscessfully compiled and flashed a working kernel?
I want to have a crack at custom recovery for the p6810, i'm pretty confident we can getting going using a blend of sources from https://github.com/garyd9/initramfs_recovery_GT-P6210 and our kernel stuff.
davp said:
After 2 days of kernel building and insmod, I've finally got a P6810 module to insmod successfully into my stock device. This is the config. It comes from the samsung source (GT-P6810_HC_Opensource) download with some DEBUG params turned off, and the local version set for the Australian DTKL5 firmware. I hope it can help someone avoid some trial and error pain. The p6800 guys may be able to turn off similar debugs and get theirs working. This is not fully tested, if you find other params that need changing please advise.
Click to expand...
Click to collapse
Oh great - the 7.7 also has binary-only modules?
Freaking Samsung, I thought they were making progress with the I9100/I777 (100% open-source kernels, no proprietary modules).
Good luck bedwa - feel free to browse my github for Exynos tips (although much of it will not directly patch onto HC kernels), garyd9 knows what he's doing too.
Hi All,
Some saw this already, but in case you missed it:
So, here is information regarding this if you are interested in participating:
1) I said it already, but I mean it! It's potentially dangerous for your tablet and it could brick it definitively. Don't apply if you're not ready to loose your tablet. My script should be safe, I used it successfully multiple time on my g9 and my it2, but that's why I want beta test with brave (crazy ?) testers.
2) Please read the whole post carefully before applying. If things seems fuzzy or complicated or you don't feel comfortable with this, wait for the end of beta, I'll probably simplify things afterwards.
3) Repartitioning will erase your internal storage and your data partition. Do backups on micro-sd or PC before doing it.
4) Your device should be SDE enabled before applying.
5) You should have a micro-sd with at least 1 GB free.
5) Your device should be flashed with last 4.0.5 official firmware.
5) At the end, you should have a dual boot CWM/Android (or triple if you want to go with the optional second partition). Your new android build (rooted of course) will be running on a separate ext4 partition, natively. No more loopback.
Here is how I would like to proceed:
1) Apply in PM. I will take a limited number of testers at first as I want to be present when you'll do it to be able to check the new partition layout and help fixing potential problem. If everything goes well, I'll open beta more widely.
2) If I give you the ok in PM, contact me on IRC starting this afternoon (CET). I won't be present whole weekend and I can't give more precise information on when I'll be there. I'm on vacation for two weeks so I should be pretty available. I'll be hanging on #archos and #openaos on freenode but I won't be always in front of PC, so send a direct chat and see if I reply, I don't want to clutter these channels with this . If I'm present, we'll go through the whole procedure.
Here is the procedure, just here for reference, we'll do it together. It looks a bit complicated looking at it, but it's quite easy in fact. I will simplify the procedure at the end of the beta test, but during beta all steps will be done one by one to give me a chance to follow it closely.
1) Flash cwm
2) Boot developer edition, you should see cwm, backup your device partition table:
Code:
adb shell mount /sdcard
adb shell dd if=/dev/block/mmcblk0 of=/sdcard/backup_partitions.bin bs=1024 count=100000
3) Push scripts to device:
Code:
adb push simulation.sh /tmp/
adb push execute.sh /tmp/
adb push reformat.sh /tmp/
adb shell chmod 755 /tmp/simulation.sh
adb shell chmod 755 /tmp/execute.sh
adb shell chmod 755 /tmp/reformat.sh
4) Do simulation *:
Code:
adb shell /tmp/simulation.sh
it should look like that at the end:
Code:
Disk /dev/block/mmcblk0: 7457 MB, 7457472512 bytes
4 heads, 16 sectors/track, 227584 cylinders
Units = cylinders of 64 * 512 = 32768 bytes
Device Boot Start End Blocks Id System
/dev/block/mmcblk0p1 5 1605 51200+ 83 Linux
/dev/block/mmcblk0p2 1605 10760 292969+ 83 Linux
/dev/block/mmcblk0p3 10761 34198 750000+ 5 Extended
/dev/block/mmcblk0p4 34198 227584 6188367+ 83 Linux
/dev/block/mmcblk0p5 10761 11011 8024 83 Linux
/dev/block/mmcblk0p6 11012 22575 370040 83 Linux
/dev/block/mmcblk0p7 22576 34197 371896 83 Linux
5) If I give you the go, do real one *:
Code:
adb shell /tmp/execute.sh
6) Verify repartition *:
Code:
adb shell cat /proc/partitions
7) Format new partitions *
Code:
adb shell /tmp/reformat.sh
8) Remount rawfs to be able to reboot:
Code:
adb shell mount -t rawfs /dev/block/mmcblk0p1 /mnt/rawfs
9) Reboot with this command:
Code:
adb shell reboot_into sde
then select cwm again.
10) Copy build zip to microsd
Code:
adb shell mount /sdcard
adb push letama-4.0.5-1.zip /sdcard/
11) Install new build from CWM
select "install zip from sdcard"
select "choose zip from sdcard"
select "letama-4.0.5-1.zip"
select again "letama-4.0.5-1.zip"
12) Wait for installation
13) Verify cwm log *
Code:
adb shell cat /tmp/recovery.log
14) reboot with this command:
Code:
adb shell reboot_into sde
15) Let it boot android
* means that I want to see the result of this point before doing next one.
And voila! Looks complicated, but it's not. Still tempted ?
Notes:
- This build is using a modified kernel, there is a bug in hsmmc that crashes the tablet when installing build on ext4 partition.
- ClockworkMod is functional but few things are not finished/not like I want: wipe Cache/dalvik-cache are not wiping the right location, don't use them. Reboot is a normal reboot, it won't reboot to SDE. Except this, everything should work.
Feedback from beta:
- Five success so far, looking good.
- In one instance, new firmware didn't boot because of audio system crashed in kernel. A power down (15 seconds until led goes off) / power on fixed it.
- adb in cwm is using old honeycomb usb ids, I'll try to fix that. If you are in linux and can't get adb with it, "sudo adb kill-server ; sudo adb start-server" could help.
- cwm mass storage export doesn't work.
- Wipe data/factory reset in CWM doesn't work properly and trash data partition. Don't use it.
Thanks to all beta-testers!
Ok i use !
Hi!
Thank you Master , for your hard work ! Nice to have CWM in our Archos tablet ...
will there be an edition of this for hdd enabled machines?
if so i will be up for testing
it is good
!
http://www.jbmm.fr/?p=27625
thanks!
it is working fine
now i can develop my own roms for it
philmein said:
will there be an edition of this for hdd enabled machines?
if so i will be up for testing
Click to expand...
Click to collapse
"just" for flash 8 and 16go not for 250go
Gen9 reformatted and works fine
Great gen_scheisskopf !
on what tablet
for me 101 gen8 16go
cajl said:
Great gen_scheisskopf !
on what tablet
for me 101 gen8 16go
Click to expand...
Click to collapse
Gen9 101 16GB also
hi,
I am new in the archos gen9 development.
I have a question: how to use dual boot (I have cwm working)??
The second menu entry mounts mmcblk0p7 and switch_root to it. So basically you have to prepare your build on it with roofs and system merged.
another thing:
usb mass storage isn't working (will be an easy fix)
this is because of ICS have MTP and don't have mass storage.
i can't fix it (don't know how cwm works)
Error is: unable to open ums lunfile (no such file or directory)
doomlord fixed it on all xperia 2011 devices with ICS (don't know how)
ICXPlay said:
usb mass storage isn't working (will be an easy fix)
this is because of ICS have MTP and don't have mass storage.
Click to expand...
Click to collapse
Thanks for feedback. I'm not surprised, I'll take a look...
I've made a driver that works for xp maybe win7 that works with this if anyone what's it ill upload it
Does kernel support mass storage at all?
adb gadget in kernel has mass storage enabled, yes, but it doesn't seem to work.
Anyway, I was more thinking about enabling mtp, didn't have time to look at it yet.
* Warning to all beta testers *
Don't try Wipe data/factory reset, it's broken currently and kills data partition.
It's recoverable if you know how to format it, but if you boot Archos recovery, it could detect that the partition is invalid and re-partition your device as stock.
But dalvik-cache wipe works? I'm asking just in case
tapatalked from Xperia Arc S
Yes, dalvik-cache wipe in advanced works.
During my time hacking on android I've discovered some nice easter eggs deep in the android platform. One such easter egg is the mounting of ext4 images directly in the init.rc script. This is a feature I have never seen used by any oems and only by one custom rom [ EDIT: and by letama in his Sony Xperia Boot Manager ]! looking at the git logs this functionality has been present since September 2010 [ commit 49b8124a1759cb8b27e0c21a1a5a54b8a81bdb19 ]. What this effectively gives us is the ability to overlay a pseudo partition layout over the top over the existing layout, thus avoiding any "Danger" of accidental bricking the device by reformatting the SDCard. This is very similar to the way archos mount the stock file system and a variation/extension on the existing methods we use for the SDE Roms.
Although the explanation assumes the use of the SD models it should be fairly straightforward to apply the the HDD models.
THE METHOD:
PART 1 - Prepare a recovery ext4 image file
1. Build CWM6 from the CM10 source.
2. Modify The Recovery's init.rc file to look something similar to this
Code:
on early-init
start ueventd
on init
export PATH /sbin
export ANDROID_ROOT /system
export ANDROID_DATA /data
export EXTERNAL_STORAGE /sdcard
symlink /system/etc /etc
mkdir /boot
mkdir /sdcard
mkdir /system
mkdir /data
mkdir /cache
mount /tmp /tmp tmpfs
mkdir /partitions 0771 system system
mount ext4 /dev/block/mmcblk0p4 /partitions
# Mount /system rw first to give the filesystem a chance to save a checkpoint
mount ext4 [email protected]/partitions/CAC /cache nosuid nodev
mount ext4 [email protected]/partitions/DATA /data nosuid nodev
mount ext4 [email protected]/partitions/SYS /system
mount ext4 [email protected]/partitions/SDCARD /sdcard nosuid nodev
mount ext4 [email protected]/partitions/BOOT /boot
on boot
ifup lo
hostname localhost
domainname localdomain
class_start default
service ueventd /sbin/ueventd
critical
service recovery /sbin/recovery
service adbd /sbin/adbd recovery
disabled
# Always start adbd on userdebug and eng builds
# In recovery, always run adbd as root.
on property:ro.debuggable=1
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18D1
write /sys/class/android_usb/android0/idProduct D001
write /sys/class/android_usb/android0/functions adb
#write /sys/class/android_usb/android0/enable 1
write /sys/class/android_usb/android0/iManufacturer $ro.product.manufacturer
write /sys/class/android_usb/android0/iProduct $ro.product.model
write /sys/class/android_usb/android0/iSerial A101S_REC
#start adbd
setprop service.adb.root 1
# Restart adbd so it can run as root
on property:service.adb.root=1
write /sys/class/android_usb/android0/enable 0
restart adbd
write /sys/class/android_usb/android0/enable 1
3. Modify the etc/recovery.fstab to look like this
Code:
# mount point fstype device
/cache ext4 /dev/block/loop1
/data ext4 /dev/block/loop2
/system ext4 /dev/block/loop3
/sdcard ext4 /dev/block/loop4
4. Creating an empty ext4 image file name REC and mount it on your pc. [ 5MB should do it ]
5. Copy the contents of the built recovery/root directory to the root of your mounted image.
6. chmod init.rc , default.prop and ueventd.rc to 644 ( rw-r-r- )
7. umount the ext4 image and push it to the root of you data partition
That's stage 1 complete. Part 2 Will Follow Shortly.....
Part 2 - Make a dual boot initramfs.cpio.lzo
1. Change the name of the /data directory to /bootdata by modifying the etc/mountpoints file in the initramfs.cpio.lzo. This stops CWM getting confused when trying to un/mount the data partition
Code:
mount_name mount_dev mount_point mount_fs mount_opts volume_name error_code custom_opt
rawfs /dev/mmcblk0p1 /mnt/rawfs rawfs none 150
system /dev/mmcblk0p2 /mnt/system ext4 rw,noatime,noexec system 152
bootdata /dev/mmcblk0p4 /bootdata ext4 rw,noatime,noexec bootdata 154 crypt_compat
storage /dev/mmcblk1p1 /mnt/storage ext4 rw,noatime #storage_name# 155
storage_A80S /bootdata/media /mnt/storage bind bootdata none 155
storage_A101S /bootdata/media /mnt/storage bind bootdata none 155
storage_A101XS /bootdata/media /mnt/storage bind bootdata none 155
storage_LUDO /bootdata/media /mnt/storage bind bootdata none 155
storage_A80H /dev/hdd1 /mnt/storage ext4 rw,noatime #storage_name# 155
storage_A101H /dev/hdd1 /mnt/storage ext4 rw,noatime #storage_name# 155
usbhost_ehci /dev/storage_ehci1 /mnt/usbhost_ehci vfat rw,noatime,utf8,shortname=mixed none 156
usbhost_otg /dev/storage_otg1 /mnt/usbhost_otg vfat rw,noatime,utf8,shortname=mixed none 156
rfsext4 /dev/loop0 /new-root ext4 rw,noatime none 157
rfsext3 /dev/loop0 /new-root ext3 rw,noatime none 157
rootfs /dev/loop0 /new-root squashfs ro,cts_compat none 157
ramdisk /tmp/ramdisk /ramdisk vfat loop,rw,utf8,shortname=mixed #ramdisk_name# 158 ramdisk,ramdisk_size=256
2. Using sirduke989 dmenu initramfs you can modify the init script in the initramfs to mount /bootdata instead of /data and also add /bootdata/REC and /bootdata/BOOT to the list
of known locations , I see this a temporary measure as there are a number of other ways to enable dual ( Triple?!? ) booting
3. Flash the modified initramfs and your choice of kernel using either the recovery menu or kd_flasher, I used the 3.0.21 kernel extracted from the 4.0.24 aos file.
You should now be able to boot into CWM Recovery!
{
"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"
}
Clearly I'm a developer not a photographer!!
Part 3 - Create rest of the "partition" images.
You should have a /partitions directory in you device root, This is what is normally mounted as your /data ( /dev/block/mmcblk0p4) and contains normal android user data e.g installed app settings databases etc. This is where I've created the reset of my Partitions which are just more ext4 images files. I did this using "dd if=/dev/zero ...." and "mke2fs -text4 ...." on the device through adb whilst booted into CWM. This saved time in pushing large empty ext4 files from my pc.
I called my image CAC ( cache ) DATA ( data ) SYS ( system ) SDCARD ( sdcard ) BOOT ( boot ) you can obviously call them what you like and place them anywhere as long as you match up the image names with those in init.rc and make sure the loop numbers are correct in the etc/recovery.fstab everything should be fine.
You can play around with the files sizes, I have an 8gb my current file sizes at the moment are
BOOT = 25MB
CAC = 500MB
DATA = 3GB
SYS = 500MB
SDCARD = 2GB
The sdcard mount point is probably worth pointing at an external sd if you have one available. I have a 32GB Class 10 that I'll probably set up.
After you've setup your psuedo partitions you should then be able to reboot into recovery, if you've done things correctly you mount output should contain the following
Code:
/dev/block/mmcblk0p4 on /partitions type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
/dev/block/loop1 on /cache type ext4 (rw,nosuid,nodev,relatime,user_xattr,barrier=1,data=ordered)
/dev/block/loop2 on /data type ext4 (rw,nosuid,nodev,relatime,user_xattr,barrier=1,data=ordered)
/dev/block/loop3 on /system type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
/dev/block/loop4 on /sdcard type ext4 (rw,nosuid,nodev,relatime,user_xattr,barrier=1,data=ordered)
/dev/block/loop5 on /boot type ext4 (rw,relatime,user_xattr,barrier=1,data=ordered)
Everything seems to function correctly, I have successful done a backup and restore of my system partition. I have also applied CWM-SuperSU.zip through install zip from sdcard. Mounting and Remounting works although I'm not sure if Mount USB Storage works yet, I didn't on linux and I've not tested on windows and finally wiping and formating was also successful.
Part 4 - Notes on setting up rom images.
Now you may of already realized normal archos images don't come as separate the /boot and /system images so work is require to split them up.
Also if you want to split the /system from the reset of a archos image your boot partition will need to be about 50MB as archos have they /bin /lib /usr directories which contains binary files that use /lib/libuClibc-*.so as it's libc which brings there root filesystem in at around 38MB.
There is a very strong case for ditching these binaries especially when using AOSP/CM based roms. My intial tests show this is possible.
Just like the recovery init.rc Similar changes have to be made to the roms init.rc
Moving Forward:
of course, there's a lot to do but I wanted to at least get this initial information out there for people to consider. I'm currently booting a Linaro 4.1.1 rom using the split partitions. I have also been working on better booting methods which is why I haven't given any details re the initramfs init script but It's fairly straight forward to adjust and adapt. I'll write up more details soon!
More Research!
As I mentioned, I've been further looking into different booting methods and I think I'm approaching what could be a workable solution that will make the Gen9 more like standard android devices
Here's some more of my findings
1. It turns out that we can dump the existing initramfs.cpio.lzo and we can use a standard android ramdisk layout as the android init will load instead of the init script that is currently being used, this also removes the need for switch root and other nonsense that archos have in there. There was one gotcha when had me stumped for about ten minutes, I needed to add "write /sys/class/leds/lcd-backlight/brightness 75" to the init.rc to turn the screen on.
2. It's possible to stop android either using adb shell stop or stopping each service zygote etc, and start CWM while android is booted. It's probably also feasible the manage booting between recovery and android using the persist properties system which should make switching between the 2 fairly easy to control without much tweaking to any binaries. Looking at other devices, namely samsung, they seem to do something similar with recovery being in the same boot.img as the standard files, they simply load a recovery.rc instead of the main init.rc, this might mean that we have to patch CWM to load the correct init.rc I've not looked at the code properly yet but It's not going to be an issue anyway as all the code is fully available, You've gotta love open source.
3. By mounting /dev/block/mmcblk0p1 to /mnt/rawfs we are still able to use abcbox, reboot_into writes to the params file in the partition to control boot switching, so we can maintain booting into sde while leaving the stock android partition in place. I was unable to get any immediate joy from kd_flasher, that maybe because we currently have the ramdisk we want to overwrite mounted as the rootfs. Again I can't imagine it being too difficult to jig this, It can probably be worked out by looking at the current recovery ramdisk scripts should kd_flasher style functionality be required at any point.
4. Most of the binaries that rely on uClibc can be recompiled against bionic without any issue, usb_modeswitch for example. If there are any closed source ones, then the dynamic linker ld-uclibc or whatever is called, ultimately symlinks back to uClibc and we can just grab the one file and place it in the /lib directory. I tested /usr/bin/lsdvd in this way and It seemed to work fine.
I've got all this going on while still leaving a stock android fully intact, which is a great fallback Just in case.... Keeping these modifications at a safe level is one of the primary goals to enable much wider use
I'll put together some examples within the next couple of days to demostrate what I'm talking about here.
I've got a Linaro 4.1.1 ( JRO03R ) which has working powervr drivers with a 3.0.21 kernel, although that's about all that's working on it at the minute.
It's more a proof of concept than anything else, The kernel would need recompiling to add tracefs functionality which is required by jellybean but using the same magic should leave the powervr drivers functioning still, If anyone's interested I can stick that up, I've foolishly deleted ( misplaced/can't remember ) the device files I used to build this.... Too many android source trees and not using git properly leads to school boy errors.
I'm currently working on an omapzoom 4.1.2 tree using the blaze_tablet device as a base, I think this may yield the best results for the archos.
I suppose one other thing to do is the fix up a stock rom to use these methods and give it CWM, that should be pretty simple to do. Although ICS is ooold and I'm really not a fan of some of archos' methods e.g booting 4 different devices off one firmware. Although to their credit they do demostrate just what possible with deviating android from it's normal standard structures.
Hopefully this has whetted your appetites, I'm pretty excited about what's possible here as I feel it brings these archos devices in line with most others.
Me Again!
Just a cheeky little update, I been trying the figure out the best approach to handle switching between android and recovery mode. In effect I kind of wanted to create a Stage 4 bootloader! because you can never have too many bootloaders LOL I certainly wanted to do a "proper" job on it and try to avoid changes to the android platform code.
While to doing research into this I found this patch to the linux kernel which the android team submitted for review, Reading the mailing list thread I don't think it's been accepted yet! It's true what they say about the Kernel Mailing List, You need to bring your A game and be sure of what your doing..
Anyways the patch add a boot-control-block driver to kernel which check for a boot flag, which is exactly what I need to make booting into alternative configuration nice and simple. I suppose it wouldn't be too difficult to chuck in support for the fastboot protocol on one of those configurations. So a CWM Shouldn't be too far off now!!!
As a little treat I've attached a recovery based ram disk if anyone what's to play, just flash it with you favourite kernel on to your sde partition. Then You can boot into recovery and set your self up a pseudo partition image layout through adb. You won't be able to be into android, obviously until you put your old initramfs back.......
This is totally unsupported.
Click to expand...
Click to collapse
I'm just chucking up for those who want to get a feel for to do so. If your uncomfortable playing around in this area then stand well back, It's not prime time yet!!!!
However Feel free to ask questions of a technical bent but If you can't get it to boot then tough luck I'm afraid for now! :laugh:
You shouldn't be able to do any damage with this be I wouldn't go selecting wipe/format etc until you've got some partition images sorted.
I've add abcbox to sbin and symlink reboot_into. It does not seem to fully reboot but It will set the boot flag which you then follow with a call to reboot, That will reboot back into CWM (sde).
Onward
EDIT: Here's the Init.rc and etc/recovery.fstab that It attempts to use.
Code:
on early-init
start ueventd
on init
export PATH /sbin
export ANDROID_ROOT /system
export ANDROID_DATA /data
export EXTERNAL_STORAGE /sdcard
symlink /system/etc /etc
mkdir /boot
mkdir /sdcard
mkdir /system
mkdir /data
mkdir /cache
mkdir /mnt
mkdir /mnt/rawfs
mount /tmp /tmp tmpfs
mkdir /partitions 0771 system system
mount ext4 /dev/block/mmcblk0p4 /partitions
mount rawfs /dev/block/mmcblk0p1 /mnt/rawfs
# Mount /system rw first to give the filesystem a chance to save a checkpoint
mount ext4 [email protected]/partitions/CAC /cache nosuid nodev
mount ext4 [email protected]/partitions/DATA /data nosuid nodev
mount ext4 [email protected]/partitions/SYS /system
mount ext4 [email protected]/partitions/SDCARD /sdcard nosuid nodev
mount ext4 [email protected]/partitions/BOOT /boot
on boot
ifup lo
hostname localhost
domainname localdomain
class_start default
service ueventd /sbin/ueventd
critical
service recovery /sbin/recovery
service adbd /sbin/adbd recovery
disabled
# Always start adbd on userdebug and eng builds
# In recovery, always run adbd as root.
on property:ro.debuggable=1
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18D1
write /sys/class/android_usb/android0/idProduct D001
write /sys/class/android_usb/android0/functions adb
#write /sys/class/android_usb/android0/enable 1
write /sys/class/android_usb/android0/iManufacturer $ro.product.manufacturer
write /sys/class/android_usb/android0/iProduct $ro.product.model
write /sys/class/android_usb/android0/iSerial A101S_REC
write /sys/class/leds/lcd-backlight/brightness 75
#start adbd
setprop service.adb.root 1
# Restart adbd so it can run as root
on property:service.adb.root=1
write /sys/class/android_usb/android0/enable 0
restart adbd
write /sys/class/android_usb/android0/enable 1
Recovery.fstab
Code:
# mount point fstype device
/cache ext4 /dev/block/loop0
/data ext4 /dev/block/loop1
/system ext4 /dev/block/loop2
/sdcard ext4 /dev/block/loop3
Any words about hdd versions?
DragosP2010 said:
Any words about hdd versions?
Click to expand...
Click to collapse
I all depends how you want the structure it, What it would change is the mount point of the paritions directory. After that. everything is loop mounted and sitting on top of the existing structure.
Code:
mount ext4 /dev/block/mmcblk0p4 /partitions
Great stuff!!!!
Hey trevd,
that's fantastic... i will definitely try this CWM in a few days with my custom kernel and bootloader (mountpoint will need some tweaks as well ).
I'm very busy these days, so i gess i'll leave some longer statements to the recent developments in a few days.
Just in short... it's very pleasant to see all these open developments popping up and i really, really appreciate this kind of hacking!
Keep on your great work... you rock!!
Cheers,
scholbert
Hi Trevd,
Nice job!
I've been using the same kind of trick on my Xperia S boot manager project, recovery on loops and mount [email protected] in inits. You may want to take a look at what I did there (see my sig), it may have some use for your project.
Basically, what I do is storing multiple kernels+cpios on the regular kernel partition. I use one (trimmed down to maximize space) to handle the boot logic and cwm, and I have enough space to handle two "regular" kernels. I handle kernel switch just before they load with a small assembly loader. It works very nicely on Xperia, and it's very nice to be able to dual boot with isolated cwms. I can't remember maximum size on a g9 kernel rawfs file, but I think you could have at least enough space to have two kernels to isolate recovery.
Hey letama,
nice to read you :highfive:
letama said:
I've been using the same kind of trick on my Xperia S boot manager project, recovery on loops and mount [email protected] in inits. You may want to take a look at what I did there (see my sig), it may have some use for your project.
Click to expand...
Click to collapse
Cool stuff again...
letama said:
Basically, what I do is storing multiple kernels+cpios on the regular kernel partition. I use one (trimmed down to maximize space) to handle the boot logic and cwm, and I have enough space to handle two "regular" kernels. I handle kernel switch just before they load with a small assembly loader. It works very nicely on Xperia, and it's very nice to be able to dual boot with isolated cwms. I can't remember maximum size on a g9 kernel rawfs file, but I think you could have at least enough space to have two kernels to isolate recovery.
Click to expand...
Click to collapse
AFAIK, we got around ~30MBytes in the raws partition on our tablets so would be possible to put some more kernel+cpios here easily.
Anyway, made some experiments with my latest u-boot port for the tablet this weekend.
I was able to bring up my A80S completely from MicroSD and boot into CWM by using uImage and uInitramfs (based on trevd's CWM image).
There's also some lowlevel multiboot implemented now by using the volume keys... but i know that i use a very special setup, so this is more a proof of concept and not a suitable environment for the average user
Cheers,
scholbert
Thanks Letama + Scholbert
I'll look at all this stuff this week....As a aside, I've played around with mmcblk0p3 and given myself an mmcblk0p5 / 6 of 4MB each. I found parted to be pretty useful (read:safe) for this..... I'm dubious about playing around with the rawfs too much at this point, mainly because I don't understand it fully, yet!.
Have you guy seen this https://github.com/swetland/omap4boot ( I think it's along the line of what Scholbert been working with/on )
Like I've mentioned to ultimate goal is a solution that is "safe" for the average user and also leaves the rest of the tablet in-tact, it maybe a lofty goal but worth a shot. :good:
Thanks for the input guys!
scholbert said:
AFAIK, we got around ~30MBytes in the raws partition on our tablets so would be possible to put some more kernel+cpios here easily.
Click to expand...
Click to collapse
30 for init kernel ? That's plenty indeed! Cool!
Anyway, made some experiments with my latest u-boot port for the tablet this weekend.
I was able to bring up my A80S completely from MicroSD and boot into CWM by using uImage and uInitramfs (based on trevd's CWM image).
There's also some lowlevel multiboot implemented now by using the volume keys... but i know that i use a very special setup, so this is more a proof of concept and not a suitable environment for the average user
Click to expand...
Click to collapse
Nice job! Too bad that Archos doesn't do this on their board with a small internal switch. Would be cool for people like me with big fingers and poor soldering skills
trevd said:
I'll look at all this stuff this week....As a aside, I've played around with mmcblk0p3 and given myself an mmcblk0p5 / 6 of 4MB each. I found parted to be pretty useful (read:safe) for this..... I'm dubious about playing around with the rawfs too much at this point, mainly because I don't understand it fully, yet!.
Click to expand...
Click to collapse
Hummm... You're going to end with a full re-partitioning scheme with system and data if you continue this way . Just be careful when you recreate partitions to let the empty space at the beginning of the disk untouched, instant brick ahead if you go there...
Just in case, here is what I did with my repartition script (do you have it ?): delete p3, delete p4, re-create p3 (careful with start point, leave the hole! it should start just after p2) as extended partition, big enough to hold the new partitions, recreate p4 (same thing about the hole, it should start after p3) with what remains and then you can create p5,p6,p7 with the size you want inside p3.
Last advice: rawfs, don't touch it .
Anyway, the good thing with what I did on Xperia S is that you don't mess with rawfs and re-partition, it's just like flashing a very big SDE kernel from recovery with unmodfified sde firmware, that's all. If I find some time, I'll take a look to see if we can do the same thing here.
letama said:
Just in case, here is what I did with my repartition script (do you have it ?): delete p3, delete p4, re-create p3 (careful with start point, leave the hole! it should start just after p2) as extended partition, big enough to hold the new partitions, recreate p4 (same thing about the hole, it should start after p3) with what remains and then you can create p5,p6,p7 with the size you want inside p3.
Click to expand...
Click to collapse
Hi
Yes I have read your previous threads on the subject which provided alot of the inspiration for the work currently at hand, It is also why I am being ultra careful around the partitions
I think maybe I'm just being too clever trying too pull everything back a step into the intramfs when we can just do the old switch root method method.... It's a little messy on the inside but it will get the job done!
Well, I don't like much the switch root too, it's not a very "Android way" of doing things and make some apps not very happy with it, but yes, it will get the job done, one root for recovery, one root for firmware. And Archos stock would be difficult without switch root, they did put far too much stuff outside of system.
letama said:
Well, I don't like much the switch root too, it's not a very "Android way" of doing things and make some apps not very happy with it, but yes, it will get the job done, one root for recovery, one root for firmware. And Archos stock would be difficult without switch root, they did put far too much stuff outside of system.
Click to expand...
Click to collapse
I'm very much for the "Android Way" I believe the archos stock roms can be re-jigged as the stuff outside of the system is not required by the system, this is all stuff that is a result of the BuildRoot build system and has a dependency on uClibc.
I'm going to try and get something usable this week, can I store additional files in the rawfs partition without running into trouble?
trevd said:
I'm very much for the "Android Way" I believe the archos stock roms can be re-jigged as the stuff outside of the system is not required by the system, this is all stuff that is a result of the BuildRoot build system and has a dependency on uClibc.
Click to expand...
Click to collapse
Well, it's required. It's used inside Android, it handles audio, wifi, codecs, smb...
I'm going to try and get something usable this week, can I store additional files in the rawfs partition without running into trouble?
Click to expand...
Click to collapse
In rawfs or initramfs ? I wouldn't add any file in rawfs, it would be difficult to do and I don't know how would behave the bootloader if it sees new files there. Initramfs you're free to do whatever you want until you reach maximum size of kernel+initramfs.
trevd said:
Have you guy seen this https://github.com/swetland/omap4boot ( I think it's along the line of what Scholbert been working with/on )
Click to expand...
Click to collapse
Well kind of... while i try to stick with the MicroSD our fellow vincencb follows the omap4boot path.
He already made a port of barebox bootloader to work with this tool and pushed it to the repos.
This way you may put anything you like on the tablet's RAM by using MicroUSB for communication and file transfer.
My way is more to get a full featured u-boot and put it into a state, where it might replace stock loader.
Last step is to put it in internal eMMC... so this is also research and development for now.
trevd said:
Like I've mentioned to ultimate goal is a solution that is "safe" for the average user and also leaves the rest of the tablet in-tact, it maybe a lofty goal but worth a shot. :good:
Click to expand...
Click to collapse
Yepp that sounds like a reasonable approach.
letama said:
30 for init kernel ? That's plenty indeed! Cool!
Click to expand...
Click to collapse
To be even more precisely, there are 32512*1K blocks for the rawfs partition.
On my device there's ~12MB left...
letama said:
Nice job! Too bad that Archos doesn't do this on their board with a small internal switch. Would be cool for people like me with big fingers and poor soldering skills
Click to expand...
Click to collapse
Yeah, a real switch would be nice indeed... there's some unused testpoints giving us additional GPIO
Need to solder though...
trevd said:
I'm very much for the "Android Way" I believe the archos stock roms can be re-jigged as the stuff outside of the system is not required by the system, this is all stuff that is a result of the BuildRoot build system and has a dependency on uClibc.
Click to expand...
Click to collapse
Some stuff outside of system is quite useful and gives us something like a minimal linux ecosystem.
Very useful at console level... some tools seem to be used by the Android system as well.
trevd said:
I'm going to try and get something usable this week, can I store additional files in the rawfs partition without running into trouble?
Click to expand...
Click to collapse
Mmmh, letama maybe right with being very careful with this part of internal storage. If it get's corrupt you'll risk a brick (could be restored though by using external boot mechanism).
Anyway the best would be to mount it RW and use the kernel driver to access it... the unknown part is still the bootcode.
There's some kind of allocation table at the beginning of rawfs partition. It is yet unknown how bootcode behaves with an additional entry
Anyway, this is a real nice project and i would really appreciate to see it pushing forward.
Take your time trevd, and again thanks a lot for contribution!!
Have a nice day,
scholbert
Not to put this down in any way, but wouldn't TWRP be better for the G9? It has a full touch tablet UI, which is better than CWM's
Sent from my Galaxy Nexus using Tapatalk 2
Quinny899 said:
Not to put this down in any way, but wouldn't TWRP be better for the G9? It has a full touch tablet UI, which is better than CWM's
Sent from my Galaxy Nexus using Tapatalk 2
Click to expand...
Click to collapse
Hi Quinny
There's nothing to stop us using whatever recovery we like.... they all work the same way ( I think ) , i.e the code is compiled into a recovery binary. Unfortunately my touch screen stopped working long ago so I wouldn't really benefit
scholbert said:
To be even more precisely, there are 32512*1K blocks for the rawfs partition.
On my device there's ~12MB left...
Click to expand...
Click to collapse
Ah, yes, but there is space reserved for each file there, what I have to figure is how much is reserved for custom file (sde kernel). I don't want to have to shift the files located after custom to make room for sde kernel , it would defeat the "no-fuss/no-risk" of the method.
Anyway the best would be to mount it RW and use the kernel driver to access it... the unknown part is still the bootcode.
There's some kind of allocation table at the beginning of rawfs partition. It is yet unknown how bootcode behaves with an additional entry
Click to expand...
Click to collapse
Definitely. Re-partitioning is much safer if space is needed.
trevd said:
.... they all work the same way ( I think ) , i.e the code is compiled into a recovery binary.
Click to expand...
Click to collapse
This is a good keyword: The recovery binary itself!
Most tools inside the recovery are simply linked to busybox, which itself is a link to recovery executable.
In other words, we have some code responsable for the menu and framebuffer stuff and we have busybox.
The strings command gave me version 1.2.0. Now my question...
How to configure this part of code?
I'd like to enhance the busybox part.
Could you please provide a little to howto for a compiler run?
Will i need all that Android stuff installed...
I you have any clue, please point me in the right direction.
Lazy,
scholbert
scholbert said:
How to configure this part of code?
I'd like to enhance the busybox part.
Could you please provide a little to howto for a compiler run?
Will i need all that Android stuff installed...
Click to expand...
Click to collapse
Yes, you need full android repo. Android Build system is messy and tightly coupled, busybox is compiled with bionic (android libc), recovery is built on top of it with few android libraries links. Isolating all this "mess" would be difficult. Except disk space required, there is no big deal in getting full android repo.
I'd suggest to take a look at this, you should do the "Prepare the Build Environment" section.
I don't know how trevd built his recovery, but what I did is create a gen9 device to get proper configuration for recovery (frame buffer config, ...). You can get mine if you want, it's a little outdated (latest cwm doesn't need a specific gfx anymore, the custom one I used has been moved to upstream for instance), but it should give you a base.
To do that, you have to create an "archos" directory in cm9/device directory, then from inside it do:
Code:
git clone git://gitorious.org/archos-ics/device-g9.git gen9
Then, you need to setup the build env once. From cm9 root, you have to do that:
Code:
. build/envsetup.sh
(it setups android build environment)
then
Code:
lunch
then choose full_gen9-eng.
(it selects device target for build)
You should have something like that:
Code:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.4
TARGET_PRODUCT=full_gen9
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=IMM76L
============================================
from this point, you can compile:
make -j4 recoveryimage (change j4 with the number of parallel build you want depending on your cpu).
whole recovery fs should be in out/target/product/gen9/recovery/root, with recovery command in sbin
Last, how do you want to extend it? If you want to add custom commands, take a look at cwm bootable/recovery/extendedcommands.c, it may be easier to add stuff there than in busybox.
Hi guys,
Before I start, as it may or may not be related, just a note that I modified my partition table a few months ago to make DATAFS larger and UMS smaller.
So, I've been having a few problems with my Note lately. It had a small fall once (10-20cm) and the battery popped out. After that the phone refused to boot (stuck at GT N7000 logo). I just assumed "something went wrong", and as I wanted to clean my phone anyway, I just wiped / restored apps from Titanium.
All was fine and dandy. Except my phone crashed again today (screen off, still playing FM radio but won't come back on). Went straight into recovery and decided to run fsck just for kicks... and was greeted with a looooong list of errors. Skipping to the juicy bits:
Code:
Illegal block number passed to ext2fs_test_block_bitmap #3745358202 for multiply claimed block map
[b](Many, many of the above)[/b]
...
Multiply-claimed block(s) in inode 32765: 159256 159257 159258 159259 159260 159261 159262 159263
[b](Many, many of the above)[/b]
...
Pass 1D: Reconciling multiply-claimed blocks
(There are 13649 inodes containing multiply-claimed blocks.)
...
I didn't leave the scan to complete, will probably do it overnight.
My /system partition seems fine however
Code:
e2fsck -c /dev/block/mmcblk0p9
e2fsck 1.41.11 (14-Mar-2010)
/dev/block/mmcblk0p9: Updating bad block inode.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/block/mmcblk0p9: ***** FILE SYSTEM WAS MODIFIED *****
/dev/block/mmcblk0p9: 2032/54544 files (1.3% non-contiguous), 208212/218112 blocks
I will reflash with pit from Odin tonight once I'm home, and see if that helps. I guess my question is though, do I even bother? Looks to me like my emmc is (partially) dead, should I just reflash all stock and bring it to a service center?
Thanks for the help!
Well, what do you know, looks like I've fixed my issue. Been going through some checks for bad blocks through dd, and the partition could be read without issues, so figured it couldn't be that bad.
For reference, what I've then done is:
- In parted, use mkfs to recreate the datafs partition as ext2
Code:
parted /dev/block/mmcblk0
mkfs
10
ext2
- Convert the ext2 partition to ext3
Code:
tune2fs -j /dev/block/mmcblk0p10
- Convert the ext3 partition to ext4
Code:
tune2fs -O extents,uninit_bg,dir_index /dev/block/mmcblk0p10
- Run e2fsck
Code:
e2fsck /dev/block/mmcblk0p10
- Did a factory reset from recovery and rebooted
And voila
Now if anyone could tell me how I change the title of my thread to mark it solved please?
Lol you fix faster then we can respond to your questions.
Wanted to say that your emmc doesn't look fried, since the
errors say that parts of your filesystem are multiply claimed,
so a format should do the trick.
Good to see that you found it already
Hehe, thanks for the tip though
I also initially thought this was just a partition issue, but I just got confused... In my mind, a factory reset would do a format already, and if so, doing a format myself wouldn't help. I'm however quite glad I was wrong
How did you resize the partitions?
cooldoud said:
Now if anyone could tell me how I change the title of my thread to mark it solved please?
Click to expand...
Click to collapse
First congrats for fixibg your phone.
Now go on first post press edit thetr you will see the title too and you can change it.
Sent from my GT-N7000 using Tapatalk 2