Related
This thread is now obsolete.
Kernel sources for build 5.26.0 have been released:
https://opensource.motorola.com/sf/go/projects.milestone/frs.milestone_source_froyo
I've pushed some new pre-compiled modules to github, though beware, I haven't had time to test all of them on device yet:
https://github.com/nadlabak/android...mmit/b300803348705d3fc5ce76d8c88d57186748a370
As the kernel sources are not yet available from the Motorola's open source project, here is an outline how I compiled the overclock and cpufreq governor modules. (Btw., the overclock module needed a substantial adaptation, see the source here: http://android.doshaska.net/2.6.32oc )
I'm using the sources from this AOSP repo:
Code:
git clone git://android.git.kernel.org/kernel/omap.git
git checkout --track -b android-omap-2.6.32 origin/android-omap-2.6.32
Use the sholes config:
Code:
make sholes_defconfig
flags that need to be disabled:
CONFIG_LOCALVERSION_AUTO
CONFIG_MODVERSIONS
CONFIG_DEBUG_MUTEXES
CONFIG_SCHEDSTATS
CONFIG_SCHED_DEBUG
[updated on 17.01.2011, thanks go to Skrilax_CZ]
At least the ext2 will work without panics when compiled using this config.
For tun, cifs and nfs there is still some additional config mismatch that prevents the modules to work without null pointer dereference oops.
Also, even when no custom kernel module is used, you can get the kernel panic very easily, try to enable wifi and do:
Code:
cat /proc/kallsyms
If you're interested in a more detailed android kernel compilation guide, you can e.g. roughly follow this Droid kernel guide: http://www.droidforums.net/forum/rescue-squad-guides/31452-how-compile-your-own-kernel.html
Thanks for starting this thread kabaldan! It is a great starting point in tackling the issue of adding tun support to the new kernel (tun.ko module). I am not as good as many others in this, but trying won't hurt. Meanwhile if someone else is working on tun support - share experience here!
If kernel seems to be ok, sometimes mounting with new version of busybox won't work.
I used to get kernel panic when use newer version of busybox (not Android kernel but my own embedded linux)
Hey Nadlabak can you add DLNA function of CM6?
same problem using droidx kernel sources. insmod ok, mount reboots the phone
yantz
I tried droid2 kernel module - doesn't work either
I noticed OpenVPN included in CM6 also relies on this kernel module. Hence doesn't work. I guess we won't (ever) see kernel sources for that leaked kernel we are now using. I assume Motorola will release the sources sooner or later, but not before official Froyo layout. The waiting is killing me! kabaldan, can't you try to do some magic as you did with the overclock module? The beer is from me!!!
Can you test this attached tun.ko?
Insmod is OK, but I currently don't have time for any further tests...
EDIT: don't bother, kernel panic as usual
Module loads fine, but when attempt to use it, phone reboots, just like with the module compiled from DroidX sources..
leobg said:
Module loads fine, but when attempt to use it, phone reboots, just like with the module compiled from DroidX sources..
Click to expand...
Click to collapse
So, I got it loaded - insmod works just great, just like it did on the 2.1 kernel.
I'm trying to use the CM6 built-in OVPN settings, but I can't find any documentation on the setup. How did you get it set up?
I have
/sdcard/openvpn/
cert.crt
ca.crt
config.conf
config.ovpn
pem.key
I realize that config.conf and config.ovpn are the same file- but I use this VPN on windows and on Mac, and I wasn't sure the requirements on Linux.
If I can't find some documentation I'll try downloading the OpenVPN settings app from the market and playing with that.
Also, I don't know if it's true or not, but I heard the Milestone2 source compiled driver could work.
Are you trying the module kabaldan provided? It doesn't seem to work, at least for me. Loads fine, but phone crashes when setting up tun interface. I couldn't get OpenVPN in CM6 0.3 to work so far. I am testing the tun.ko with the cisco vpn package (which worked great on the old kernel with CM6 0.2) vpnc. When I initiate the connection, phone reboots if the attached here tun.ko is used. I also tried with tun.ko compiled from DroidX sources - same thing - phone reboots. I am not sure where did kabaldan take/compile this module from.
Sent from my Milestone using Tapatalk
I was using the same one, I was thinking maybe he could use the info from more than one phone. I'll try get-a-robot or OpenVPN Installer, but I won't hold my breathe. I was just hoping to use the built-in functionality of the ROM.
*edit* Just saw he removed it because it doesn't work yet, oh well.
the kernel doesnt seem to like any other fs not built into it. i've tried several, ext2, ext3, ext4, cifs, jffs, reiserfs etc. all modules would load without a problem but system will reboot during mount. heck i even tried creating logical volume on the partition. volume created fine, but when time to mount, it reboot
i ended up using a 2nd vfat partition for apps2vfat, on top of native froyo move to sd. moved my debian arm there and manually, yes manually, replace many symlinks in libs to copied files
hopefully next froyo release for other regions would provide a different kernel
yantz
hey kabaldan wondering if you've had another chance to look at an updated tun.ko
Finally some breakthrough. The great Skrilax_CZ has made some hard debugging and one very good guess:
CONFIG_DEBUG_MUTEXES must be disabled in the kernel config.
At least the ext2 module compiled this way is working without panics now.
Congrats to Skrilax!
EDIT: Tun nor nfs not tested yet..., cifs unfortunately still not working.
kabaldan said:
Finally some breakthrough. The great Skrilax_CZ has made some hard debugging and one very good guess:
CONFIG_DEBUG_MUTEXES must be disabled in the kernel config.
At least the ext2 module compiled this way is working without panics now.
Congrats to Skrilax!
EDIT: Tun nor nfs not tested yet..., cifs unfortunately still not working.
Click to expand...
Click to collapse
This means that now the app2ext work?
Where are the modules for we test?!
Thanks for the news!
Modules for testing:
ext2 - http://code.google.com/p/cyanogenmod4milestone/issues/detail?id=197#c19
tun - http://code.google.com/p/cyanogenmod4milestone/issues/detail?id=222#c4
Hi sort of a newbie here... So does this mean that data2ext will work?
Sent from my Milestone using XDA App
Hi Nadlabak...maybe you already know.
For the cifs module, how about slow-work is made available as a module.
as is done at this link
http://forum.xda-developers.com/showpost.php?p=9271775&postcount=4
after further testing:
ext2 mounting now works, reading from ext2 partition too, but writing still causes panic
tun causes panic too
Let's hope for a soon kernel source release, as it looks like we won't get much further without it.
edowar: thanks for the link
@kabaldan
Could it be possible to create a swap module for milestone ?
It seems that running kernels does not have this feature yet and i'm not sure motorola to implement it for next 2.2 release so .... well just wondering !
I'm seriously confused about CIFS...
I'm new to Android, so i'm not sure what tools to use to accomplish certain tasks.
Here's my drama, I'm running TNT lite 3.1.4, i can see the CIFS.co file in the system folders, I set cifs up to use insmod and pointed it at the right path.
I can set up the share but no matter what i do i get a message that says "mounting has failed with an error Mount: no such device".
My shares are hosted on win7 x64 machines and a few Server 2008R2 boxes. If i use ES File Explorer i can see all drives (C$, etc) and explicitly naemd shares (Videos, Documents) but i can only successfully access explicitly named shares (with correct UID/PWD)
The same shares (User, Video, etc) accessed via CIFS yeilds that above error message...
I'm out of ideas. I believe others have this working...any thoughts?
-C
Darkeyce said:
I'm seriously confused about CIFS...
I'm new to Android, so i'm not sure what tools to use to accomplish certain tasks.
Here's my drama, I'm running TNT lite 3.1.4, i can see the CIFS.co file in the system folders, I set cifs up to use insmod and pointed it at the right path.
I can set up the share but no matter what i do i get a message that says "mounting has failed with an error Mount: no such device".
My shares are hosted on win7 x64 machines and a few Server 2008R2 boxes. If i use ES File Explorer i can see all drives (C$, etc) and explicitly naemd shares (Videos, Documents) but i can only successfully access explicitly named shares (with correct UID/PWD)
The same shares (User, Video, etc) accessed via CIFS yeilds that above error message...
I'm out of ideas. I believe others have this working...any thoughts?
-C
Click to expand...
Click to collapse
As much as things change around here I may be wrong but I don't think Roebeet put the Cifs kernel into TnTLite. I think that is one of the things he left for the user to patch. There is a Cifs kernel patch for TnTLite in one of these threads that will likely fix what you have going on.. It acts just like that when it is not there... You are using something like CIFS manager to set things up right?
The CIFS module doesn't work with the default TnT kernel - I added it just so the user had it available to them in case they added a customized kernel that could use it.
You should consider it unusable OOTB.
In case you search and don't find it....
http://forum.xda-developers.com/showthread.php?t=889088
Sprdtyf350 said:
In case you search and don't find it....
http://forum.xda-developers.com/showthread.php?t=889088
Click to expand...
Click to collapse
Sprdtyf350 said:
As much as things change around here I may be wrong but I don't think Roebeet put the Cifs kernel into TnTLite. I think that is one of the things he left for the user to patch. There is a Cifs kernel patch for TnTLite in one of these threads that will likely fix what you have going on.. It acts just like that when it is not there... You are using something like CIFS manager to set things up right?
Click to expand...
Click to collapse
I feel kinda dumb now...i saw the thread with the patch but assumed it was only for full STOCK TNT, then when i saw the CIFS.KO file in the TNTlite folders i thought it was active.
I'll try the 3389 CIFS patch on TNT lite (which is what i think is being suggested) and i should be good to go.
thanks all.
Darkeyce said:
I feel kinda dumb now...i saw the thread with the patch but assumed it was only for full STOCK TNT, then when i saw the CIFS.KO file in the TNTlite folders i thought it was active.
I'll try the 3389 CIFS patch on TNT lite (which is what i think is being suggested) and i should be good to go.
thanks all.
Click to expand...
Click to collapse
Yep.. The latest TnTLite is built from 3389 so the TnT patch will do the trick...
The kernel I posted for TnTL has CIFS built in, thus the kernel module roebeet include is not required. Grab CIFSManager and use UMASK=0755 as the option.
]
vsc said:
The kernel I posted for TnTL has CIFS built in, thus the kernel module roebeet include is not required. Grab CIFSManager and use UMASK=0755 as the option.
]
Click to expand...
Click to collapse
Is that the same as this one?
http://forum.xda-developers.com/showthread.php?t=889088
I don't want to lead anyone on a goose chase if there is a specific TnTLite build... If it is in the middle of the big thread then maybe you could put it somewhere more obvious maybe? I seem to remember post 195 from somewhere?
I'm looking for NFS support on my SGT (Network file system, NOT the game...).
Tab has been rooted, running Paul's MoDaCo kernel & rom (amazing BTW), busybox and what not.
At home I'm running Ubuntu workstations and servers and know my way around linux.
However, I can't figure out how to mount my Tab to my NFS shares.
I've tried CIFS manager, ES filemanager and Mount manager, all without success. It seems to me I might be missing the correct modules. So the question is; is NFS supported in the first place? And if so, what am I overlooking?
(and could someone please post in the Modaco Kernel thread, as I don't have permission to post in dev-threads untill I spam at least 10 posts...)
[EDIT 2011-02-01]
Paul has indicated he might include NFS support in R4 of his kernel, no support in R3.
Hi
Editing post as I saw you are already on MoDaco's ROM.
Not sure about NFS but you mentioned Ubuntu..meaning you should have no trouble getting your samba server running.
With samba and MoDaCo custom Kernel you just need to pull down its "kernel modules.zip" It's a separate file containing the cifs.ko module.
Use CIFS manager (download from market) and specify where you extracted the module to (/sdcard/cifs or anywhere you want to place it).
Once cifs manager is able to load the cifs.ko module, you should be able to mount the shares
@bullyfrog Using the smb server and the cifs.ko modules is an alternative indeed, and for the time being a suitable workaround. Thank you for this tip. However, it's not what I was hoping on...
BTW NFS support will be included in next kernel, so hopefully by that time I've figured it out and will post as a Howto...
Hi all.
I make a new kernel based in Buzz Vega, but with some changes.
1) All modules (but wifi) are now integrated into kernel, so no more insmod modules.
2) Added support for PL2303 and FDTI usb to serial chips (Usb Gps, usb-serial cable, etc.)
3) Added support for Xbox 360 PAD (wired or wireless with pc adaptor)
Notes:
1) To boot in host mode, press on, once you have black iluminated, release on button and press back until boot finished.
2) Usb Gps and Xbox pad are detected by kernel but not useable in android by now. I'm working on it.
3) To mount CIFS shares, you can use Mount Manager or Cifs Manager from market
4) To use NTFS (and possibly EXT4) you must mount manually. I'm working in do it automatically. Using ConnectBot:
Code:
$su
#busybox mount /dev/block/sda1 /mnt/usbdisk
And you get yout memory at /mnt/usbdisk and can access it with any file manager.
INSTALL:
This must be installed using CWM, and use this zip as update. MAKE ALLWAYS A NANDROID BACKUP BEFORE
If you was using Buzz Vega, can delete .ko files from /system/lib/modules, because they are not used (now integrated into kernel).
http://dl.dropbox.com/u/13580211/corvusKernel_01.zip
Thanks Buzz, Paul "Modaco", Koush, and all great helping people at #tegratab.
Corvus.
PS: If you prefer speak spanish with me, please PM.
Awesome work with the Xbox360 controller. What kernel module did you use to achieve that? Just getting in to kernel stuff with the Vega so please excuse if my question is a little basic.
You can search for Xpad in .config or advent_vega_defaultconfig.
corvus said:
...I make a new kernel based in Buzz Vega...
Click to expand...
Click to collapse
Hey corvus,
I just wanted to say thanks! Your kernel is running great on my POV mobii and I don't experience the root- or bsod-problems I had with buzz-vega kernel. Also the cifs integration works fine.
greetings...
Great to see developers starting to work on the Advent.
Installed this kernel on my Advent Vega. It seems the device came to live. Performance is much better now. Suspending and resuming now works better. Wifi resuming works great. Very nice job with this kernel, very nice indeed
what adapter do you use? using xbox remote would be amazing
None by now... they are detected by kernel, but not used by android... working on it.
Corvus.
i thaught as much. good luck with that using an xbox remote on a ps1 emulator would rock!
hi! what about the kernel source + config?
like to add dvb-t and bluetooth hid (doesn't detect that my bt keyboard is a keyboard..)
and ive got some strange issues with the orientation sensor, seems like its shifted to the left so when i want to get into landscape mode i must rotate it much more to the right side (so i used the lock that i can work with that). No issue with CM7.
EDIT: ive got an xbox 360 wireless controller for windows (with the usb reciever), do i need to have some external apps or something to use this?
corvus said:
Hi all.
I make a new kernel based in Buzz Vega, but with some changes.
1) All modules (but wifi) are now integrated into kernel, so no more insmod modules.
2) Added support for PL2303 and FDTI usb to serial chips (Usb Gps, usb-serial cable, etc.)
3) Added support for Xbox 360 PAD (wired or wireless with pc adaptor)
Notes:
1) To boot in host mode, press on, once you have black iluminated, release on button and press back until boot finished.
2) Usb Gps and Xbox pad are detected by kernel but not useable in android by now. I'm working on it.
3) To mount CIFS shares, you can use Mount Manager or Cifs Manager from market
4) To use NTFS (and possibly EXT4) you must mount manually. I'm working in do it automatically. Using ConnectBot:
Code:
$su
#busybox mount /dev/block/sda1 /mnt/usbdisk
And you get yout memory at /mnt/usbdisk and can access it with any file manager.
INSTALL:
This must be installed using CWM, and use this zip as update. MAKE ALLWAYS A NANDROID BACKUP BEFORE
If you was using Buzz Vega, can delete .ko files from /system/lib/modules, because they are not used (now integrated into kernel).
http://dl.dropbox.com/u/13580211/corvusKernel_01.zip
Thanks Buzz, Paul "Modaco", Koush, and all great helping people at #tegratab.
Corvus.
PS: If you prefer speak spanish with me, please PM.
Click to expand...
Click to collapse
nobody in here?
Sorry by the delay.
Sources and default config are here: https://github.com/BuzzBumbleBee/android_kernel_advent_vega/
For dvb-t you will need some kind of program to reproduce video...
Corvus.
No problem
There is an DVB project for Archos devices, maybe this is a start..
http://code.google.com/p/archos-gen8-dvb/
EDIT: Maybe i got some tomatoes on my eyes, but i dont find the config file
corvus said:
Sorry by the delay.
Sources and default config are here: https://github.com/BuzzBumbleBee/android_kernel_advent_vega/
For dvb-t you will need some kind of program to reproduce video...
Corvus.
Click to expand...
Click to collapse
brunsbanjo said:
No problem
There is an DVB project for Archos devices, maybe this is a start..
http://code.google.com/p/archos-gen8-dvb/
EDIT: Maybe i got some tomatoes on my eyes, but i dont find the config file
Click to expand...
Click to collapse
search for defconfig_adventvega or similar.
do you know where the kernel looks for firmware files?
/lib/firmware no luck
/lib/firmware/[KERNELVERSION]/ no luck
...
brunsbanjo said:
do you know where the kernel looks for firmware files?
/lib/firmware no luck
/lib/firmware/[KERNELVERSION]/ no luck
...
Click to expand...
Click to collapse
i think that you refer to wifi firmware...
I found this problem too...
You must edit wifi sources (/drivers/networking/wireless/ath/ath6k/.../ar6000.c, if i remember correclty). Search for firmware and change all paths to /system/lib/hw/wlan (if i remember correctly, search in this path for files).
you can recompile only wifi module, not need to recompile all kernel.
If you have any other problems with firmware, you need to change sources, because /lib/firmware is a bad place, because /lib is not created. Is better to point to /system/lib.
Corvus.
Hi,
Usually on linux, there is a kernel loading modules at boot-time framework, cf. modules.conf.
No longer present in android.
When typing lsmod, there is two modules loaded by default : tntfs, and bcm4329 (and voodoo_sound
if you have it).
I'm trying to figure out what is the standard procedure on android : I've noticed on the
init.rc that the tntfs.ko is loaded, but can't figure out when bcm4329.ko is loaded.
Any idea ?
Moreover, I know that voodoo controller is able to load his own kernel module (voodoo-sound)
at boot-time. Anyone knows how the voodoo dev did that ?
My current idea is to modify init.rc to source a new file - let's say init.rc.local - to keep my custom mod. It'll
allow minimal changes when updating+root : just copy the init.rc.local and change the init.rc...
Sounds like we're recreating linux boot framework. lol.
This is something I've done on the HTC Incredible and the Droid 1 in the past, but in honeycomb, this is different, not very obvious yet:
Rather than try to emulate whatever Redhat or Ubuntu has done, which usually doesn't work, I either would use the line where tntfs.ko is insmod'd in /init.ventana.rc (sorry, think that's the filename), and add in the modules you want to add right there. Make sure to save the original file so you'll have a shot at fixing it if you make a mess.
The other thing is just to find some developer that appears to know what they're doing, and download their ROM, like Roach. I just downloaded his prime 1.6 ROM and unpacked it, then noticed immediately that he's got this in there:
/system/etc/init.d/01init{stuff},
Well that seems pretty important, so I did a grep 'init.d' * -R from the / level, and could only see little of importance, not any shell file like initrc pointing to it, just that busybox is linked to it, etc.
I figured it's worth a shot to create the same file structure on the stock ROM (/system/etc/init.d/0X{name} and see if it executes :: Start it with the usual #!/system/bin/sh
# load some modules
/system/bin/inmod /system/lib/modules/cifs.ko (or whatever)
and see what happened, if anything.
Better yet, I'd just send a message to Roach or some other ROM developer and ask.
Good luck -
altsyst said:
Hi,
Usually on linux, there is a kernel loading modules at boot-time framework, cf. modules.conf.
No longer present in android.
When typing lsmod, there is two modules loaded by default : tntfs, and bcm4329 (and voodoo_sound
if you have it).
I'm trying to figure out what is the standard procedure on android : I've noticed on the
init.rc that the tntfs.ko is loaded, but can't figure out when bcm4329.ko is loaded.
Any idea ?
Moreover, I know that voodoo controller is able to load his own kernel module (voodoo-sound)
at boot-time. Anyone knows how the voodoo dev did that ?
My current idea is to modify init.rc to source a new file - let's say init.rc.local - to keep my custom mod. It'll
allow minimal changes when updating+root : just copy the init.rc.local and change the init.rc...
Sounds like we're recreating linux boot framework. lol.
Click to expand...
Click to collapse
Tested.
Does not work, because modified room probably calling busybox run-parts.
Anyway I've found a hack, I'm posting it on general section.