yashsingh1/xdaforums huggingface dataset:
[Gen9 Android Development] Quinny899:
Uploading a version with this:

- 4.2 System apps, gapps, system sounds, fonts etc.

- 4.2 declared in build.prop, it's sort of like a 4.2 mockup

- Fixed LQ YouTube video

- Camera is now detected as nonexistent, so apps like Google Talk don't force close anymore and Camera isn't in the app drawer

- Fixed vold.fstab by default (SD model version)

- CM10 boot animation by default

- GoogleNow works by default

- Removed not needed apps (like ROM Manager) - Some, like Apollo and Browser [Chrome is default browser] are included but not installed, just install them from the Optional Apps folder and you'll have them back

- Added SRS for better sound

- Using SuperSU rather than Superuser (better support)

If I get permission, I'll make a new thread with an install guide and everything

EDIT: DONE AND MADE A THREAD HERE:

http://xdaforums.com/showthread.php?p=34627139
[Gen9 Android Development] Quallenauge:
I thought, after Quinny used my rom as base (see this post, I could clean up some thinks in my repo. This way it is possible to compile newer revisions of the CM10 (as my version is some months old...).

So I set up a repo which contains the manifest which can be used for the repo init command:

repo init -u git://github.com/Quallenauge/android.git -b jellybean
repo sync
-- Some coffee--
. build/envsetup.sh
brunch archos_g9

This manifest mix the source repositories of cyanogenmod with the device specific repos of TI (mainly cm repos are used but proprietary drivers are used from TI). Have a look on it under

cat .repo/manifests/default.xml

after the repo init command.

It seems to compile and builds a system folder on the output directory (as usual), which can be used to replace the system folder within the image provided by me and also by quinny. (Next step should be, that this root image should also generated by the build system).

mkdir mount
sudo mount archos.ext4.update mount
sudo rm -rf mount/system
sudo cp <cm_out_product_dir>/system mount/

# As preparation modules have to linked to system/lib/modules
# This step has only performed once

sudo cd mount/lib/
sudo rm -rf modules
sudo ln -s /system/lib/modules modules
sudo umount mount

As kernel I used 3.0.21 with initramfs from the stock rom 4.0.25 for testing.

I finally get it =) Problem was, that the right gralloc.omap4.so was missing. By just symlinking to the correct gralloc after building the rom it works!

cd /system/vendor/lib/hw
ln -s gralloc.4460.so gralloc.omap4.so

It boots up - the cyanogen loading bootscreen is shown on screen (yeah, that means graphics is working). Then cyanogenmod disables adb per default and the bootscreen animation never ends and I don't can see the cause =(

--> So does anybody know, how to remove/or to set the right setting when no user interface can be used?
[Gen9 Android Development] trevd:
Sounds like you've made progress there, Sounds a bit wierd as well.... It is a bit of ***t that CM does that with a adb.... on thing to try would be to boot into a working CM10 then swap the roms out when you've got debugging turned back that way debugging should always be on.....

I've tried a couple of tricks myself trying to force adb at startup persistant and default properties etc with mixed results, one way I have had success in the past is to stick a "start adbd" in the "on init" category of the init.rc.

Unfortunately I turned my tablet into a brick at the moment otherwise I'd be involved..... I'm having a bit of my on fun atm with surfaceflinger on x86 so I know the pain :laugh:
[Gen9 Android Development] Quallenauge:
Hey Trevd!

Yes the CM guys have decided to make their installations more secure. Which makes harder to hack :(

I will try that! If I get the reason why the desktop doesn't come up I can disable it finally. (As a side node: I watched the CM10 bootanimation for about 5 minutes, everytime it has a short pause, I thought that this will be the moment the desktop appears...but it starts only from the beginning...=) )

I read on the other topic about the corrupt boot loader of your tablet. I hope you don't leave us to soon, because you provide very good informations details of our tablet / work.
[Gen9 Android Development] trevd:
Ay, I suppose having a look at the last logcat just before they kill adb might have given you a clue....... I tend to always have logcat running while booting..... gives me peace of mind :)

Ay, I spoke with Mr Scholbert who's advised me on how to enable USB BootMode, ATM however I don't know whether I've done more damage, I might just pick up a cheap A80 to hack on ...... I can probably get a base model for around £50GBP now, at least the touchscreen will work :) I've got an Nexus7 and a couple of phones sat here but It seems every other device is boring, they just work! I kinda of like the way archos had screwed up the Rom Layout and had all these crazy quirks, It makes it interesting to develop on.
[Gen9 Android Development] stevemp:
logs

Still not booting, here are the logs.

last_kmsg

http://pastebin.com/iAmye5Hz

logcat.log

http://pastebin.com/LUhqc7hb

And a couple of items from tombstone

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***

Build fingerprint: 'Android/cm_archos_g9/archos_g9:4.1.2/JZO54K/eng.smp.20130107.121530:userdebug/test-keys'

pid: 16924, tid: 16981, name: SurfaceFlinger >>> /system/bin/surfaceflinger <<<

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***

Build fingerprint: 'Android/cm_archos_g9/archos_g9:4.1.2/JZO54K/eng.smp.20130107.121530:userdebug/test-keys'

pid: 16752, tid: 16756, name: sharesd >>> /system/bin/sharesd <<<

signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000

Edit When I did a make clean noticed something.

build/core/tasks/kernel.mk:82: **********************************************************

build/core/tasks/kernel.mk:83: * Kernel source found, but no configuration was defined *

build/core/tasks/kernel.mk:84: * Please add the TARGET_KERNEL_CONFIG variable to your *

build/core/tasks/kernel.mk:85: * BoardConfig.mk file *

build/core/tasks/kernel.mk:86: **********************************************************
[Gen9 Android Development] Quallenauge:
Maybe the the graphics driver is not initialized. Due the closed source politic of the vendor (Imagination Technologies) it is a

try&error game to solve such problems :(

In my case the pvrsrvinit command was not really executed by the init script. Can you please execute this command:

"pvrsrvctl_SGX540_120" or "pvrsrvinit".

Whats the output?

Thats interesting, because in the BoardConfig.mk file, there is the right entry:

TARGET_KERNEL_CONFIG := archos_g9_defconfig
[Gen9 Android Development] stevemp:
pvrsrvinit

Detected platform as OMAP4460 ES1.1

Failed to load /system/lib/modules/pvrsrvkm_sgx540_120.ko

Strange about the missing archos_g9_defconfig, the kernel boots fine.
[Gen9 Android Development] Quallenauge:
So I tried it yesterday, but I think I wanted too much.

First, the pvrsrvkm_sgx540_120.ko module is builded when the CM9 inside the build process. I don't know why this module is not copied into the /system/lib/modules library, but the only the prebuilded module from TI SGX package.

So I copied it. Then I symlinked the gralloc.4460.so to gralloc.archos.os (in /vendor/lib/hw).

Next step was to realize that the omaplfb which I used from TI-Kernel seems not to work. So I used the kernel from the 4.0.25 stock release. After that the omalfb.ko and the pvrsrvkm_sgx540_120.ko where loaded correctly on start.

Then I started it. As expected, the adb process where killed. So I went into the recovery menu and exported the date partition, mounted it into my system and changed the persistend property for USB configuration from "mtp" to "mtp,adb". After unmounting the usb storage and reboot the tablet, adb is active.

The surfaceflinger crashed again :( Seems that hwcomposer.omap4.so (provided by archos) is not compatible for the SGX drivers. So I deleted this file and now the system comes up (with software rendering? or simple composing - I don't know).

So I tried to enable WLAN with no luck. The module is searching on /lib/ti-connectivity so I symlinked it to /system/etc/ti-connectivity.

Now the module loads but fails to initialize the right firmware. Same error as here:

http://xdaforums.com/showpost.php?p=26775404&postcount=33

I don't know how we get forward. First steps where to

try the SGX drivers from archos and see If they run correctly with the archos hwcomposer.

Then the wlan issue should be solved. Maybe we must also use the wlan module/firmware from archos?

Then audio (I didn't try that) should be checked and maybe adapted.

Okay, I'm happy If someone would like to help. I can provide an image, which is of course broken because of the issues above ;)
[Gen9 Android Development] stevemp:
I am stuck at the same point, surfaceflinger crashing. Tried using the SGX drivers from Archos, same result. :( Even tried the ones from hashcode KFire, no luck there either. He was using the ones from Archos ICS before finding someone with access to source to build new ones for KFire. hashcode removes the cm hardware_ti_omap4xxx and builds with a different one --> https://github.com/KFire-Android/android_hardware_ti_omap4xxx Maybe today I will look at trying that.He also builds the pvrsrvkm_sgx540_120.ko different also. :confused:

# Graphics/IMGTEC

SGX_LOCAL_PATH := vendor/amazon/otter/proprietary/imgtec

SGX_MODULES:

make clean -C $(SGX_LOCAL_PATH)/eurasia_km/eurasiacon/build/linux2/omap4430_android

cp $(TARGET_KERNEL_SOURCE)/drivers/video/omap2/omapfb/omapfb.h $(KERNEL_OUT)/drivers/video/omap2/omapfb/omapfb.h

make -j8 -C $(SGX_LOCAL_PATH)/eurasia_km/eurasiacon/build/linux2/omap4430_android ARCH=arm KERNEL_CROSS_COMPILE=arm-eabi- CROSS_COMPILE=arm-eabi- KERNELDIR=$(KERNEL_OUT) TARGET_PRODUCT="blaze_tablet" BUILD=release TARGET_SGX=540 PLATFORM_VERSION=4.0

mv $(KERNEL_OUT)/../../target/kbuild/pvrsrvkm_sgx540_120.ko $(KERNEL_MODULES_OUT)

TARGET_KERNEL_MODULES += SGX_MODULES
[Gen9 Android Development] OpenMinded:
can anyone running or having this rom check if there is a pixcir module loaded?

it can be done by installing android terminal and type the command lsmod .

I would love to have the source from it, because it is used for protab 2 afaik :)
[Gen9 Android Development] stevemp:
Ready to test?

Just to be clear, this is based on Quinny899's 4.2 mockup updated with files from Quallenauge's 4.1.2

Mostly working: video, audio, and wifi. :victory:

Tested Chrome, You Tube HQ, Gmail, Play Store, Play Music, Play Movies. All work ok for me. Camera not working. Needs to be cleaned up and optimized, tired so maybe someone wants to help. :)

Quadrant score = 2154

AnTuTu Benchmark = 7301

Download link --> https://hotfile.com/dl/188900617/9a6e2c2/cm10-rom.tar.gz.html
[Gen9 Android Development] trevd:
Hi Folks, Look like you been having some fun in my absence, I managed to pick up a base mode G80 for £60 , Thanks to the eagle eyed Quinny989 who found the deal...

Before the Brick I had surdu's clean and fast booting with my recovery and ready to go, I had gotten rid of archos root file system completely but I had to symlink both /lib/modules and /lib/firmware , I had also hacking the init binary to premoun /dev/block/mmc0p4 ( /data ) so I coudl pull the persistant properties from /data/property.[/QUOTE]

I think our "Problem" here is that we're effectivilty dealing with an embedded linux system/kernel that has android support,

Obviously "my" ideal is to use the bootmode aware kernel , I did get the TI modules built and Booting althougn I was missing a watchdog on the temperature.

I think libedid came into play here, with me this handles setting up the HDMI clocks etc correctly, Something I got a lesson in when setting up my RaspP. The hwcomposer loads it though dlopen and from what I recall , removing it allowed booting to complete
[Gen9 Android Development] Quinny899:
Mind if I use this, merge it with my 4.2 mockup and release an update?
[Gen9 Android Development] stevemp:
This is your 4.2 mockup with /system apps bin and framework lib from 4.1.2. :) So feel free to do what you want with it. :D

Wait for the update, adb and su is broken or you can fix it. chmod 6775 su and remove from init.rc #import /init.usb.rc and

# USB accessory configuration
on property:sys.usb.config=accessory
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d00
write /sys/class/android_usb/android0/functions $sys.usb.config
write /sys/class/android_usb/android0/enable 1
setprop sys.usb.state $sys.usb.config

# USB accessory configuration, with adb
on property:sys.usb.config=accessory,adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 2d01
write /sys/class/android_usb/android0/functions $sys.usb.config
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state $sys.usb.config

:o Don't know why I did that, changing idVendor and idProduct breaks adb.
[Gen9 Android Development] Quinny899:
That's why I say merge :P , I'll just take the video libs for the HQ video

EDIT: You changed your post, will do that :D
[Gen9 Android Development] stevemp:
I think our "Problem" here is that we're effectivilty dealing with an embedded linux system/kernel that has android support,

Obviously "my" ideal is to use the bootmode aware kernel , I did get the TI modules built and Booting althougn I was missing a watchdog on the temperature.

I think libedid came into play here, with me this handles setting up the HDMI clocks etc correctly, Something I got a lesson in when setting up my RaspP. The hwcomposer loads it though dlopen and from what I recall , removing it allowed booting to complete

Easier to just dump the 3.0.21 kernel, init and modules and go back to the older kernel, init, and modules. :) That's what I did and pretty much everything works.

---------- Post added at 02:46 PM ---------- Previous post was at 02:43 PM ----------

I didn't change the video libraries, using the ones from your rom. :p
[Gen9 Android Development] trevd:
:good: Or that!
[Gen9 Android Development] Quinny899:
So why does HQ video work then? Or was that a typo?
[Gen9 Android Development] stevemp:
?

New skia and surfaceflinger ? I really don't know for sure, just kept swapping files till video was working. :rolleyes:

If you were using the skia from ICS maybe that's the reason it HQ wasn't working. I built a new skia when compiling CM 7.2, it's not a propitiatory file so you should use the new one.
[Gen9 Android Development] Quinny899:
Well you did what I couldn't. I'm pushing the ext4 now (painfully slowly). I'll "pimp" it for release and then release it to my thread with credit if that's fine by you?
[Gen9 Android Development] stevemp:
Sounds good to me, I am happy to see it working. You and Quallenauge deserve the credit anyway, most of the work was already done. :)
[Gen9 Android Development] Quinny899:
HQ video doesn't work on YouTube, you must have tried it on one of the rare videos it does

Anyway, done "pimping" it, zipping and uploading to goo.im now
[Gen9 Android Development] stevemp:
They haven't made any good music since the 60's. :p Just kidding. :)

The libs were the wrong ones for the kernel, not loading. I switched them out and now they load but --> AwesomePlayer( 512): cache is running low (0.03 secs) , pausing. Jerky video, any ideas? Network, plays local video fine.

Files needed for hd video, goes in system/lib --> http://www.mediafire.com/?8555dy6c11f1e41

Changing the buffer helped with lag for me, original archos size instead of CM10.

# Define TCP buffer sizes for various networks
# ReadMin, ReadInitial, ReadMax, WriteMin, WriteInitial, WriteMax,
setprop net.tcp.buffersize.default 4096,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.wifi 524288,1048576,2097152,262144,524288,1048576
setprop net.tcp.buffersize.lte 524288,1048576,2097152,262144,524288,1048576
setprop net.tcp.buffersize.umts 4094,87380,110208,4096,16384,110208
setprop net.tcp.buffersize.hspa 4094,87380,262144,4096,16384,262144
setprop net.tcp.buffersize.edge 4093,26280,35040,4096,16384,35040
setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680

Updated again video, network, and audio fixes --> https://hotfile.com/dl/188900617/9a6e2c2/cm10-rom.tar.gz.html
[Gen9 Android Development] julle131:
Nice. The rom seems to be working nicely, and youtube HQ/HD works for me. Can you setup a git or make zip of your device tree, so a n00b like me can build CM to?

Do you guys have any idea how to enable/add overclocking to kernel? I cant seem to find the right file to modify... I was suprised that I couldn't find any guides with google.
[Gen9 Android Development] muti642:
I installed the rom, I can confirm that everything works except the sail photo.

I have not seen a bug calender but I can not understand it or locate the bug.

by cons is there a way to started rom without a multi boot menu?

thank you for your great work
[Gen9 Android Development] Quinny899:
Some edits for you to do to your SystemUI:

com/android/systemui/statusbar/policy/DateView.smali

Line 577: (Replace whole method with this:

.method public onClick(Landroid/view/View;)V
.locals 6
.parameter "v"

.prologue
.line 214
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

move-result-wide v2

.line 216
.local v2, nowMillis:J
sget-object v4, Landroid/provider/CalendarContract;->CONTENT_URI:Landroid/net/Uri;

invoke-virtual {v4}, Landroid/net/Uri;->buildUpon()Landroid/net/Uri$Builder;

move-result-object v0

.line 217
.local v0, builder:Landroid/net/Uri$Builder;
const-string v4, "time"

invoke-virtual {v0, v4}, Landroid/net/Uri$Builder;->appendPath(Ljava/lang/String;)Landroid/net/Uri$Builder;

.line 218
invoke-static {v0, v2, v3}, Landroid/content/ContentUris;->appendId(Landroid/net/Uri$Builder;J)Landroid/net/Uri$Builder;
.line 222
return-void
.end method

This will fix the date click force close, instead doing nothing. If you can make it launch com.google.android.calendar.LaunchActivity (the new calendar from the Play Store), that would be even better

res/values/signal_cluster_view.xml

Line 11: Within FrameLayout, add the following code:

android:visibility="gone"

This hides the no signal bar in the bottom bar, but it still shows in the pop up bar when you press it (which is good, it's used for the 3G stick I believe)
[Gen9 Android Development] stevemp:
Archos uses an odd file system, I don't have the skills to do that. My contribution was to realize the proprietary files needed to be pulled from the 4.07 rom instead of the newer ones. Something changed in the newer init that makes it not work. My main tools are Google search, meld, and logcat. When trevd posts most of the time I can't understand what he is saying. :confused: I am just an old retired guy (x-ray tech) who has a lot of free time for a hobby. I have been using Linux since the days when you downloaded the source code and compiled, whole os fit on a floppy. :)

---------- Post added at 12:03 PM ---------- Previous post was at 11:58 AM ----------

Rename cm10.ext4 to archos.ext and use the kernel and initramfs.cpio.lzo from 4.07. I like to keep a working image on data/local to boot from in case of test image not booting.

I get popup on long press --> Complete action using com.google.android.calender or com.android.calender. short press brings up Alarms.
[Gen9 Android Development] Quinny899:
Ah, the 4.2 clock isn't compatible with the old alarm system then. You don't need to change it then. Long press brings up date/time settings and short press force closed SystemUI on the 4.2 mockup
[Gen9 Android Development] Quinny899:
Here's something for you all to do:

In system/etc/init, edit all the Init.A<Number><Letter>.rc files:

Change

setprop ro.product.device=A<Number>

to all say

setprop ro.product.device=archos_g9

This fixes OTA updating for GooManager, as long as you use a system as follows:

- Where your ext4 file is, make a folder called system

- In there, copy your build.prop from your ROM to

- Make sure the build.prop has the device as archos_g9

- If you have a goo developer id, enter it the normal way (see the goo developer page)

Then zip up the ext4 with the system (and boot files too if you want) and upload that to goo. It will show as a ROM for anyone who is already running a device with these requirements

It's not in my ROM currently, but it will be in the next version :D
[Gen9 Android Development] Quallenauge:
Thanks quinny and stevemp!!!!!!

That was it!

I tried to copy the libion.so from 2.0.25 stock firmware and it works! HD video and camera also!
[Gen9 Android Development] Quinny899:
Camera works? Sending you the changes via PM now ;)

Also, UPLOAD IT :D
[Gen9 Android Development] TrOjAnUK:
Well done mate... have you got USB in the 3g slot working on this latest version?? for some reason it worked on V1 but not on the latest

TrOjAn
[Gen9 Android Development] stevemp:
3g

My bad, I don't have 3g so it's probably not in the one I made. :o Good to see more things working, I have been busy with AOKP 4.2.1, quite a few changes to understand plus changing to a more standard android build environment. Proprietary manufacturer blobs in vendor, just the way I'm used to having it setup, no difference in results. :)
[Gen9 Android Development] Quinny899:
TBH I'd advise using ParanoidAndroid rather than AOKP to build 4.2 from, as it would be much more suited towards the G9. But I suppose I you got it booting I could probably port PA with it
[Gen9 Android Development] Quallenauge:
USB dongle didn't work yet.

I uploaded my alpha version here:

archos_image.tar.bz2

Remember: Alpha only for testers.

Quinny: I will try to merge your changes, when I have some free time =)
[Gen9 Android Development] Quinny899:
I'll merge it backwards, take the libs from this one, see what happens. But now, Latin revision D:
[Gen9 Android Development] stevemp:
OK, ParanoidAndroid it is, downloading the source now. :)
[Gen9 Android Development] Quinny899:
Is it just my G9 that doesn't like the gralloc in that ext4? I'll merge it with the gralloc from my ROM, see if that helps
[Gen9 Android Development] julle131:
Sorry if I seem ignorant, but what do we do with tablet and phone mode in tablet :D? Some of PA's option are nice though... I'd love to see it on G9 ;) :good:
[Gen9 Android Development] Quinny899:
It's more the fact you could use it to change DPI independently, which is useful for apps like chrome, which I have trouble touching the close button on. You also get toggles in the notification bar, you don't with AOKP tablet mode I don't think
[Gen9 Android Development] Quallenauge:
Maybe you can try to symlink gralloc.4430.so to gralloc.archos.so. I symlinked it to gralloc.4460.so, maybe this is the cause.

I don't think, you can't use the gralloc library from your ROM, because this lib is from the SGX package provided by TI.
[Gen9 Android Development] stevemp:
New Test

Doesn't boot with the kernel that came with it, switched to the kernel from 4.0.26 rom and all is good. :good: Not rooted though, no problem for me.

Tested and working: ADW Launcher, Apollo, Calendar, Camera, Chrome, Clock, Crackle :good:, Fruit Slice, Gmail, Google Voice Search, Mobo Player, Xfinity :good: (DRM Protected streaming video from my cable provider), everything I've tried works except You :( Tube but that's normal.

One thing I've noticed is hashcode and Samsung i9100g, both omap 4430 processors use additional build options:

TARGET_CPU_ABI := armeabi-v7a

TARGET_CPU_ABI2 := armeabi

TARGET_CPU_SMP := true

TARGET_ARCH_VARIANT := armv7-a-neon

ARCH_ARM_HAVE_TLS_REGISTER := true

TARGET_GLOBAL_CFLAGS += -mtune=cortex-a9 -mfpu=neon -mfloat-abi=softfp

TARGET_GLOBAL_CPPFLAGS += -mtune=cortex-a9 -mfpu=neon -mfloat-abi=softfp

I haven't tried them so can't tell you if they make a difference. Really good job, very close to perfect CM10. :highfive:

EDIT: I believe the last two lines will make a difference in libskia.so, might clean up the 2d video artifacts. Just a guess on my part, could be wrong.