My adventures in creating a custom kernel are ongoing, but in the meantime I decided to see exactly how far I could push the stock kernel. Since the Gravity SMART uses the same CPU as the Galaxy Ace, I decided to build a franken-ROM. A (very) simplified outline:
1) I downloaded the stock images for the Gravity SMART and Galaxy ACE from samfirmware.com.
2) I extracted the stock kernel, boot splash screen graphic, and kernel drivers from the Gravity SMART boot.img.
3) I unpacked the Galaxy Ace boot.img; replaced the kernel, splash graphic, and kernel drivers with those from the stock boot.img; and repackaged the boot.img.
4) I created a flashable ODIN archive with both my frankenstein boot.img and the system.rfs from the Galaxy Ace.
5) I flashed the result with Odin 4.40 USA.
The phone boots, makes phone calls, and sends/receives SMS. WiFi does not work, time sync does not work, and USB disk mode does not work.
I used a similar technique to get Clockwork Recovery booting. It doesn't quite work right, but it does boot!
I tried to use this technique to get the Galaxy Ace ICS port onto the phone, but it doesn't boot. I suspect it's because the stock kernel doesn't have EXT4 support.
If I can get the "not working" bits resolved, I'll probably create a script and/or detailed instructions on how to do it.
1) I downloaded the stock images for the Gravity SMART and Galaxy ACE from samfirmware.com.
2) I extracted the stock kernel, boot splash screen graphic, and kernel drivers from the Gravity SMART boot.img.
3) I unpacked the Galaxy Ace boot.img; replaced the kernel, splash graphic, and kernel drivers with those from the stock boot.img; and repackaged the boot.img.
4) I created a flashable ODIN archive with both my frankenstein boot.img and the system.rfs from the Galaxy Ace.
5) I flashed the result with Odin 4.40 USA.
The phone boots, makes phone calls, and sends/receives SMS. WiFi does not work, time sync does not work, and USB disk mode does not work.
I used a similar technique to get Clockwork Recovery booting. It doesn't quite work right, but it does boot!
I tried to use this technique to get the Galaxy Ace ICS port onto the phone, but it doesn't boot. I suspect it's because the stock kernel doesn't have EXT4 support.
If I can get the "not working" bits resolved, I'll probably create a script and/or detailed instructions on how to do it.