Related
The last couple of hours I've been frantically trying to cook together a working ROM.
So far, this is what i've done:
*Replacing 2.6.33 kernel with Paul's "Custom Kernel" which is 2.6.29.
*Replacing&editing init scripts
Especially with the init scripts, my question is, are these the main parts of concern regarding a port?
In other words, am i on the right track, or is this much harder than i think? :S
Btw i don't think i'll get done with this before a ROM gets released, its just for interests sake
I thought the main problem was Froyo needing a 2.6.33 kernel and having to port Desire specific code into a 2.6.33 kernel so replacing it with 2.6.29 wouldn't work
Se the other froyo thread, I posted some quick instructions on how to boot a semi-working rom. There's no service and graphics are glitchy, also no wifi but that is just a matter of copying the right module, I didn't bother doing that.
There should be no dependency on a specific kernel version, but 2.6.33 is faster. I have also been trying to port cyanogen's 2.6.33 kernel but it's not as easy as it seems, there are many caveats and it did not boot yet.
deovferreira said:
Se the other froyo thread, I posted some quick instructions on how to boot a semi-working rom. There's no service and graphics are glitchy, also no wifi but that is just a matter of copying the right module, I didn't bother doing that.
There should be no dependency on a specific kernel version, but 2.6.33 is faster. I have also been trying to port cyanogen's 2.6.33 kernel but it's not as easy as it seems, there are many caveats and it did not boot yet.
Click to expand...
Click to collapse
Could the fact that MoDaCo's boot.img from rootedupdate.zip works, be related to it having an extra stage attached besides kernel and ramdisk?
I tried unpacking & repacking the boot.img you mention. And it doesn't boot
deovferreira said:
Se the other froyo thread, I posted some quick instructions on how to boot a semi-working rom. There's no service and graphics are glitchy, also no wifi but that is just a matter of copying the right module, I didn't bother doing that.
There should be no dependency on a specific kernel version, but 2.6.33 is faster. I have also been trying to port cyanogen's 2.6.33 kernel but it's not as easy as it seems, there are many caveats and it did not boot yet.
Click to expand...
Click to collapse
Could you post a link to this kernel?
I have managed to make it boot other kernels, by writing my own boot.img packing scripts.
edit: uploaded wrong file -_-
froyo kernel is 2.6.32
i'm almost sure this is the source code http://android.git.kernel.org/?p=kernel/msm.git;a=shortlog;h=refs/heads/android-msm-2.6.32-nexusonec
cyanogen have also used 2.6.34
Kali- said:
froyo kernel is 2.6.32
i'm almost sure this is the source code http://android.git.kernel.org/?p=kernel/msm.git;a=shortlog;h=refs/heads/android-msm-2.6.32-nexusonec
cyanogen have also used 2.6.34
Click to expand...
Click to collapse
Thanks for the link.
So, as the Desire source code is available, it's mainly a matter of porting kernel code? What about RIL and "acoustic" libraries htc ? hmm.... When i booted Froyo with r1.1 MCR custom kernel, 3G/EDGE and calling worked fine. There was graphic glitches though. Framebuffer port?
gr0gmint said:
Thanks for the link.
Click to expand...
Click to collapse
i made a mistake,
http://android.git.kernel.org/?p=kernel/msm.git;a=shortlog;h=refs/heads/android-msm-2.6.32
this is "probably" the right kernel (with few patch to bcm 4329 wifi) i have just compared to the nexus config.gz (2.6.32.9, CFQ Scheduler ...)
sorry but there is no froyo tag in the git
Dear all,
Did anyone succeed extracting kernel configuration from I9000XXJP3? Kernel version is 2.6.32.9, the vermagic is "2.6.32.9 mod_unload ARMv7"
extract-ikconfig doesn't work on it.
I succeeded extracting a zImage gzipped payload, but it seems not to contain any configuration in it (see attached).
/proc/config.gz doesn't exist, Samsung open source package (downloaded from Samsung open source site) contains only Android 2.1 Eclair or previous versions.
My target is to build tun.ko and, eventually, ext3/ext4 modules to make them working in Samsung Galaxy S I9000 with rooted I9000XXJP3.
Any idea?
Without froyo source code or a good Samsung Kernel (es. for himem capable) I think is impossible to play good with theses beta roms.
Ciao
Any news? I need tun.ko for jp3 too..
I have tried to compile the 2.6.32.9 kernel editing the .config in 2.6.9, the module tun.ko is accepted by the device, but I get a kernel panic!
redsh said:
I have tried to compile the 2.6.32.9 kernel editing the .config in 2.6.9, the module tun.ko is accepted by the device, but I get a kernel panic!
Click to expand...
Click to collapse
Did you use the stock linux kernel? Or the common from android.kernel.org?
I'm trying the same thing actually. Isn't there any default config for the processor that might work? I tried with the config from .29 but when loading the module it says wrong format.
try to build 2.6.32 with the 2.6.29 config ("yes" all missing stuff)
turn on your galaxy, adb push the tun.ko
try to load it, it will say "missing symbols" blabla
find the config options that match those symbols, enable them, recompile, try again
Great to see some people who are hacking the kernel! Keep it up!
But I'm afraid it is not going to be as easy as dropping aries_rev03_defconfig as .config in a 2.6.32 kernel tree and doing 'make oldconfig'. That's because many of Samsung's changes have not been included in the newer mainline kernel versions yet.
Samsung added quite a lot of low-level board support for their dev boards (and for the SGS, of course), did some customization and added a few drivers which you will need to forward-port to the newer kernel.
Please have a look at this thread, in which I've started a breakdown of the Samsung patches against Android Eclair's 2.6.29 kernel.
The best course of action I think is to git clone Android's kernel from AOSP, checkout the android-2.6.29 branch, apply Samsung's patches to that, then attempt to rebase your tree to a newer kernel version. (Note, you may want to start with small steps, to get a feel for what you're up against )
Note that there probably will be lots of merge conflicts which you need to resolve, and after dealing with all those, you also have to make sure that everything else that's merged still works as expected, but at least that will show you the amount of work involved. You will basically be doing all the work that Samsung is doing right now for their kernel for FroYo. It will be interesting to follow their progress on the mailing lists and on IRC.
bilboa1 said:
try to build 2.6.32 with the 2.6.29 config ("yes" all missing stuff)
turn on your galaxy, adb push the tun.ko
try to load it, it will say "missing symbols" blabla
find the config options that match those symbols, enable them, recompile, try again
Click to expand...
Click to collapse
Thats exactly what I did, but I got wrong module format... which is a fatal error. I need to invest further in the used config... maybe i did not pick up the right one properly..
miki4242 said:
Great to see some people who are hacking the kernel! Keep it up!
But I'm afraid it is not going to be as easy as dropping aries_rev03_defconfig as .config in a 2.6.32 kernel tree and doing 'make oldconfig'. That's because many of Samsung's changes have not been included in the newer mainline kernel versions yet.
Samsung added quite a lot of low-level board support for their dev boards (and for the SGS, of course), did some customization and added a few drivers which you will need to forward-port to the newer kernel.
Please have a look at this thread, in which I've started a breakdown of the Samsung patches against Android Eclair's 2.6.29 kernel.
The best course of action I think is to git clone Android's kernel from AOSP, checkout the android-2.6.29 branch, apply Samsung's patches to that, then attempt to rebase your tree to a newer kernel version. (Note, you may want to start with small steps, to get a feel for what you're up against )
Note that there probably will be lots of merge conflicts which you need to resolve, and after dealing with all those, you also have to make sure that everything else that's merged still works as expected, but at least that will show you the amount of work involved. You will basically be doing all the work that Samsung is doing right now for their kernel for FroYo. It will be interesting to follow their progress on the mailing lists and on IRC.
Click to expand...
Click to collapse
Yes that would be a lot of work. Maybe its better to just wait until they release the kernel from froyo. I read that they release their opensource stuff rather fast. But just for adding a module like ext4 I don't think you need those patches, because imho they didn't touch the fs of the kernel. We just need an adaquate kernel config and adding modules should be possible.
Phlogiston said:
Thats exactly what I did, but I got wrong module format... which is a fatal error. I need to invest further in the used config... maybe i did not pick up the right one properly..
Click to expand...
Click to collapse
Make sure you're using the same kernel version number and build number, because samsung kernels do not have the option to load incorrect module versions
Yes i've set the subversion as well but without the patches from samsung its impossible it seems. We need to wait and hope that they release the froyo kernel sources soon....
bilboa1 said:
Make sure you're using the same kernel version number and build number, because samsung kernels do not have the option to load incorrect module versions
Click to expand...
Click to collapse
Are you sure they set CONFIG_MODVERSIONS? It's off in the downloadable sources.
Just compare the output of `modinfo -F vermagic <yourmodule>` to `modinfo -F vermagic <modulewhichloads>` or to /proc/version .
did this get solved yet? I google'd for the tun.ko file for my i9000 using jp3 but nothing yet... if you have a proper one for the MoDaCo version here please attach it! ~
I think I saw someone's post with tun.ko for FroYo beta somewhere in these forums, I mean i9000 Android Dev. One of the guys here has found a way to compile kernel for jp* here. I am sure.
I actually found it attached somewhere in the forum and it was 1,5447 mb big I think it was... but it still didn't work for me so I presumed the kernel or something must have been wrong.
This is the kernel module for smb/cifs mount.(windows shares)
You need it for example for this: hxxp://forum.xda-developers.com/showthread.php?t=756158
I didn't found a compatible cifs.ko for samsung s anywhere so I had to compile it.
[recommended] cifs.zip - Eclair(2.1)
[recommended] froyo.zip - Froyo(2.2) - cifs.ko & slow-work.ko (insmod slow-work.ko first)
cifs_froyo_slow_work.zip - Froyo(2.2) - cifs & slow_work in one .ko Do NOT use this because its buggy (slow, reboots when rmmod)
could you pls explain what is this for? Experts needn't, but there're lots of newbies hangin aroud here, like me . Thanks
It's a kind of file system like ext2/3/4, for example.
Sent from my GT-I9000 using Tapatalk
This is the kernel module for smb/cifs mount.(windows shares)
You need it for example for this: hxxp://forum.xda-developers.com/showthread.php?t=756158
I didn't found a compatible cifs.ko for samsung s anywhere so I had to compile it.
Awsome. We can now mount samba shares! Freakin awsome
Sent from my Apple Newton 2100
You have my gratitude
Very usefull! thank you!
i'm back, when i'm trying an insmod i have cifs.ko : invalid module format
i use a jm5 samset 1.9f roms.
I use jm5 (mimocam's fix + root) and I've compiled the module from source-code provided by samsung (opensource.samsung.com) using arm-none-eabi-(Sourcery G++ from codesourcery.com). Maybe samset used something else which is incompatible.
ickyboo said:
Sent from my Apple Newton 2100
Click to expand...
Click to collapse
Bwahahahaha
ethanfel said:
i'm back, when i'm trying an insmod i have cifs.ko : invalid module format
i use a jm5 samset 1.9f roms.
Click to expand...
Click to collapse
Setenza said he'll add Cifs in the next SamSet release.
can you make one that is compatible with the Vibrant version? Either stock Vibrant kernel or any working kernel compatible.
Greatly appreciated
I've tried the module, but also get the "invalid module format" message.
However, I'm using JM5 + root using kernel 2.6.29 built on Fri Jul 30 15:12:44 KST 2010 armv71 GNU/Linux
Can you tell us for which kernel you've build this module?
thoriam said:
I've tried the module, but also get the "invalid module format" message.
However, I'm using JM5 + root using kernel 2.6.29 built on Fri Jul 30 15:12:44 KST 2010 armv71 GNU/Linux
Can you tell us for which kernel you've build this module?
Click to expand...
Click to collapse
I've compiled for kernel 2.6.29.2 using samsung's sources
my phone says he has kernel 2.6.29 [email protected] #1
I'm attaching the module compiled with latest toolchain I could find(binutils-2.20.1, gcc-4.5.1,newlib-1.18.0)
ctran81 said:
can you make one that is compatible with the Vibrant version? Either stock Vibrant kernel or any working kernel compatible.
Greatly appreciated
Click to expand...
Click to collapse
No idea if will work bc I don't have a Vibrant.
In the mean time I've also compiled my own version of the cifs.ko module.
I've used the Samsung sources and used the Sourcery G++ Lite 2010q1-188 for ARM EABI toolchain.
I've only enabled cifs in the kernel config and compiled the module.
I've attached the compiled result.
Thanks for your effort. I'm using JM5 +samset1.9f and couldn't get the cifsmanager to work with all 3 of your cif.ko . I've just dont know why the size the last 2 versions are huge compare to the first one? Thanks anyway. Hope you can come up with something.
thoriam said:
In the mean time I've also compiled my own version of the cifs.ko module.
I've used the Samsung sources and used the Sourcery G++ Lite 2010q1-188 for ARM EABI toolchain.
I've only enabled cifs in the kernel config and compiled the module.
I've attached the compiled result.
Click to expand...
Click to collapse
darkbyt3 said:
no idea if will work bc i don't have a vibrant.
Click to expand...
Click to collapse
thank you very much. It's working on my stock vibrant kernel! YOU ROCK SIR! (using attached vibrant.zip)
Now I can stream all my media files!
(I'm vary curious how you did this, if you can point me to some guides that would be awesome, (I can write some C/C++ code))
Works great for me - had been looking around to see if anybody had compiled the CIFS module for the Galaxy S. I started reading up on how to cross compile kernel modules myself but didn't get very far.
Anyway; I have a slight problem. while mounting and browsing from the terminal as root and through adb as non-root work, I can't seem to browse in any mounted folders actually on the device using either the stock 'My Files' or Astro which was what I was aiming to do.
What I do to mount said:
\\\\192.168.0.0\\Directory /sdcard/smbshare -o user=Username,pass=password,uid=1000,gid=1015
Click to expand...
Click to collapse
Without setting the user and group settings I can't browse unprivileged as everything in the share is 'owned' by root.
I also tried using mount -t smbfs //192.168.0.0/Directory /sdcard/smbshare with the same result.
Anybody else having a similar problem? Maybe it's just something obscure about my setup.
thoriam said:
In the mean time I've also compiled my own version of the cifs.ko module.
I've used the Samsung sources and used the Sourcery G++ Lite 2010q1-188 for ARM EABI toolchain.
I've only enabled cifs in the kernel config and compiled the module.
I've attached the compiled result.
Click to expand...
Click to collapse
Sorry for the noob questions:
- Can you please give more details on how to enable cifs in the kernel config?
- Is there a specific plate to copy the cifs.ko module?
- Is there a simple (one-click) way to install this?
- is the module dependent on the kernel version? has to be exactly the same?
- is there a easy way to check if it's working (I'm using cifsmanager and get some error saying cannot access device / folder not found -not sure about the exact message text)
Thanks in advance
Hi,
I am trying to compile a module for Samsung Galaxy S Froyo kernel. (Actuallu tunnel module - tun.ko)
I know how to compile a module but I need the config.gz file for the device.
Unfortunately I couldn't find it under /proc filesystem.
Where can I get it ?
Thanks.
Hi,
I need help about this. Still couldn't find the config for the kernel...
Hi, I got the same problem, did you found a solution?
mrmrmrmr said:
Hi,
I am trying to compile a module for Samsung Galaxy S Froyo kernel. (Actuallu tunnel module - tun.ko)
I know how to compile a module but I need the config.gz file for the device.
Unfortunately I couldn't find it under /proc filesystem.
Where can I get it ?
Thanks.
Click to expand...
Click to collapse
This is already built into hardcore's kernel.
mrmrmrmr said:
Hi,
I am trying to compile a module for Samsung Galaxy S Froyo kernel. (Actuallu tunnel module - tun.ko)
I know how to compile a module but I need the config.gz file for the device.
Unfortunately I couldn't find it under /proc filesystem.
Where can I get it ?
Thanks.
Click to expand...
Click to collapse
i don have such file but i don have any problem
That's just the gzipped file that shows the compile time options. General setup -> tick "Enable .config support"
Would be great if all the kernel devs would tick this, it'd be a lot easier to build custom ones tailored to just me.
You are mean the "General setup" of the Kernel- config (make menuconfig), right?
The SpeedMod Kernel I'm running at this time has no config.gz, so if I want that file I have to try some other Kernels, hoping that the Kernel- Modder checked ".config support" before building, is that right?
Samsung Galaxy I9000 - Froyo 2.2
mainster said:
You are mean the "General setup" of the Kernel- config (make menuconfig), right?
The SpeedMod Kernel I'm running at this time has no config.gz, so if I want that file I have to try some other Kernels, hoping that the Kernel- Modder checked ".config support" before building, is that right?
Samsung Galaxy I9000 - Froyo 2.2
Click to expand...
Click to collapse
You will find it under Tweaks I believe.
My bad, I did not notice the OP date, its 11th November 2010, 03:50 PM. Nearly 2 month old topic. And with no real reason to exist. I suggest Mod to remove this topic.
aziztcf said:
That's just the gzipped file that shows the compile time options. General setup -> tick "Enable .config support"
Would be great if all the kernel devs would tick this, it'd be a lot easier to build custom ones tailored to just me.
Click to expand...
Click to collapse
+1.
i thought the same thing several times in the past
Hi,
I own the Galaxy Ace 2, currently still on rooted GB. I'm planning on switching to JB soon.
One question I have is that I'm thinging of compiling some kernel modules (USB gadget module) and custom injection drivers for the wireless interface (http://bcmon.blogspot.be/).
If i'm correct, I'll need the kernel sources to do this, are the sources available on http://opensource.samsung.com/ enough to do this? Or do I need more?
1. Why did you not used search option? The question you have asked was already answered many times
2. Why did you not read XDA rules and opened thread in development section just for asking about something.
3. Sources available at http://opensource.samsung.com/ are very incomplete. Build finishes with errors and then device won't boot with output kernel bin.
arroyo said:
3. Sources available at http://opensource.samsung.com/ are very incomplete. Build finishes with errors and then device won't boot with output kernel bin.
Click to expand...
Click to collapse
Actually, sources are complete. Just contains some simple errors which can be fixed in a few seconds and then it compiles and boots correctly.