[DEV] Las Venturas - 2.6.35 kernel port for Hero // Version: 1.2 - 13 May

Search This thread

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
Hey, does it work Android 2.1 roms? Also, what cpu governors are supported?

It works with the majority of all Android ROMs. Sense can be annoying though (especially usb-tethering).
Governors:
- Performance
- Userspace
- Ondemand
- Interactive
- Conservative
- Smartass v1
- Smartass v2


@gkiller, ok, gonna check it out when I come back
 
  • Like
Reactions: 1ceb0x and gkillerx

lost101

Inactive Recognized Contributor
May 30, 2008
7,417
9,305
Zero problems with mounting sdcard here. ICS 4.0.3 w/ lv 1.1.
 

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
@gkillerx I'll try to get zram working today.

Last night I have been trying again to get a 2.26.38 working on our hero's, but it seems I can't find any appropriate yaffs2 drivers for it. The current 2.6.38 corrupts the /system/ partition, while the current .35 ones don't work on the newer versions (interface changes). Guess there is no other kernel dev around willing to help? :p
Rewriting them would take a lot of time
 
Last edited:

gkillerx

Senior Member
Mar 22, 2009
1,102
295
Hi riemervdzee,

I encounterd an other problem. The music player randomly freeses and I also lose my GSM connection then. This happend 2 today but it happend when I was driving so I coudn't do dmesg....

I just arrived home but that was 3 or 4 hours later so I decided to try and replicate it at home and it happend again and this time I got the kernel dump. But GSM showed that it had a connection but the music player just froos. in the status bar it showed the song that was on but there was no sound and it was playing 0:00. I had to pause the song, playback (to 0:00 lol) and it started again after pushing play.

I also got the not mounting in it (mount and nothing happend). I also tested the kernel (v1) on 4.0.3 and there I had no problems with mounting.

Attached is the kerneldump. Hope it helps you!
 

Attachments

  • kerneldump.txt
    123.1 KB · Views: 5

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
All these problems happened under which ROM? It seems the music app got killed, probably due low memory. Maybe the ROM has the mem killer tweaked badly?
I always found the AutoKiller handy, so you could set the mem tweaks from an app (and it has more tweaks).
Did they also occur under the ICS 4.0.3 one?
 

Habarug

Senior Member
Feb 23, 2011
1,671
409
Bergen
Hi riemervdzee,

I encounterd an other problem. The music player randomly freeses and I also lose my GSM connection then. This happend 2 today but it happend when I was driving so I coudn't do dmesg....

I just arrived home but that was 3 or 4 hours later so I decided to try and replicate it at home and it happend again and this time I got the kernel dump. But GSM showed that it had a connection but the music player just froos. in the status bar it showed the song that was on but there was no sound and it was playing 0:00. I had to pause the song, playback (to 0:00 lol) and it started again after pushing play.

I also got the not mounting in it (mount and nothing happend). I also tested the kernel (v1) on 4.0.3 and there I had no problems with mounting.

Attached is the kerneldump. Hope it helps you!

I find the music app which is included really unstable. Try another musicplayer instead, I use ^3 (aka Cubed) from play store ;)

Edit: Was the music issue on ICS?
 
Last edited:

MongooseHelix

Senior Member
Aug 29, 2010
711
453
Portland, OR, USA
Last night I have been trying again to get a 2.26.38 working on our hero's, but it seems I can't find any appropriate yaffs2 drivers for it. The current 2.6.38 corrupts the /system/ partition, while the current .35 ones don't work on the newer versions (interface changes). Guess there is no other kernel dev around willing to help? :p
Rewriting them would take a lot of time
While I would love to help out on the Eris side, I'm far from being a kernel dev and right now just trying to catch up and learn enough to get a .35 kernel going for the Eris. Very appreciative to have your source along with jaybob's for heroc to look at and use.
 

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
Rom is:
http://xdaforums.com/showthread.php?t=1003381

With no task killers or supercharger script.

I have no idea if this also happens on ICS because I coudn't test this.
I do know that when I install flykernel there are no problems :(

I switched to the ROM to test the problems out, did the following:
1: flashed the ROM just let it boot. Mounting usb ofc works (due the flykernel)
2: Flashed LV 1.1, just let it boot again. Mounting usb doesn't work of course as I didn't wiped dalvik.
3: went to recovery again, wiped dalvik, booted the bugger and usb just works.

Are you sure you wiped dalvik after installing LV? I think the other "strange" bugs are related to not wiping as well.

While I would love to help out on the Eris side, I'm far from being a kernel dev and right now just trying to catch up and learn enough to get a .35 kernel going for the Eris. Very appreciative to have your source along with jaybob's for heroc to look at and use.

Is the .35 version already working for the Eris? I always love to help you out if not. I'm thinking of dropping 2.6.38 for now, as I have not enough time to write a whole new yaffs driver. So, any new project is always welcome hehe :p
Got g-talk or something? mine is: riemervdzee@gmail.com
 

lost101

Inactive Recognized Contributor
May 30, 2008
7,417
9,305
I started testing LV 1.1 today with Elelinux-7.2-Hero-v3.8 Android 2.3.7. I was curious if the gps-reboot would be gone. So far I haven't seen it :)

Thank you again Riemer. I never thought I would get rid of that damn bug.
 

gkillerx

Senior Member
Mar 22, 2009
1,102
295
I switched to the ROM to test the problems out, did the following:
1: flashed the ROM just let it boot. Mounting usb ofc works (due the flykernel)
2: Flashed LV 1.1, just let it boot again. Mounting usb doesn't work of course as I didn't wiped dalvik.
3: went to recovery again, wiped dalvik, booted the bugger and usb just works.

Are you sure you wiped dalvik after installing LV? I think the other "strange" bugs are related to not wiping as well.

(..)
Yep offcourse I wiped it. I'm flashing kernels now almost twice a week (TF101) So I know my way around flashing kernels ;)

Meby it's just my stupid phone that is just slowly dieng out or that I have a simcard putted in ?
 

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
Try removing dalvik-cache manually. Go to recovery and open an adb shell:
mount data
rm -rf /data/dalvik-cache

I'm sure it is a dalvik cache problem. Which recovery are you using? Note that wiping cache doesn't work, as dalvik cache is stored somewhere else

Cheers, R
 

1ceb0x

Senior Member
Jun 25, 2010
5,666
6,332
The Earth
Try removing dalvik-cache manually. Go to recovery and open an adb shell:
mount data
rm -rf /data/dalvik-cache

I'm sure it is a dalvik cache problem. Which recovery are you using? Note that wiping cache doesn't work, as dalvik cache is stored somewhere else

Cheers, R

Yeah, if dalvik sits in sd card it will not be removed even if you select wipe dalvik-cache through recovery.
 

gkillerx

Senior Member
Mar 22, 2009
1,102
295
Try removing dalvik-cache manually. Go to recovery and open an adb shell:
mount data
rm -rf /data/dalvik-cache

I'm sure it is a dalvik cache problem. Which recovery are you using? Note that wiping cache doesn't work, as dalvik cache is stored somewhere else

Cheers, R

Uhm oké I checked my phone and found dalvik-cache on the following places:

/data/dalvik-cache
and also:
/system/sd/dalvik-cache

I guess the last one is my sd-ext partition? I'm using RA-HERO. So are they both used?
 

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
I just checked the install scripts and /data/dalvik-cache "symlinks" to /system/sd/dalvik-cache (only when you have an ext partition of course). Symlink = Symbolic Link, http://en.wikipedia.org/wiki/Symbolic_link
This way the Android system still thinks the dalvik-cache is located at /data/ and can access it in a normal way, but underwater it is stored on the SD ext partition.

You can view the symlinks with "ls -l". An example would be:
lrwxrwxrwx 1 0 0 17 May 2 22:12 d -> /sys/kernel/debug

where /d/ is a symlink to /sys/kernel/debug/

Removing dalvik-cache under recovery, would delete the symlink reference only but not the contents on the SD ext partition. Simply because the ext-partition it ain't mounted under recovery (it is done via the init.d script).

Also.. I ain't sure it is safe to remove the dalvik-cache when the system is running, while removing it under recovery might be troubling as you have to mount the ext partition of your sd-card.
Which recovery are you using?

Edit: Small mock-up what you could write under recovery (via adb shell):
mount -o noatime,nodiratime -t auto /dev/block/mmcblk0p2 /sd-ext;
chown 1000:1000 /sd-ext;
chmod 771 /sd-ext;
rm -rf /sd-ext/dalvik-cache;
 
Last edited:

gkillerx

Senior Member
Mar 22, 2009
1,102
295
(..)
Which recovery are you using?

Edit: Small mock-up what you could write under recovery (via adb shell):
mount -o noatime,nodiratime -t auto /dev/block/mmcblk0p2 /sd-ext;
chown 1000:1000 /sd-ext;
chmod 771 /sd-ext;
rm -rf /sd-ext/dalvik-cache;

Thanks for the support so far :)

As mentoined befor, I use RA-HERO as recovery img.

So to be clear. If I run those commands in recovery adb shell it should remove dalvik-cache completely?

I guess I also have to do:
Code:
mount data
rm -rf /data/dalvik-cache
 

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
Thanks for the support so far :)

As mentoined befor, I use RA-HERO as recovery img.

So to be clear. If I run those commands in recovery adb shell it should remove dalvik-cache completely?

I guess I also have to do:
Code:
mount data
rm -rf /data/dalvik-cache

The commands I gave you, should work aye. make sure the mount command returns no error though. No need to rm /data/dalvik-cache btw.
 
  • Like
Reactions: gkillerx

gkillerx

Senior Member
Mar 22, 2009
1,102
295
It worked, so far so good! Just played music and did stuff on the phone (send emails, and read whatsapps.) and no problems so far!

Thanks for the support so far :)

edit:
still having USB mounting issues

Edit2
Still having problems with playing music. When i am sorting music for a playlist it hangs, music stops and all my music is getting deselected! Argghhh stupid music! Kernel is sweet fast and snappy. I also tried supercharging but still same problems. I have 500 music numbers.
 
Last edited:

riemervdzee

Retired Recognized Developer
May 27, 2010
593
292
Dokkum
Guess it ain't cleared correctly.. I suggest either a fresh install, or I can modify the scripts ele uses to get the dalvik on /data/ again, might be easier to wipe it in the future as well

Cheers, R
 

Top Liked Posts

  • There are no posts matching your filters.
  • 30
    Introduction

    After a year of developing, with many stalls due to studying, we finally reached a stable state with the 2.6.35 kernel port. It is a quite honour to introduce you all to the Las Venturas kernel for the GSM Hero. It is a kernel based on the Cyanogenmod sources with updates coming from the AuroraCode forums. (those lads from Aurora are just geniuses) The main idea behind the Las Venturas was well, a fun project. Let's be honest ;) I love deving new things and this is a really a nice project. We always strife to get the best out of our phones and the kernel has a big influence on it.
    The 2.6.35 kernel adds speed improvements but in general it provides more functionality than the 2.6.29 kernel (based on the official HTC sources). It also has newer drivers for the Framebuffer (speed), adds ext4, better USB stack for our ARM devices.

    Instructions
    Go to your favourite recovery. Always wipe dalvik-cache!. Flash the kernel like any other update.zip, reboot and take a coffee while it is booting. Well done! High five yourself, as you just installed 2.6.35 for your Hero!

    Downloads
    Las Venturas version 1.2
    http://www.mediafire.com/download.php?7r5rcr70mh3ynb3
    md5sum: c37c43566cf882f21d0f1dde9afeb37d

    Las Venturas version 1.1
    Links:
    http://www.mediafire.com/download.php?p3csh7sajbolp13
    md5sum: 25d0fad0ac42ebf20be47f97c0511406

    Las Venturas version 0.5.0
    links:
    http://94.23.152.245/xda/rmr/Las_Venturas-0.5.0.zip (thanks to wupper!)
    http://www.multiupload.com/U6KYEOCWEE
    md5: fa1d0b5767caa68152fe8166a7f74f4b

    The big compare list

    Current advantages:
    • full ext4 support
    • Newer overlay code, apps tend to be displayed faster than the original .29 kernel
    • Newer usb-code, more suitable for newer ROMs like Gingerbread and ICS than the .29 kernels
    • More stable GPS (no more reboots!)
    • General faster IO than 2.6.29
    • Less latency for playing sound/music
    • For the rest, it contains newer drivers for a lot of stuff. As it is a 2.6.35 kernel of course ;)
    Current disadvantages:
    • USB is experimental. Usb-tethering might not work, for non-sense ROMs you can try Erasmus fix
    • SD-card IO is slightly slower than flykernel (around 0.5%)

    Change-log
    Changes of last Version 1.2:
    • Faster general IO output
    • Fixed some bugs concerning SD speeds
    • Fixes to the interactive governor
    • Newer vibration-code, less latency (small impact, but everything is welcome)
    • Ashmem flushing fix
    • Code cleanup
    Full log:
    https://github.com/riemervdzee/hero-kernel-2.6.35/wiki/Changelog

    Source code
    Config used is found under kernel/arch/arm/config/hero_defconfig
    https://github.com/riemervdzee/hero-kernel-2.6.35 (0.5.0 and above)
    https://github.com/riemervdzee/cm-kernel (Older repository. For pre 0.5.0 versions)

    Thanks list:
    --> Elemag -- Initial start of this project, great advisor and debugger :)
    --> s0be -- working on the .35 fork of this project for the Hero CMDA. Good to see another dev'er at work, always inspirational
    --> Erasmux -- For his flykernel and his work on getting the .35 to work
    --> Ninpo -- Initial start of this project
    --> Feeyo -- For general fixes. Great mentor to linux/kernel programming
    --> And of course all CyanogenMod lads working on the CM-kernel

    Note that I hijacked Elemag's thread (he first opened this topic). So things might sound a bit wrong if you read the first pages ;)
    9
    Las Venturax

    This post will contain the releases I do until Riemer has time to catch up with me: (Unless I see me and Riemer would like to go in different directions with this kernel I don't want to open another thread for "my" versions)

    Las_Venturax-0.6.2.zip (mediafire) (multiupload)
    • Scheduler tweaks (restored latency to 6ms and enabled hrtick - this time for real!)
    • SmartassV2: a few bug fixes.
    • Some upstream updates (thanks arco)

    This is a generic "smart updater package" which can also be used to do OC from boot, as explained in my FlyKernel post under
    Boot OC and optional tweaks (first post).

    USB tethering on this kernel is different from the .29 kernels most ROMs are compatible with. Fixes for CM6/7 are found on post #1029.

    More information about SmartassV2 (for users) can be found on my FlyKernel post.

    ROM Developers

    Developers aiming to integrate this kernel into their ROMs, might find it more convenient to use the following regular update package as a reference:
    Las_Venturax-0.6.2-Floyo.zip
    In this package the kernel's ramdisk is the one compatible with Floyo 1.4.

    If you prefer to recompile the kernel yourself, you are very welcome to do so, but please share your updated sources. Obviously you are changing something (maybe very very small) otherwise why are you recompiling it? Please share with us what changes do you find to work better for you. You are also required to this by the GPL license of the kernel.

    Previous versions:

    Las_Venturax-0.6.0.zip (multiupload)
    • Tweaked scheduler parameters (lowered latency to minimum - ROM developers please do NOT overwrite the scheduler params in your init.rc)
    • Added smartassV2 governor as the new default governor - more details below (since 0.5f, tweaked built in sleep in 0.6.0)
    • Added interactiveX governor (since 0.5c)
    • Some compiler optimization (stable since 0.5e)
    • Fix for jogball notification (since 0.5a)
    • Use frequency table from fly kernel (since 0.5a)
    • Based on Las Venturas 0.5.0

    Las_Venturax-0.5f.zip (multiupload)
    • Added smartassV2 governor (set as default)

    Las_Venturax-0.5e.zip
    • Added "Wireless RNDIS" - could this fix usb tethering?
    • Tweaked compiler optimizations and moved to new toolchain

    Las_Venturax-0.5d.zip
    This version is a "quick fix" version trying to solve the stability issues (spontaneous reboots) reported with the 0.5c version. Only thing is I have no idea what is causing these problems so this is really a bit of a shot in the dark. Please report any stability issues, and if possible also state which ROM, what you where doing at the time and for spontaneous reboots attach a last_kmsg (i.e. "adb pull /proc/last_kmsg"). Thanks in advance to all the testers.
    • Reverted part of the compiler optimizations from 0.5c.
    • Back to NOOP scheduler
    • Default governor back to smartass. interactiveX is still available and I am still very interested in feedback regarding it.
    • Additional kernel config tweaks.

    Las_Venturax-0.5c.zip
    • Added interactiveX governor by Imoseyon - for now this is the default governor (most likely a temporary situation).
    • Use BFQ I/O scheduler
    • Voodoo compilation optimizations :)
    • Fix for cpufreq time_in_state (i.e. SetCPU frequency counters) - broken only in 0.5a version (commit).

    Note regarding the "new" interactiveX governor:
    From a very quick look at its code, this governor looks promising to me, and I hope that it might provide better battery life over the current alternatives.
    I am very interested to hear about the battery and performance with this governor vs. smartass and/or ondemand.

    Some philosophical discussion on the subject:
    It seems there are quite a lot of smartass/interactive variants out there (in kernels for other devices). I also have some ideas of my own, that will hopefully manifest into a new governor someday soon (smartassV2?).
    In the meantime, interactiveX seems relatively close to smartass (also discriminates between screen on/off states), and to the best of my current understanding, in theory, given the parameters I have selected for it, I hope it might improve battery life.

    Las_Venturax-0.5a.zip
    • Fix for jogball notification (commit)
    • Use frequency table from fly kernel
    • Based on Las Venturas 0.5.0

    All changes are on my github.

    Cudos to riemervdzee for all his hard work on this excellent kernel, as well as to all others who have helped to develop and test this kernel.
    9
    New flashable:
    http://94.23.152.245/xda/rmr/rmr35-015.zip (thanks to Wupper!)
    http://www.multiupload.com/43Q8P72MDN

    What should work:
    - headset via jack. Could anyone test whether the buttons on headsets and microphone work?
    - lightsensor
    8
    I finally got some time again for deving the next week. Since the OneX sources ain't out yet I decided to play a bit again with the Hero kernel. Are there still people who use it btw? ;)

    Cheers, R
    8
    I'm really happy of the progress today :) ported lots of stuff today, gpios are now handled correctly and there isn't a device-specific version for it. Sound is now ok, microphone also works. Even (bit unexpected tbh) WiFi :)
    Will be using this as my daily kernel I think. Best way to test stuff and there aren't anymore reboots lately.

    not working:
    green/red led and trackball led. Disabled, caused random reboots when blinking (microp driver)
    lightsensor. Disabled, causes the whole system to hang @ boot (microp driver)
    Camera. Preview-mode works, but taking pictures makes the whole thing "hang"
    Bluetooth. No idea on this one...
    all audio jack stuff, H2W is not correct.
    accelerometer (bma150 driver, included but needs updating)

    Link to flashable for the interested, should be for all ROMs:
    http://www.riemervanderzee.com/download/kernel-signed.zip

    Anyway now comes the harder stuff. The rewriting parts of drivers:
    - microp_i2c which handles all the leds and lightsensor stuff is a mess and unfortunally doesn't work.
    - accelerometer doesn't work at all? haven't had any look at it.
    - Maybe do something with the camera one?
    - qdsp5_comp has some more functions than qdsp5, however soundinput doesn't work on that one (null exception).