[Galaxy 3 Android Development] marcellusbe:
Hello,

Here is Fugumod (based on http://xdaforums.com/showthread.php?t=812836) ported to I5800. It allows users to convert without data loss all your filesystems to jfs/ext2/ext3/ext4/reiserfs and rfs.

Included in the image are (in Fugumod 2.4 beta3 Standard and 800Mhz edition)

:

Root ADB

own busybox 1.19

TUN support

No more RFS at all (if you want) (nearly, /efs stay rfs)

Compcache support

CIFS support

NFS modules

Security fixes

TinyRCU (default)

SIO Simple I/O scheduler (default)

BFQ (info : http://algo.ing.unimo.it/people/paolo/disk_sched/)

Autogroup scheduler patch v4

jhash3 patch

Support for early startup scripts (/system/etc/init.d)

Filesystems: rfs, ext2, ext3, ext4, btrfs, jfs*, reiserfs*

Support /data to sdcard

Support 1% battery steps mod

Support UV and pimpmycpu app.

Voodoo Sound v8

Overclock 800Mhz (no voltage raised)**

* : on a separate build

** : 800Mhz edition only

-----------------------------------------------------------------------------

Included in the image are (in Fugumod 2.2 Bleeding Edge version)

:

Like the original Fugumod, there is a "bleeding edge" version with advanced and experimental features I try to add.

/!\

This version is not STABLE and may corrupt your datas, make your phone not responding, crashing .... You have been warned

/!\

Root ADB

own busybox 1.18.4

TUN support

No more RFS at all (if you want) (nearly, /efs stay rfs)

Compcache (info : http://code.google.com/p/compcache/)

CIFS support

Security fixes

TinyRCU

Support for early startup scripts (/system/etc/init.d)

SDcard speedup fix included (thx Kyrillos)

Filesystems: rfs, jfs, ext2, ext3, ext4, reiserfs, nilfs2, btrfs (will be used for /data on sdcard soon)

Overclock up to 1300Mhz : Frequencies : 83-166-333-667-866-1066-1300

500Hz

-----------------------------------------------------------------------------

Read the whole post (except the changelog) before attempting to install

THERE IS NO MORE AUTOMATIC CONVERSION.

Conversion will occurs only if a fs.convert file is present in /sdcard/Android/data/fugumod.

I suggest that you start convert /cache and see that is working and then, if OK, convert /data and /system.

Custom rom makers could use this kernel to convert the filesystem.

Requirements

You must have at least 400Mb free on your SD card storage for initial conversion if you don't have any apps installed. If you have apps already installed, you must ensure that you have at least the same size as you data storage free on the sdcard.

What does Fugumod do ?

Fugumod convert to any filesystem supported by creating a fs.convert file in the directory /Android/data/fugumod/ on the sdcard. In exemple, you want to convert /data partition (/dev/block/stl7) to ext4, just make a fs.convert file containing :

stl7 ext4

or two partitions in a row :

stl7 jfs
stl8 ext2

How to use it ?

Flash with Odin as "One package" option.

How does it work ?

Once you create your fs.convert file in /sdcard/Android/data/fugumod/fs.convert, the conversion will start on the next reboot.

Depending how many partition you want to convert and the speed of your sdcard, the process could take some times ... 5, 10, 15 minutes .. do NOT interrupt the process or you will have to reflash a whole ROM.

When the conversion process is finished, the phone start.

How to check if it worked ?

Type : adb shell mount

and look for the partition you converted : you should see your new filesystem.

Below, I converted /data (stl7) and /cache (stl8) from rfs to ext4 :

D:\android-sdk\platform-tools>adb shell mount
rootfs / rootfs rw 0 0
proc /proc proc rw,relatime 0 0
sys /sys sysfs rw,relatime 0 0
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/stl6 /system rfs ro,nodev,noatime,nodiratime,vfat,log_off,check=no,gi
d/uid/rwx,iocharset=cp437 0 0
/dev/block/stl7 /data ext4 rw,nosuid,nodev,noatime,nodiratime,commit=20,barrier=
1,data=ordered 0 0
/dev/block/stl8 /cache ext4 rw,nosuid,nodev,noatime,nodiratime,commit=20,barrier
=1,data=ordered 0 0
/dev/block/stl4 /efs rfs rw,nosuid,nodev,relatime,vfat,llw,check=no,gid/uid/rwx,
iocharset=cp437 0 0

How to desinstall Fugumod ?

2 solutions :

- Flash a complete ROM

or

- Take a custom kernel or a standard kernel and convert all the partitions to a filesystem supported by the new kernel and then flash it.

How to change a frequency ?

You can change by yourself the frequencies in all overclocked versions of fugumod (v2.4+ only). It's possible also in the 800 Mhz edition.

There is an entry in /sys/devices/system/cpu/cpu0/cpufreq/plls_table where you can put your own value for APLL.

Before doing this, set "PERFORMANCE" governor on and min and max frequencies to the maximum

Example : in the 800Mhz edition :

# cat /sys/devices/system/cpu/cpu0/cpufreq/plls_table
index - apll
0 81900301
#

now, you can change this value and put 834Mhz (0x81a10301) on the index 0 (the highest freq):

# echo "0 0x81a10301" > /sys/devices/system/cpu/cpu0/cpufreq/plls_table

As usual, use it at your OWN risk.

This should work also with Loop based lagfix. This need to be tested more... Backup applications have not been tested already. Please give feedback.

You can find all the scripts and source code on github : https://github.com/sdadier

------ Note for startups scripts

- Put your script in /system/etc/init.d

- Scripts with Filename starting with E* (earlystartup scripts) are executed before script with filename starting with S* (users scripts)

- Scripts are executed before playlogo and after init.rc

- Log is available in /res/user.log

Thanks to nikademus the original author of fugumod and sztupy for universal lagfix initramfs.

Thanks to Supercurio for voodoo additions.

Thnaks to Cpasjuste for pimpmycpu and help.

Thanks to s3th.g3ck9, FadeFx and others I forgot for bugfixes and ideas, The Dark Lestat for cooking us the best ROM here

--> DOWNLOAD : http://code.google.com/p/fugumod-i5800/downloads/list

This project takes a lot of time and work.

Please, consider donating to help further development : http://xdaforums.com/donatetome.php?u=3404423

Thanks for your support!

Changelog :

2.4 beta3 (05/20/2011) :

- Fix lags (ksm)

- Fix app2sd froyo way ... should fix data2sd

- Fix screen flickering

- Set default headphones volume to max (voodoo)

2.4 beta2 (05/18/2011) :

- Fix Conservative governor

- Fix undervolt not working on 800Mhz edition

2.4 beta1 (05/18/2011) :

- SIO scheduler

- Removed NILFS2

- Autogroup scheduler

- VS v8

- Support pimpmycpu app

- sysfs files to tweaks voltages and frequencies

- fix clicks/cuts sounds during calls

2.3 (04/11/2011) :

Removed due to severe issues

2.3 Bleeding Edge (04/11/2011) :

Removed due to severe issues

2.2 final (04/06/2011) :

- Updated ext4 with ext4-patches-for-2.6.32.11--14 (same perfs as before but more mount options supported)

- Added nilfs_cleanerd garbage collector as service (not tested)

- Compcache disabled : you can always start it with # sh /sbin/ramzswap.sh or put a script that run it in init.d

2.2 Bleeding Edge (04/06/2011) :

- Overclock s5p6442 upto 1300 Mhz : use SetCPU to set the frequencies or via /sys/devices/system/cpu/cpu0/cpufreq/ (not tested)

- Updated ext4 with ext4-patches-for-2.6.32.11--14 (same perfs as before but more mount options supported)

- Added nilfs_cleanerd garbage collector as service (not tested)

* Compiled with TinyRCU, CFQ & 500Hz

2.2 beta :

- added BFQ (default I/O scheduler)

- added init.d support

- fix SDcard speed

2.1 :

- Fixed /efs not mounting correctly

- Added TinyRCU

2.0 :

- Based on fugumod 1.8

- Arm 2010-09 g++

1.2.1 :

- fixed version

1.2 :

- Fix /efs

- add NILFS2 support (experimental)

1.1 :

- root adb

1.0 :

- Initial release