Jump to content

[DEV][ROM] RacerMod 1.7 [19/04/2013] CyanogenMod 7.2 port with 2.6.35.7 kernel & CWM Recovery 5.0.2.8


Guest mikeioannina

Recommended Posts

Guest mikeioannina

CyanogenMod7.2 unofficial port with 2.6.35.7 kernel & CWM Recovery 5.0.2.8 by mikeioannina

Info:

Here you'll find the latest CM7 builds using 2.6.35.7 kernel & latest CM7 CWM Recovery 5.0.2.8.

Supported phones: ZTE Racer/Carl/Freddo (work in progress)

Disclaimer:

I AM NOT RESPONSIBLE FOR WHATEVER HAPPENS TO YOUR PHONE!

I need your help with testing/debugging/logcats/dmesg and no posts like "When is the next version coming?-When is that feature going to work?"

Also DO NOT send me PMs asking how to fix wifi/bluetooth/etc. These messages are going to be deleted with no answer. If you really want something fixed, try and fix it yourself and post it here. I work alone currently, no-one is interested in helping me. The best way to solve problems is with your help.

:)

Please don't mirror this ROM and don't post direct links from my website

Kernel features:

2.6.35.7 kernel ported from Blade sources

Governors: performance/powersave/userspace/ondemand/interactive(default)/conservative/smartass/smartass2

IO schedulers: noop/bfq(default)

Overclocking handled CM Settings menu up to 844MHz (by default not active)

Fake Dual touch in kernel (by default disabled)

Calibrated touchscreen with values from stock 2.2

Compatible with Gen1 & Gen2 phones

Features:

Built for LDPI

Full hardware acceleration

Screen on/off animation

Rotation animation

Screen calibration options in Device Settings (only working with dual touch driver for now)

Both softkeys & hardware buttons enabled in CWM Recovery

Most of the core components are built from sources

For a full list of CyanogenMod changes visit CM Gerrit

Extra features cherry-picked from CyanogenMod gerrit or coded by myself

Known bugs/not working:

Bluetooth & Wifi (Carl/Freddo only)

Framebuffer has some small bugs (for example: on boot, image is distorted for some time)

Download links:

goo.im/devs/mikeioannina/RacerMod

All files are coming in update.zip format. Both gen1 & gen2 zips are available for download.

Changelog:

1.7 - 20130419

- Latest CM7 changes

- Trying some improvements in the touchscreen driver to avoid ghost clicks

- Integrated GooManager for future updates & removed RomManager and CM Updates notification

1.6 - 20130319

- Changed flashing method: the ROM zip will support only gen2 from now on. If you have a gen1 phone, you will have to flash the extra gen1 zip to make the rom work.

- Latest gingerbread features merged in CM Gerrit

- Use the #2 touchscreen driver from alpha 1 again

- Remove these features to stay close to stock cm7 (maybe I will add them again in a future version):

*Option to hide alarm icon in status bar

*Possibility to change the style of lock pattern screen

*Option to disable volume key beep sounds

*Option to mute camera focus sound

*Disable AM/PM style selection menu while 24-hour clock is selected

*Display of mod version using cm9+ option

*Music app: Let music player fade smoothly when playing/pausing/seeking

*Allow custom calendar reminder snooze times

1.5 alpha 2 (Kernel only) - 20130214

- Use the alternative non-dual touch touchscreen driver

1.5 alpha 1 - 20130126

- Latest CyanogenMod7 changes

- Two new touchscreen drivers without dual touch hacks (default included #2 driver)

- Removed touchscreen calibration (not working on single touch drivers yet)

- Device sources split (easier future development)

- Kernel cleanup: removed useless modules, reduced size

- Reclaim some more RAM

- Kernel source cleanup - removed useless code (work in progress)

- Fixed gralloc problem (work in progress)

- Full hardware acceleration (work in progress)

- Screen on/off animation

- Rotation animation

- Removed "Music app: Start playback when A2DP headset gets connected" feature (unstable)

1.4 - 20121215

- Kernel built inline using cm9 method

- Kernel build date is displayed

- Added option to hide alarm icon in status bar

- Added possibility to change the style of lock pattern screen

- Added option to disable volume key beep sounds

- Added option to mute camera focus sound

- Disable AM/PM style selection menu while 24-hour clock is selected

- Change display of mod version using cm9+ option

- Modify Running ProcessView as ics (claimed to be better)

- Add Greek dictionary for keyboard

- Music app: Start playback when A2DP headset gets connected

- Music app: Let music player fade smoothly when playing/pausing/seeking

- Allow custom calendar reminder snooze times

- Added format number option to dialer

1.3 - 20121128

- Final fix for keyboard numbers bug

- Fix gsm network & usb that broke in the previous build

- Final fix for Carl/Freddo accelerometer

- Updated CWM Recovery

- Updated Google Apps

- Update.zips are now signed

1.2 - 20121117

- Removed auto-brightness since we don't have a light sensor

- Fixed device settings icon size

- Fix Phone.apk battery drain caused by not having proximity sensor (patch by deadlink)

- Fix MagicSmoke live wallpaper force-close

- Fix keyboard numbers bug

- Fixed Carl/Freddo accelerometer

- New experimental gesture pressure/blindspot values in Device settings adjusted for our screen size

1.1 - 20121107

- Fixed accelerometer (needs testing)

- Add screen calibration options to RacerParts

- Fixed wifi (needs testing)

- Fix call/end keys backlight staying on (needs testing)

- Fix call/end keys not working (needs testing)

- Updated CWM Recovery with new kernel

1.0 - 20121029

- Initial port for mooncake.

Screenshots:

gvyua.png6ru5E.pnga35TW.pngv2OZt.pngedOqe.png

To do:

- Fix wifi & bluetooth on Carl/Freddo

- Port clean 2.6.35 kernel from CAF

This should help with: framebuffer problems

USB OTG mode

improve USB driver

update outdated ZTE sources

more RAM available

get rid of useless ZTE changes

hope for wifi ar6003 fix (porting the wifi source will be easier on clean CAF source)

ETA of CAF kernel: 3 months to NEVER (depends on difficulties I'm going to find)

Built from source:

Compared to all other Racer ROMs, almost everything is compiled from source and modified specially for mooncake board.

- Netd - good

- Vold - good

- libaudio - good

- libcamera - good

- libcopybit - good

- libgralloc - good

- liblights - good

- libril - good

- libsensors - good

- kernel: msm_ts (touchscreen) - needs more work

- kernel: msm_fb - needs more work

Sources:

https://github.com/RacerMod

https://github.com/mikeNG

Check https://github.com/RacerMod/racermod/ for build instructions.

Thanks to these people who donated to help me get a new device:

Raphael Machado, master_alarm

Credits:

CyanogenMod, deadlink, vamshi, equiliym, GuyOverThere, TomGiordano, kalltkaffe, tilal6991, CodeAurora Forum and everyone else that I forgot to mention

Edited by mikeioannina
Link to comment
Share on other sites

Guest alves_369

Hey guys, I decided to do some experiments building CM7 for my ZTE Carl because I couldn't find any fresh builds. I am also working on porting 2.6.35.7 kernel and have done a lot of progress on my device.

If you are interested I can compile CM7 for Racer too, but I need testers because I don't have the device.

Progress:

Kernel boots, screen/touchscreen works, usb works, nothing else tested(probably not working)

Now compiling first CM7 nightly with the new changes to do some extensive testing.

When I reach some stable state, I'll upload the ROM and sources.

hi, i can be a tester ;)

Link to comment
Share on other sites

Guest mikeioannina

Nice to hear that you are interested.

Current progress: After first CM7 build with the new changes, the Rom boots until the setup wizard, touchscreen and vibration on softkeys work (I can't test anything else now because of this bug:) but the image is distorted, looking into fixing this now (probably gralloc & copybit problem because they are built from source)

Unfortunately I can't do much work now because I'm on my laptop and compile takes 2-2.5 hours...

post-991989-0-44977000-1351092999.png

Link to comment
Share on other sites

Guest GuyOverThere

I can help test as well

As for the screen thing, I think equiliym is right, I remember having that same issue of your screenshot while testing egl drivers

Link to comment
Share on other sites

Guest mikeioannina

I'm using official CM7 blade device folder modified for mooncake, also using 2.6.35.7 official CM7 blade kernel with added support for mooncake. What egl libs do you recommend me to use? There are so many out there...

If anyone has some knowledge on android/programming and wants to help, I can add him as collaborator on my github repositories so we can speed up development

EDIT: I still can't find proper egl libs or the graphics problem is not the libs... Weird thing is that the CRT-off animation works!

The sources are in a good way, I fixed all the compiler warnings on kernel source, cleaned up the device folder and did some modifications from Blade to Racer...

Now the bad news are that there is no support for akm8962 compass/accelerometer (it is used in Carl) in libsensors source but I've found some sources that may work with some tweaks...

Edited by mikeioannina
Link to comment
Share on other sites

Guest mikeioannina

Damn! I'm searching a whole day the internet for the screen issue but can't find any solution!

These are the two logcat errors connected with this problem:


eglSetSwapRectangleANDROID:1909 error 3008 (EGL_BAD_DISPLAY)

eglSwapBuffers: EGL error 0x3008 (EGL_BAD_DISPLAY)

Link to comment
Share on other sites

Guest GuyOverThere

Damn! I'm searching a whole day the internet for the screen issue but can't find any solution!

These are the two logcat errors connected with this problem:


eglSetSwapRectangleANDROID:1909 error 3008 (EGL_BAD_DISPLAY)

eglSwapBuffers: EGL error 0x3008 (EGL_BAD_DISPLAY)

By chance, does the rom work with a different kernel?

The things I find related to that error involves egl libs (libGLES_android.so, libEGL_adreno200.so, libGLESv1_CM_adreno200.so, libGLESv2_adreno200.so) but this doesn't mean much regarding to a "cause". Since you're using CM7 sources I know that current egl drivers are good enough for source based roms (the egl libs I use come from equiliym nightlies build, 06-24 or something like that), I don't know what changes have you done to devices files but I don't think it'll cause this error unless extract-files isn't coping the right files or board-mooncake.mk is sending some prebuilt it shouldn't (related to egl libs of course)

The kernel may be a cause but only if you've changed gpios or anything else related to lcd panel structs, with .32 kernels there are 3 defined: himax, lead and samsung and, at least Racer, needs himax only (lead is for a different chipset, gordon something, also refered to as r750 board or something like that; and samsung I've no idea =/), By default however, in .35 kernels LCD panel is a bool prompt, not multiple selection as .32 unless you change kconfig. I remember that vamshi for .35 kernel once told that he modified gpios to the get the kernel working but I don't what gpios was he refereing to.

Anyhow, if it's kernel problem you'll know by testing another kernel (vamshi's, deadlink's or the .32 you made), if not, I only have 2 versions (I think) of egl drivers that work for CM7 that I can send you, I think equiliym have more but I don't know.

Link to comment
Share on other sites

Guest mikeioannina

I haven't tried a different kernel... I use the exact same prebuilts that work for Blade & V9.

The kernel works in CWM recovery fine, but in Rom I have the screen issue, the only errors that appear on logcat are the two I posted above so I suspect that it is a lib problem. If I remember correctly in the first builds of my .35 kernel, I used equiliym's last nightly and the screen worked but had lag and ghosting... then I built my own nightly with blade sources modified for mooncake & blade prebuilts, since then the screen is distorted. It seems like it isn't recognising correctly the size of the screen.

I can upload my sources to github so you can take a look if you want

Link to comment
Share on other sites

Guest GuyOverThere

I haven't tried a different kernel... I use the exact same prebuilts that work for Blade & V9.

The kernel works in CWM recovery fine, but in Rom I have the screen issue, the only errors that appear on logcat are the two I posted above so I suspect that it is a lib problem. If I remember correctly in the first builds of my .35 kernel, I used equiliym's last nightly and the screen worked but had lag and ghosting... then I built my own nightly with blade sources modified for mooncake & blade prebuilts, since then the screen is distorted. It seems like it isn't recognising correctly the size of the screen.

I can upload my sources to github so you can take a look if you want

You can upload it if you want, others might want to check it as well.

Checking if I could reach the same problems as you I started working again on .35 sources and compile a kernel, it boots and touchscreen isn't disorted, although it's behaving funny, it has some weird ramdon refresh, like some buffer is being updated or something, also I've few copyBits errors and wifi is dead (although I was thinking in using ar6000.ko and wifi folder from blade as it is to see if wifi start making signs of life). Anyhow, if anyone is interested here's my .35 test and is for gen1 phones: http://www.mediafire...4me6f4smp8ybjmd is a just a test, not reliable or anything

I wish I could provide a screenshot but the ridiculous power button isn't working lol odd since keypad, vol+ and vol-, call and endcall works, only power is dead =/

I'll upload a gen2 version for mikeioannina and any other that can test on gen2 phones in a momment.

Edit://

Here's the gen2 version, see if it boots lol and if touchscreen is also disorted http://www.mediafire.com/?qgsoiuiriinauzo

Edited by GuyOverThere
Link to comment
Share on other sites

Guest mikeioannina

I always try not to modify the original source very much or make changes that don't break other devices so when the sources reach a stable state I'll submit the changes to CM gerrit so maybe we'll have official support some day.

@GuyOverThere

I think I had the same bug with the screen refresh before I started building my own nightlies... now the screen is distorted

Edited by mikeioannina
Link to comment
Share on other sites

Guest GuyOverThere

@GuyOverThere

I think I had the same bug with the screen refresh before I started building my own nightlies... now the screen is distorted

Hmmm... well I haven't changed the rom or libs, just the kernel to test, did you found the screen refresh cause?

I didn't change much from blade sources, enable l20x cache, setting my gen1, added config_mach_mooncake in a few places (sdcards, battery and the like definitions) where it made sense (it has already ifdef config_mach_blade for instance) and compile msm_ts instead of synaptics-i2c-rmi, synaptics-cypress and blade touchscreen

Edited by GuyOverThere
Link to comment
Share on other sites

Guest mikeioannina

Hmmm... well I haven't changed the rom or libs, just the kernel to test, did you found the screen refresh cause?

I didn't change much from blade sources, enable l20x cache, setting my gen1, added config_mach_mooncake in a few places (sdcards, battery and the like definitions) where it made sense (it has already ifdef config_mach_blade for instance) and compile msm_ts instead of synaptics-i2c-rmi, synaptics-cypress and blade touchscreen

I haven't found what caused the refresh bug...

As I see we have done almost the same modifications. In the kernel .config did you leave all 3 screens that were enabled in 2.6.32?

EDIT: Can you send me your defconfig?

Edited by mikeioannina
Link to comment
Share on other sites

Guest GuyOverThere

I haven't found what caused the refresh bug...

As I see we have done almost the same modifications. In the kernel .config did you leave all 3 screens that were enabled in 2.6.32?

EDIT: Can you send me your defconfig?

No, I only used lead qvga and himax qvga.

defconfig here: http://pastebin.com/LmfrL0KP

Link to comment
Share on other sites

Guest mikeioannina

No, I only used lead qvga and himax qvga.

defconfig here: http://pastebin.com/LmfrL0KP

Thanks, it's almost the same as mine. There are differences only in camera, accelerometer and the displays (I have all 3 enabled)

EDIT: Does the kernel need to be compiled twice for gen1/gen2 phones? Or is there an easier way?

EDIT 2: GuyOverThere With the kernel you uploaded my phone does not boot now and throws up Netd errors in logcat.

Edited by mikeioannina
Link to comment
Share on other sites

Guest GuyOverThere

Thanks, it's almost the same as mine. There are differences only in camera, accelerometer and the displays (I have all 3 enabled)

EDIT: Does the kernel need to be compiled twice for gen1/gen2 phones? Or is there an easier way?

EDIT 2: GuyOverThere With the kernel you uploaded my phone does not boot now and throws up Netd errors in logcat.

Needs to compiled twice, even if gen was made mutliple selection in Kconfig, only one PHYS_OFFSET is used while generating the final zImage, I guess that two zImage files could be produced with changes to kernel core build procedures but that's way beyond me.

As for netd, can I then assume that it actually boots (or works, in the sense the phone recognize it) but netd is blocking load progress? I ask since a kernel that doesn't boot makes the phone unable to even reach logcat, is possible it's a problem with ramdisk, does it reach the bootanimation?

Edited by GuyOverThere
Link to comment
Share on other sites

Guest mikeioannina

As for netd, can I then assume that it actually boots (or works, in the sense the phone recognize it) but netd is blocking load progress? I ask since a kernel that doesn't boot makes the phone unable to even reach logcat

Yes that's what I mean (netd is blocking load progress)

Link to comment
Share on other sites

Guest GuyOverThere

Yes that's what I mean (netd is blocking load progress)

Can you post the netd errors?

Also, here's my logcat with .35.7 kernel, maybe check if there's any important differences regarding netd or egl http://pastebin.com/5RwBYSFH (although netd loads kinda earlier, maybe something is registered by logcat)

Edited by GuyOverThere
Link to comment
Share on other sites

Guest mikeioannina

Can you post the netd errors?

Also, here's my logcat with .35.7 kernel, maybe check if there's any important differences regarding netd or egl http://pastebin.com/5RwBYSFH (although netd loads kinda earlier, maybe something is registered by logcat)

I can see that the egl libs load fine on your phone, can you upload them somewhere or point me where to find them?

http://pastebin.com/2KfdgaBK here is my logcat... you can clearly see the erros in the end and it just keeps looping those errors until I turn off the phone.

Link to comment
Share on other sites

Guest GuyOverThere

I can see that the egl libs load fine on your phone, can you upload them somewhere or point me where to find them?

http://pastebin.com/2KfdgaBK here is my logcat... you can clearly see the erros in the end and it just keeps looping those errors until I turn off the phone.

Egl libs: http://www.mediafire...g99q25kgj49aqk1 I think this are from racerboy's #257 rom but I'm really not sure

Are you building netd? It does seem so, with racer we can't (while we can compile, doing that generate the DNSProxyListener errors you're getting and is the reason why in racer we use the prebuilt one) don't know if Carl's the same but who knows.

I think that while inherinting cm files, BUILD_NETD is set as true and since you're missing BUILD_NETD := false from BoardConfig.mk and you're not using prebuilt (PRODUCT_COPY_FILES += device/zte/mooncake/prebuilt/netd:system/bin/netd in device_mooncake.mk), netd is probably being compiled and sended to the device.

Check if you can use the netd prebuilt from here: https://github.com/netalien/cyanogenmod_device_zte_mooncake/tree/master/prebuilt (just push it with adb)

Edited by GuyOverThere
Link to comment
Share on other sites

Guest mikeioannina

When I built CM7 with .32 kernel, netd didn't work from source (only from prebuilt, the one you gave in the link) but when I started building with .35 kernel, netd worked with no errors from source.

I used your egl libs but the phone does not even get past the ZTE logo now... can you send me the libgsl.so too?

Link to comment
Share on other sites

Guest GuyOverThere

When I built CM7 with .32 kernel, netd didn't work from source (only from prebuilt, the one you gave in the link) but when I started building with .35 kernel, netd worked with no errors from source.

I used your egl libs but the phone does not even get past the ZTE logo now... can you send me the libgsl.so too?

o.O crap xD

libgsl.so: http://www.mediafire...x3b2ze0mkm38o6p

Edit://

Hmmm are you building gralloc as well?

Here's something from your logcat:


I/SurfaceFlinger( 208): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...

I/mooncake.gralloc( 208): using (fd=27)

I/mooncake.gralloc( 208): id = msmfb30_30001

I/mooncake.gralloc( 208): xres = 240 px


I/mooncake.gralloc( 208): yres = 320 px

I/mooncake.gralloc( 208): xres_virtual = 240 px

I/mooncake.gralloc( 208): yres_virtual = 640 px

I/mooncake.gralloc( 208): bpp = 16

I/mooncake.gralloc( 208): r = 11:5

I/mooncake.gralloc( 208): g = 5:6

I/mooncake.gralloc( 208): b = 0:5

I/mooncake.gralloc( 208): width = 38 mm (160.421051 dpi)

I/mooncake.gralloc( 208): height = 51 mm (159.372543 dpi)

I/mooncake.gralloc( 208): refresh rate = 2.03 Hz

D/libEGL ( 208): loaded /system/lib/egl/libEGL_adreno200.so

D/libEGL ( 208): loaded /system/lib/egl/libGLESv1_CM_adreno200.so

D/libEGL ( 208): loaded /system/lib/egl/libGLESv2_adreno200.so

E/libEGL ( 208): eglSetSwapRectangleANDROID:1909 error 3008 (EGL_BAD_DISPLAY)

I/SurfaceFlinger( 208): EGL informations:

And here's mine during load:


I/SurfaceFlinger( 878): SurfaceFlinger's main thread ready to run. Initializing graphics H/W...

E/msm7k.gralloc( 878): RGB565

D/libEGL ( 878): loaded /system/lib/egl/libGLES_android.so

D/libEGL ( 878): loaded /system/lib/egl/libEGL_adreno200.so

D/libEGL ( 878): loaded /system/lib/egl/libGLESv1_CM_adreno200.so

D/libEGL ( 878): loaded /system/lib/egl/libGLESv2_adreno200.so

I/SurfaceFlinger( 878): EGL informations:

I don't know where that msm7k.gralloc error is comming from but the interesting part is that I don't have any mooncake.gralloc information logs regarding graphics, since you're building it from source, could it be related to the screen issue?

Edited by GuyOverThere
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.