[KERNEL] [UNIFIED] Anykernel - Galaxy Tab 2 (Unified 7" + 10.1") Android Developm

ANYKERNEL
espressowifi / espresso3g
Please respect the following 2 points
No feature requests!
Overclocked Kernel can be found here
NOTE:
This product is provided "as is" without any warranty. Use on your own risk.
I am not responsible for burned CPU or GPU.
Any kind of OC is really dangerous on Galaxy Tab2. While OMAP 4460 has a built-in temperature sensor, OMAP 4430 doesn't have one. Nothing stops it from overheating...
If you don't read and respect the OP, you accept to make a donation of 50$ to a charity of your choice!
​ [#WARRANTY]
It is difficult to update all Roms frequently, and it does not always makes sense to compile, download and flash a whole rom, if only some kernel changes are applied.
This kernel will include changes before i add them official to our kernel source (most of the time security bugfixes)!
Android 5.1 and Android 6.0
This Kernel works on all Android 5.1 and Android 6.0 Roms for espressowifi and espresso3g.
Android 4.4
On Android 4.4 we need a different kernel, 4.4 Kernel includes "KitKat" tag on zip name.
What else to say
Kernel compiled using GCC 4.8
Anykernel based on Anykernel2 by @osm0sis ( https://github.com/osm0sis/AnyKernel2 ) - it will dump your boot.img and replace the zImage and add proper kernel modules.
Roms with default libion
LineageOS (unofficial)
espresso3g
lineage-11-20180131-2053-UNOFFICIAL-espresso3g.zip and newer
lineage-13.0_espresso3g-6.0.1-20180130-2211.zip and newer
lineage-14.1_espresso3g-7.1.2-20180131-1859.zip and newer
espressowifi
lineage-11-20180131-2033-UNOFFICIAL-espressowifi.zip and newer
lineage-13.0_espressowifi-6.0.1-20180130-2146.zip and newer
lineage-14.1_espressowifi-7.1.2-20180131-1818.zip and newer
OmniRom (unofficial)
espresso3g
omni_espresso3g-4.4.4-20180127-2337.zip and newer
omni_espresso3g-6.0.1-20180128-0312.zip and newer
omni_espresso3g-7.1.2-20180128-1319.zip and newer
espressowifi
omni_espressowifi-4.4.4-20180127-2310.zip and newer
omni_espressowifi-6.0.1-20180128-0251.zip and newer
omni_espressowifi-7.1.2-20180128-1254.zip and newer
SlimRoms (unofficial)
espresso3g
Slim-espresso3g-4.4.4.build.9.15-UNOFFICIAL-20180128-0125.zip and newer
Slim_espresso3g-6.0.1-20180128-2332.zip and newer
Slim_espresso3g-7.1.2-20180131-1617.zip and newer
espressowifi
Slim-espressowifi-4.4.4.build.9.15-UNOFFICIAL-20180128-0028.zip and newer
Slim_espressowifi-6.0.1-20180128-2308.zip and newer
Slim_espressowifi-7.1.2-20180131-1555.zip and newer
Unlegacy-Android:
All official Unlegacy-Android builds starting on 15th feburary use the default libion
Roms with new DDK
Slim6 , Slim7, OmniROM4, OmniROM 6, OmniROM 7 and LineageOS 11, LineageOS 13 and LineageOS 14.1 compiled after 01.03.2019
[#DONATETOME]
XDA:DevDB Information
(unified) Anykernel, Kernel for the Samsung Galaxy Tab 2
Contributors
Android-Andi, Ziyan
Source Code: https://github.com/Unlegacy-Android/android_kernel_ti_omap4/commits/3.0/common
Kernel Special Features: Testing before applying on our source official, CVE fixes
Version Information
Status: Testing
Created 2016-10-21
Last Updated 2020-05-02

Reserved
As requested, here's my setup to compile espresso kernel.
01.05.2020
Follow https://github.com/andi34/android_build-bot/blob/manifest/README.md and https://github.com/andi34/android_build-bot/blob/kernelcompile/README.md
What do you need
Kernel Source (you can get our latest kernel source on SlimRoms, OmniRoms or CyanogenMods github, "espresso10 kernel")
GCC ( https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8 )
pvr source, added to omap4-common device repo and hardware_ti_omap4 repo (can be found on SlimRoms, OmniRoms or CyanogenMods github)
you can use my scripts put below (update some paths, marked red )
AnyKernel2 Source from osm0sis (see 1. post, update for your tab2 needed)
build-gcc4.8.env:
Code:
[COLOR="Red"]export CROSS_COMPILE='/android/kernelcompile/arm-eabi-4.8/bin/arm-eabi-'[/COLOR]
export LDFLAGS=''
export CFLAGS=''
export SUBARCH=arm
export ARCH=arm
[COLOR="Red"]export STRIP=/android/kernelcompile/arm-eabi-4.8/bin/arm-eabi-strip[/COLOR]
alias 'stm'='$STRIP --strip-unneeded *.ko'
compile-espresso.sh
Code:
#!/bin/bash
readonly red=$(tput setaf 1) # red
readonly grn=$(tput setaf 2) # green
readonly ylw=$(tput setaf 3) # yellow
readonly blu=$(tput setaf 4) # blue
readonly cya=$(tput setaf 6) # cyan
readonly txtbld=$(tput bold) # Bold
readonly bldred=$txtbld$red # red
readonly bldgrn=$txtbld$grn # green
readonly bldylw=$txtbld$ylw # yellow
readonly bldblu=$txtbld$blu # blue
readonly bldcya=$txtbld$cya # cyan
readonly txtrst=$(tput sgr0) # Reset
err() {
echo "$txtrst${red}$*$txtrst" >&2
}
warn() {
echo "$txtrst${ylw}$*$txtrst" >&2
}
info() {
echo "$txtrst${grn}$*$txtrst"
}
setbuildjobs() {
# Set build jobs
JOBS=$(expr 0 + $(grep -c ^processor /proc/cpuinfo))
info "Set build jobs to $JOBS"
}
info "Kernel source path: $KERNELSOURCE"
info "PVR Source path: $PVRSAUCE"
info "Working directory: $WORKINGDIR"
info "resulting zImage and modules stored at: $WORKINGOUTDIR"
setbuildjobs
info "Moving to kernel source"
cd $KERNELSOURCE
info "Import toolchain environment setup"
info "Toolchain: $TOOLCHAIN"
source $SAUCE/build-$TOOLCHAIN.env
info "Create a buid directory, known as KERNEL_OUT directory"
# then always use "O=$SAUCE/espresso" in kernel compilation
info "create working directory"
mkdir -p $WORKINGDIR
warn "Make sure the kernel source clean on first compilation"
make O=$WORKINGDIR mrproper
warn "Rebuild the kernel after a change, maybe we want to reset the compilation counter"
echo 0 > $WORKINGDIR/.version
if [ "$VARIANTDEFCONFIG" = "*p*" ]; then
info "Import kernel config file: $DEFCONFIGNAME"
info "Import variant config file: $VARIANTDEFCONFIGNAME"
make O=$WORKINGDIR VARIANT_DEFCONFIG=$VARIANTDEFCONFIG $DEFCONFIGNAME
info "Change kernel configuration if needed using:"
info " make O=$WORKINGDIR menuconfig "
VARIANTDEFCONFIG=
else
info "Import kernel config file: $DEFCONFIGNAME"
make O=$WORKINGDIR $DEFCONFIGNAME
info "Change kernel configuration if needed using:"
info " make O=$WORKINGDIR menuconfig "
fi
info "lets build the kernel"
make -j$JOBS O=$WORKINGDIR
if [ -f $WORKINGDIR/arch/arm/boot/zImage ]; then
info "Copying the resulting zImage and modules to: $WORKINGOUTDIR"
info "Creating directory..."
mkdir -p $WORKINGOUTDIR
mkdir -p $WORKINGOUTDIR/modules/system/lib/modules
cp $WORKINGDIR/arch/arm/boot/zImage $WORKINGOUTDIR/
find $WORKINGDIR/ -type f -name *.ko -exec cp {} $WORKINGOUTDIR/modules/system/lib/modules/ \;
info "Files moved!"
info "Pointing KERNELDIR to KERNEL_OUT directory"
export KERNELDIR=$WORKINGDIR
warn "Make sure the PVR source clean."
warn "Running 'make clean'..."
make clean -C $PVRSAUCE/build/linux2/omap4430_android
info "Building the PVR module..."
# we now use the default libion, our kernel was updated
make -j8 -C $PVRSAUCE/build/linux2/omap4430_android TARGET_PRODUCT="blaze_tablet" BOARD_USE_TI_LIBION=false BUILD=release TARGET_SGX=540 PLATFORM_VERSION=4.1
info "Copying the resulting PVR module to: $WORKINGOUTDIR"
cp -fr $PVRSAUCE/binary2_omap4430_android_release/target/pvrsrvkm.ko $WORKINGOUTDIR/modules/system/lib/modules/pvrsrvkm_sgx540_120.ko
mv $PVRSAUCE/binary2_omap4430_android_release/target/pvrsrvkm.ko $WORKINGOUTDIR/modules/system/lib/modules/
warn "Don't leave any module objects in PVR source!"
warn "Running 'make clean'..."
make clean -C $PVRSAUCE/build/linux2/omap4430_android
info "Properly stripping the kernel modules for smaller size (implified as stm command inside build.env)..."
cd $WORKINGOUTDIR/modules/system/lib/modules
stm
info "####################"
info "# Done! #"
info "####################"
else
warn "####################"
warn "# FAILED! #"
warn "####################"
fi
cd $SAUCE
espresso-m.sh
Code:
#!/bin/bash
[COLOR="Red"]SAUCE=~/android2/kernelcompile
PVRSAUCE=~/android2/official/omap4/stable/pvr-source/eurasiacon
KERNELSOURCE=~/android2/official/kernel/android_kernel_ti_omap4[/COLOR]
TOOLCHAIN="gcc4.8"
DEFCONFIGNAME=espresso_defconfig
WORKINGDIR=$SAUCE/out/$DEFCONFIGNAME
WORKINGOUTDIR=$SAUCE/$DEFCONFIGNAME-bin
. `dirname $0`/compile-espresso.sh
espresso-k.sh
Code:
#!/bin/bash
[COLOR="Red"]SAUCE=~/android2/kernelcompile
PVRSAUCE=~/android2/official/omap4/stable/pvr-source/eurasiacon
KERNELSOURCE=~/android2/official/kernel/android_kernel_ti_omap4[/COLOR]
TOOLCHAIN="gcc4.8"
DEFCONFIGNAME=espresso_kitkat_defconfig
WORKINGDIR=$SAUCE/espresso-kitkat
WORKINGOUTDIR=$WORKINGDIR-bin
. `dirname $0`/compile-espresso.sh

Reserved
DEVICE SPECIFIC ANYKERNEL
Edit 02.05.2020
Latest device specific AnyKernel-Zip can be found here:
https://forum.xda-developers.com/showpost.php?p=79259009&postcount=204
Please note: our kernel detects your Tab2 variant at boot and chooses the right driver and config for your device! In some cases (e.g. if the mainboard or the screen got replaced) your device variant isn't detected right and it will use wrong driver!
I am not sure how many user are affected, but in such case we can skip the intelligent board detection and hardcode the variant.
Attached device specific kernel should work on all unified espresso/espressowifi & espresso3g roms from Android 5 up to Android 7, for Android 4 Roms please use the "kitkat" version.
Feel free to buy me a coconut water if it helped you to keep your Tab still, after many years, almost up to date.

UPDATE AnyKernel-2016-10-21
- Update the ext-csd.rev check for eMMC5.1 (fixes emmc detection for some tab2)
- CVE-2016-5195
- CVE-2016-6828
- CVE-2016-7042

thanks andi.
working nice on my own builded aosp-6.0 10/16

Some more CVE fixes applied on top of previous kernel:
CVE-2014-8173
CVE-2014-7970
CVE-2014-5206
CVE-2016-0819
CVE-2015-8830
CVE-2014-9715
I added a CVE overview on 2nd post.
Edit:
Added a KitKat version

Hi Android-Andi.
Has this kernel the OPTION (or plan to enable) to overclock ?
Thanks.

galoneta said:
Hi Android-Andi.
Has this kernel the OPTION (or plan to enable) to overclock ?
Thanks.
Click to expand...
Click to collapse
No as mentioned in first post! Move out of this thread if you are not able to read first post.
~ All my work, news etc. on http://andi34.github.io ~

Guys, if you don't read the OP the thread will be closed and you can take care about a security patched kernel yourself.
Source is available on github, add everything you miss by your own and stop spamming this thread!
Edit: everyone not accepting the forum rules will be reported!
Edit2: Thanks @ Moderator for the post remove / thread clean
~ All my work, news etc. on http://andi34.github.io ~

SORRY!
I know its off topic but you should read this
http://www.xda-developers.com/9-yea...-dirty-cow-can-root-every-version-of-android/

Emo Darkemotion said:
SORRY!
I know its off topic but you should read this
http://www.xda-developers.com/9-yea...-dirty-cow-can-root-every-version-of-android/
Click to expand...
Click to collapse
OP states that its already patched
Android-Andi said:
"CVE-2016-5195" https://github.com/Unlegacy-Android/...b19311a9089b77
Click to expand...
Click to collapse

Emo Darkemotion said:
SORRY!
I know its off topic but you should read this
http://www.xda-developers.com/9-yea...-dirty-cow-can-root-every-version-of-android/
Click to expand...
Click to collapse
It is quite funny making noise about a bug which existed 9 years now.
1. It is fixed on my kernel as mentioned on 2nd post (wonder why i spend time doing it)
2. I don't see an issue on custom roms (can be fixed within 2 minutes), i would worry about android by your Manufacturer (on all devices).
On android we change the wheel: no central updates like on linux or windows - it is up to your manufacturer to update your device and there's a lot of security issues fixed by google on android every month (and sure, some kernel side too). How many stock updates you get? 1, maybe 2 within 1 year and support drops after that.
To be true: i am not sure if my next device is an android device:
On my g4 i am on stock rom and LG cares 0 about it (Security patch level 2016-07-01... I waited 6 or 7 month to get that update and it was already 1 month behind).
If manufacturer don't care about theire flagships, what else can we do? Flashing custom roms? Right works, but on my daylie driver i don't like to be a flashahollic... I am more thinking about using a different OS.
You should think about my words and don't care about a already fixed security issue
~ All my work, news etc. on http://andi34.github.io ~

Hi Andy,
First of all, many thanks for all your work! I´m using your ROMs and kernels since Slimkat and all are great!
I also do my best colaborating with the translating team of CyanogenMod and SlimRoms (Brazilian Portuguese).
But now I would like to compile a kernel bymyself, to patch the CVEs, changes I like, etc.
If you have time, can you post here the steps you do to compile the Anykernel?
Don´t need to waste time explaining the things, just post the step-by-step commands (git clone, makes, ADBs, etc) and I will do my research, ok?
Thanks in advance and greetings from Brazil!

AranhaEscarlate said:
Hi Andy,
First of all, many thanks for all your work! I´m using your ROMs and kernels since Slimkat and all are great!
I also do my best colaborating with the translating team of CyanogenMod and SlimRoms (Brazilian Portuguese).
But now I would like to compile a kernel bymyself, to patch the CVEs, changes I like, etc.
If you have time, can you post here the steps you do to compile the Anykernel?
Don´t need to waste time explaining the things, just post the step-by-step commands (git clone, makes, ADBs, etc) and I will do my research, ok?
Thanks in advance and greetings from Brazil!
Click to expand...
Click to collapse
Sure, i have nothing to hide i can upload my script next days. Busy on other stuff atm maybe send a small reminder if the script isn't added on 3rd post of this thread end of next week.
~ All my work, news etc. on http://andi34.github.io ~

Android-Andi said:
Sure, i have nothing to hide i can upload my script next days. Busy on other stuff atm maybe send a small reminder if the script isn't added on 3rd post of this thread end of next week.
~ All my work, news etc. on http://andi34.github.io ~
Click to expand...
Click to collapse
Oh and @Android-Andi just a small request , change the color of the text for ""CVE-XXXXXYYYY" DOES NOT AFFECT" because This colour is hard to read on the screen .

AranhaEscarlate said:
(...)
If you have time, can you post here the steps you do to compile the Anykernel?
Don´t need to waste time explaining the things, just post the step-by-step commands (git clone, makes, ADBs, etc) and I will do my research, ok?
(...)
Click to expand...
Click to collapse
http://forum.xda-developers.com/showpost.php?p=69241933&postcount=3
Must be enough, everything else you need to read / find out yourself

iamashwin said:
Oh and @Android-Andi just a small request , change the color of the text for ""CVE-XXXXXYYYY" DOES NOT AFFECT" because This colour is hard to read on the screen .
Click to expand...
Click to collapse
Done, should be better now.

Android-Andi said:
http://forum.xda-developers.com/showpost.php?p=69241933&postcount=3
Must be enough, everything else you need to read / find out yourself
Click to expand...
Click to collapse
Thank you very much, Andy!!!
It´s more than enough!
Everything else, I will read documentation at the Internet, but this is a great starting point for me.

What kind ANY KERNEL is important when you can not clocked CPU and graphics

Kutuzov666 said:
What kind ANY KERNEL is important when you can not clocked CPU and graphics
Click to expand...
Click to collapse
Dont use it if you dont want it!
It is for the kind of people who want a secure kernel ... more secure than the one given by samsung (I dont remember the last time they sent us a patched kernel update ...or did they !)
Nearly all the device I own are waaaay too insecure (be it my router (its also a linux system) , phone Landline TV ...) except for my 4 year old tab all thanks to Andi ! Respect it
Besides OP is doing all this as a hobby and not for your or my benefit.
Stop spaming this thread ! Please READ
Please respect the following 2 points
No feature requests!
Overclocking will never be added here!
If you don't read and respect the OP, you accept to make a donation of 50$ to a charity of your choice!
Click to expand...
Click to collapse
PSS If you are satisfied with the answer please delete the message and so will I .Lets keep this thread clean.

Related

Building AOSP Gingerbread for Droid

(I would post this in the developer forum, but I don't have 10 posts)
I'm working on building Gingerbread from AOSP for Droid. I was hoping to gather information here on how to do this should someone want to build a rom in the future.
So far, I've followed the steps at http://source.android.com/source/download.html to fetch android-2.3.3_r1 (FWIW, I'm running OS X). For the droid, I also needed to clone these git repositories (mostly CM7 fixes) into the associated folder:
https://github.com/koush/proprietary_vendor_motorola - into vendor/motorola. When running git clone, be sure to add "-b gingerbread" to get the latest version. These are the binary blobs that one would normally get by running extract-files.sh.
https://github.com/CyanogenMod/android_device_motorola_sholes - into device/motorola/sholes. This is Droid-specific device information.
https://github.com/CyanogenMod/android_system_wlan_ti - into system/wlan/ti. This is the wifi driver.
https://github.com/CyanogenMod/android_hardware_ti_omap3 - into hardware/ti/omap3. These are other hardware drivers.
https://github.com/CyanogenMod/android_hardware_libhardware_legacy - into hardware/libhardware_legacy. More hardware libraries.
Additional fixes needed to complete build:
In device/motorola/sholes/overlay/frameworks/base/core/res/res/values/config.xml, comment out the line containing "config_flashlight_affects_lightsensor". This is part of CM7 code which disables the light sensor when the flashlight is on; an alternative fix would be to port this code into your tree.
Perform the two fixes at the bottom of the OP in http://forum.xda-developers.com/showthread.php?t=899674 - RGB_565 and Camera. Camera is definitely necessary for building - I believe the RGB_565 fix is necessary for Live Wallpapers.
Take the changes from https://github.com/CyanogenMod/andr...mmit/29f40ea86fe96f66b5a22c7a2bb84055c73e99be - this will prevent Launcher from crashing on boot. Thanks to PeterAlfonso for this fix!
Once the source tree is set up as described, you can run:
Code:
source build/envsetup.sh
lunch (select generic_sholes-userdebug)
make -j 4 otapackage
to start building Android, which will take a while depending on the speed of your machine.
This will create a file named out/target/product/sholes/generic_sholes-ota-eng.*username*.zip - this can be applied as an update.zip in the usual fashion. However, it contains the stock recovery files, which will overwrite the recovery partition you have. So, using any program which can modify zip files, delete the recovery/ folder.
At this point, you should have a flashable, Gingerbread, AOSP rom for droid!
Peter Alfonso (author of a great stock rooted Gingerbread rom for Droid) pointed out a fix for the launcher issues I was having, and I've updated the OP to reflect this. Compiling the changes now - hopefully the rom will boot, and this will represent a full set of instructions for compiling a vanilla gingerbread Droid rom!
I'm trying to compile it, but I'm getting this error:
Code:
Nathan-Camposs-MacBook-Pro:AOSP Nathan$ lunch generic_sholes-userdebug
sed: illegal option -- r
usage: sed script [-Ealn] [-i extension] [file ...]
sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
build/core/product_config.mk:194: *** _nic.PRODUCTS.[[device/motorola/sholes/sholes.mk]]: "build/target/product/small_base.mk" does not exist. Stop.
** Don't have a product spec for: 'generic_sholes'
** Do you have the right repo manifest?
Nathan-Camposs-MacBook-Pro:AOSP Nathan$
Could you help me?

[KERNEL] marmite v10.6 final

Download latest marmite: this post
Download marmite for old versions e.g. Jellybean: version matrix
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Marmite once made me more sick than I'd ever been before or since.
But I still love it. #truefact
This kernel is based on the stock jb kernel. I have kept, added or tweaked the features I approve of:
- CFQ I/O scheduler (best performing)
- Ondemand, tweaked values
- BLN (no blinking), BLD and Fast-Charge
- more free RAM
- Bluetooth fixed and PM_FAST (keeps fast wifi even with screen off)
- Voodoo sound and colours with my settings for a stable whitepoint at all brightnesses.
- Zcache: compressed cache stored in ram, improves performance by retrieving cached pages from ram rather than flash
- MTP (explanation below the links)
- custom OC available
Voltage and OC quoted from a chip designer with 14 years industry experience: here.
What is ORD?: here.
Facebook by leap_ahead: here
What you need to know about Custom OverClocking [OC]: here.
Interesting discussion of gamma and RGB setting (voodoo): here.
My kernel doesn't wipe your cache or dalvic, so you can flash and reboot in less than a minute. Read this.
What is MTP?
Firstly, huge props to krfoy for making this work with the any-kernel script. Great work!
Microsoft's Media Transfer Protocol. It allows for dramatically faster transfers too the phone, so it is really good when you are copying over films or mp3 folders. What's really good is that you can continue to use your apps while these transfers happen. Faster? More functional? You bet! The limitations are that it is relatively unsupported on non-Windows platforms. However, you can investigate these possibilities: Ubuntu: here. --- --- Mac: here.
How to Select MTP/PTP
Go to Settings>Storage>(Hit capacitive menu button)>USB Computer Connection to select.
If your ROM doesn't have the switch there then check this tip from pigsan! or use the command line.
* * *
Big thanks: ...to the community! So many people supported my research that it's impossible to thank them all individually. Particular thanks to tchaari and Harbb. Credit goes to: _thalamus for getting me started with git, correcting my misconceptions about merging; KalimochoAz for CM; ezekeel for the incredible variety of mods; mathkid95 for ondemand tweaks; steve.garon for help with scripting; morfic for his advice and permission to use his colour settings; and supercurio for voodoo. Big thanks to krarvind for MTP, legend! Congrats to krfoy for enabling MTP via the any-kernel script. Nice work! Thanks to caliban2 for his consistent and unbiased feedback. Thanks to brainmaster, when I originally joined the forums for being so helpful. Hopefully I treat newcomers just as kindly.
Old versions: http://goo.gl/B0p8Z
TOOLCHAIN: Linaro a8 optimised by @Christopher83 here
SOURCE: http://github.com/bedalus/marmite
Download ICS version: v1.5b (For ICS 4.0.4)
NOTE: Opening AnTuTu breaks Deep Idle! If you have to use this app, disable DI until you can reboot.
Flashable Patch for BiggerMem: http://d-h.st/NSx
This kernel is based on the work of the cyanogenmod team:
Cyanogenmod base features:
- Merged to 3.0.39 from mainline.
- Voodoo sound v10
- "Biggermem" 404MB (morfic's idea if I remember right)
- BLN
- SLUB memory allocator*
- Deep Idle:- Kalim included code that limits the maximum frequency to 800MHz when DI is active. Great innovation Kalim! I have modified this code to fix the screen off frequency to 400MHz for efficiency.
Click to expand...
Click to collapse
I have enabled the things I like:
- CFQ scheduler. It's a tiny notch down from deadline in performance, but very consistent. Kalim disabled it in the nightlies where I got my base configuration, so I've brought it back.
- Deadline I/O scheduler adjusted for flash for lowest I/O latencies (thanks thalamus)
- BLX
- BLD
- Voodoo colour
- Gamma settings by morfic, thank him for giving permission
>>> Try these settings in Voodoo: raise all gamma to 20, then set RGB to 189-185-214
- SmartassV2 governor*
- Deep Idle locks to 400MHz regardless of your governor settings. This is an adaptation of kalim's code. Why? Because I proved that 400MHz is the most power saving state for Deep Idle. Excerpt from research: here.
- Removed pointless governors
- Removed noop scheduler
- Removed OC and custom voltage
- PM_FAST (fast wifi with screen off: power saving for downloading files, but slightly higher power use when idle compared to PM_MAX)
- 1.2 GHz step
- v0.6 onward have MTP working for ROMs that support it. Krarvind is the one who made this work (donate to him here), with the help of another dev, so kudos to them.
Version History
v1.5b: http://d-h.st/BhK
-Morfic's colours fixed!
-Merged to 3.0.39
-DI fixed at 400 MHz, the most power saving state, using thalamus' code, which is stable!
-ICS ONLY!!
v1.4d http://d-h.st/66r (ICS ONLY)
-stable
-probably last version I'll do for ICS
-DI fixed at 800MHz
-reorganised fixed DI code a little
-If you have no video on MIUI, check out this tip!
v1.4b http://d-h.st/l7X
-Made some code reorganisation based on thalamus suggestion
-Created a patch!
v1.4 http://d-h.st/MoU
-Made DI fix at 800 MHz using the performance governor which saves CPU cycles
v1.4_test http://d-h.st/UOt
-Possibly unstable, please try to collect last_kmsg
-Includes new 'performance DI': When Deep Idle state is called the governor switches to performance to save CPU cycles
-DI fixed at 800MHz for stability
-thalamus' DI spinlock patch
-Mathematically sensible smartassV2 tunable settings to save CPU cycles (working well)
v1.3c: http://d-h.st/HJY
-Stable
-Minor bugfix release (bugs in freq stepping that were my own faulty code merges)
-_thalmus' DI patch
-If you have no issues with 1.3b skip this, and wait for v1.4
v1.3b http://d-h.st/n55
-Frequency stepping bugfix
-Stable (I really mean it this time ) ...so I deleted the other download links, apart from the early _thalamus based one.
-Shrank the download to a normal size: I'd forgotten to remove the redundant zImage from the any-kernel script. (I don't use that since I flash a boot image).
v1.3
-thalamus' mutex to spinlock patch has been integrated. I've tested this, as I'm sure thalamus has, and DI of course still works fine, but because this is the first time anyone has touched the DI code in a few months, I think it's safer to call this a TEST release.
-I fixed the minimum fq getting stuck 200MHz issue, which was an issue actually caused by myself: when I was altering the available OC I failed to adjust all the levels correctly.
-Having trouble with 200MHz? >Read this<
All previous releases have been pulled. Use the current stable please! Remember: enjoy marmite!
Big thanks: ...to the community! So many people supported my research that it's impossible to thank them all individually. And big thanks to the developers who have selflessly helped a total noob get his kernel off the ground. Credit goes to: KalimochoAz for representing cyanogenmod in this forum and his tweaks; _thalamus for his patience and getting me started with git and modules, correcting my misconceptions about merging; ezekeel for the mods; mathkid95 for ondemand tweaks; steve.garon for help with scripting; morfic for his advice and permission to use his colour settings; and supercurio for voodoo. Big thanks to krarvind for MTP, legend!
SOURCE: http://github.com/bedalus
Note: If you want to repost this guide, feel free to download it here (text file, includes all XDA formatting.) Please give credit.
Why would you want to build a kernel yourself?
Click to expand...
Click to collapse
Have you read this: http://forum.xda-developers.com/showpost.php?p=21006133&postcount=1144
In that spirit, I'm going to attempt to write a plain-English tutorial on what to do to build this kernel. In fact, change one or two URLs, and you could build practically any kernel!
Note: I'm assuming you're on a PC here. I'm also assuming this isn't your first trip to linux-land, and you've at least used the terminal a few times before now. I'm also going to assume that even if you are a noob, you're not mentally sub-normal.
Note2: If this is your first time building a kernel, you may want to print this out, and go slowly, and if you get stuck, post about it in the thread! It will help me improve the guide.
What makes this different to other tutorials?
Click to expand...
Click to collapse
I'm a noob at building, but a professional at teaching. It's literally my job! In my noobishness, I made good records of pretty much every step, and I've got lots of time for explaining what each step actually does.
THE STEPS
Got a computer?
Click to expand...
Click to collapse
You'll need one to compile stuff. "For Gingerbread (2.3.x) and newer versions, including the master branch, a 64-bit environment is required." (source)
OK. You're probably thinking of compiling a kernel for ICS or higher right? Is your computer only 32 bit? Pull the processor off the motherboard and count the pins. Just kidding. It won't matter if it is AMD or Intel, but it needs to be a 64 bit processor. I can compile a kernel with just 2GB of RAM and my processor is approaching its 9 year. Even with this lousy set-up, compiling a whole kernel from scratch takes only five minutes.
Install Ubuntu 10.04 64-bit. (Click on this link to download the install CD.)
If you've got a spare hard drive, use the whole thing. If you're good at partitioning, you might consider putting the linux swap partition on a separate disk. You'll want it to be at least 8GB. Putting it on a separate disk will speed things up.
If you don't have a spare disk, you're going to have to resize a partition of an existing OS, to make some new space for Ubuntu. Lets say a minimum of 12GB for the OS plus 8GB for the swap. The more space you can give to the OS, the easier your life will be if you're serious about building stuff.
At the end of the installation it will ask to install a boot-loader. This should be on sda (not sda1!) but you may need to adjust your BIOS to point at the right hard-drive if you later find it doesn't boot into Ubuntu when you restart. Don't worry about Windows, Ubuntu provides a boot menu, so you have the option of booting to Windows instead.
Once Ubuntu is installed, reboot then open a terminal and sort out your credentials:
Code:
sudo passwd root
Type in the password you set during the install, then decide on a password for the root user, and enter it once, then again for confirmation. It can be the same as your user password if you like.
Do some updates (this could take a while):
Code:
sudo apt-get update && sudo apt-get dist-upgrade
When it's finally finished, you'll have to reboot, then repeat until there's no updates left.
You're ready to set up a build environment!
Click to expand...
Click to collapse
First, you need a whole bunch of packages. You could copy and paste this into your terminal:
Code:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner" && sudo apt-get update && sudo apt-get install sun-java6-jdk
That's java sorted.
Next up is the dependencies for compiling stuff:
Code:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32ncurses5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc libsdl-dev libesd0-dev libwxgtk2.6-dev libncurses5-dev lib32z1-dev gcc-multilib git-core && sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so
Make sure ADB is initialised:
Code:
gedit /etc/udev/rules.d/51-android.rules
and copy the below into a blank text file, then edit both instances of <username> to your Ubuntu username (lower-case!) and no chevrons: ="<bedalus>" is wrong. You want ="bedalus"
Code:
# adb protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", MODE="0600", OWNER="<username>"
# fastboot protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", MODE="0600", OWNER="<username>"
Now save the file!
Get hold of a Cross-Compiler
Click to expand...
Click to collapse
Follow this link to Mentor Graphics Sourcery CodeBench LITE and do a free signup to get the download link. You can get hold of other ones, like Linaro or Google's own, but I'm using this as an example, because it's the one I use, and Ezekeel published some R&D here that showed there was no measurable benefit to one toolchain over another.
When you've downloaded it, you need to copy it to /opt:
Code:
cd /home/<username>/Downloads
cp arm-some-date-some-version-some-arch.tar.bz2 /opt
Note- Obviously that's not the actual name of the file! But you can see what it's really called when you download it.
Now go to /opt and unpack it:
Code:
cd /opt
tar xjf arm-some-date-some-version-some-arch.tar.bz2
So I've got all the tools. Now what?
Click to expand...
Click to collapse
So now you need to get some source code. You can use 'git clone' if you don't plan on publishing your kernel. But if you've made some modifications and want to share your end result, you need to obey the GPL terms for the linux kernel, which is Open Source, meaning that you are required to make your source available publicly.
Go to github: https://github.com/
...and sign up. It's just a free registration provided you are non-commercial. Github has some useful getting started tutorials, which I suggest you follow:
https://help.github.com/articles/set-up-git
(just follow that first page for now. I will walk you through git in a bit...)
Next, fork a repo:
Go to whichever kernel you like: https://github.com/bedalus/bedalusKERNEL
I'm using mine as an example. Look for the big 'Fork' button.
You've now got your own copy on github, and you can do whatever you like with it, without affecting the original.
However, it's no use if it exists only in the cloud. You need to get a local copy. You'll also want something called a 'remote tracking branch', which will enable you to keep up-to-date with the changes going on in the original repository that you have forked-off from.
Critical Step:
Click to expand...
Click to collapse
Shout 'fork-off!' at the top of your voice.
Uh... okay. Now, to get a local copy, and set up your remote-tracking branches, execute:
Code:
cd /home/<username>/
mkdir mykernel
...you can name your new directory whatever you want. It doesn't have to be 'mykernel', then:
Code:
git clone https://github.com/<your github username>/bedalusKERNEL.git
In the above, put your git username, and substitute bedalusKERNEL.git for whatever your fork is called. You can actually copy and paste the URL from the top of your new github repo's page if you want.
It's going to download about 800MB if I remember correctly. This will take a while, so go have some marmite on toast.
When that's done, you're ready for the remote-tracking branch:
Code:
cd bedalusKERNEL (or whatever your fork is called)
git remote add upstream https://github.com/bedalus/bedalusKERNEL.git
git fetch upstream
The 'git remote add upstream' creates a new branch called upstream, and any changes that the original developer uploads to github can be fetched to your machine with the 'git fetch upstream' command. Notice how this time, the download time is much shorter? That's because of 'delta downloads' which only downloads the differences between what you have, and what they have. (There's some technical detail here.)
Git Tip No. 1: What branches do I have?
Click to expand...
Click to collapse
You can now enter:
Code:
git branch
...to see all your branches. At this point there should be 'origin' and 'upstream'.
Git Tip No. 2: How do I change branches?
Click to expand...
Click to collapse
Changing branches (you might as well do this now just to have a little go):
Code:
git checkout upstream
That will move you onto the upstream branch, as long as you haven't made any 'uncommited' changes in origin. (More on that later.) Change back to origin with:
Code:
git checkout origin
Git Tip No. 3: How do I rename a branch?
Click to expand...
Click to collapse
You might want to rename your branches to help personalise them, just to make remembering which is which a little bit easier. To change origin to 'my_version' do this:
Code:
git branch -m origin my_version
You can change upstream to 'their_version' or something else if you want to. It won't stop anything from working.
More Git Tips later. Let's sort out a build script. If you tinker with any code, you'll inevitably break stuff, and need to fix it, and then need to try building again... So, having a build script is going to save you a lot of time, because there are several steps that can be automated.
Here's how the start of my script looks:
Code:
#!/bin/sh
cd /home/dave/mykernel
git branch
read -p "Correct branch? [Y/N]: " -n 1
if [[ ! $REPLY =~ ^[Yy]$ ]]
then
echo -e "\n"
exit 1
fi
This is just a little precaution that I put in to give myself the chance to abort the build before it starts if I'm on the wrong branch. If I don't hit y then the script aborts, and I can checkout the right branch, then restart the script.
Code:
echo -e "\nSTARTING...\n"
The \n prints a new line, then on that new line the message 'STARTING...' and then begins another new line. If you put \n\n you can print a blank line. The echo command is a good way of putting notices in a script so you know what stage it is at.
Code:
export PATH=$PATH:/opt/toolchain/bin/
export ARCH=arm
export SUBARCH=arm
export CROSS_COMPILE=arm-none-eabi-
If you put these lines in your script, it sets 'environment variables' that tells the make program where to find the compiler, and what processor it's compiling for (ARM).
If you now save your script in the /mykernel directory you created earlier, git can keep track of it as well as the files integral to the kernel. Save it as whatever you like, e.g. "myscript.sh"
...It's important to have the .sh extension so the system knows it is a script.
To make your script executable, run:
Code:
chmod a+x myscript.sh
Before you execute the script, you need a .config file in the mykernel directory. If you've cloned my repo, you can get a working one by executing:
Code:
cp arch/arm/configs/crespo_release_defconfig ./.config
...this command will only work properly if you are in the mykernel directory when you execute it.
You can mess with this config file if you like! But it's very easy to break the kernel. However, you can always just copy the crespo_release_defconfig again.
Now, to execute the build script run:
Code:
./myscript
If you execute your script, your compiler will now build the kernel. It will take time, but even on my ten-years-old PC it takes less than ten minutes from scratch.
The compiler will spit out a lot of messages. Most of the time it's telling you that it has compiled an object (i.e. a .o file, which will all be linked up later to form the kernel) and sometimes you'll see warnings, which is the compiler telling you it thinks something might be wrong. Don't worry, most of the time the compiler is just being over-cautious.
If the compiler hits a real problem with the code, it will print an error, and tell you what file, and what line, and how far along that line it managed to get to before it didn't know what to do. I'll get back to this later. For now, let's assume everything compiled.
You'll see a message about the zImage being created. That's the kernel. You can't use it as it is, you need to put it into a boot.img so you can flash it.
I find it useful to add this command in my build-script:
Code:
ls -l /home/dave/mykernel/arch/arm/boot/zImage
ls -l means list with long format. It'll print out the entire contents of a directory with size, time, permissions, etc. if you execute it in a directory, or point it to a directory. However, in the command above, I've pointed it specifically at the zImage file, so it only prints out the details for that. This is so I can check the time. If the time is from yesterday, I can see quickly that there has been an error in the build, and the zImage is still the same one I built yesterday, or an hour ago... etc. depending on the time-stamp printed out.
If you get a 'No such file' error, it's because there is no old zImage, because you haven't ever successfully built one yet.
If you sat and watched the entire thing build, then the timestamp should show the current time, minus a few seconds.
How do I make this zImage into a CWM flashable .zip file?
Click to expand...
Click to collapse
Yay! You've built a kernel. Now you need to make everybody else flash it to their phones too
To do this you need to put it into a boot.img, and then into a .zip file.
Making the boot.img
Click to expand...
Click to collapse
Download this: http://d-h.st/wVZ (make-boot necessary files)
It's a small download. It's some very simple tools that can split an existing boot image into a ramdisk and zImage, and can also stitch them back up.
Move mkboot.zip into your mykernel folder, right click on it, and select 'Extract Here'. You can now delete mkboot.zip. There is a tool called unbootimg, that can take apart existing boot.img files, I've made things simple by including my own ramdisk, which is compatible with AOSP and CM ROMs. That file is called cyan2disk_new.cpio.gz
We now need to add some new stuff to the script to stitch our zImage and ramdisk together.
If you've not already added the ls -l command I mentioned above, also add this now. Then:
Code:
cp /home/dave/mykernel/arch/arm/boot/zImage /home/dave/mykernel/mkboot/
cd /home/dave/mykernel/mkboot
./mkbootimg --kernel zImage --ramdisk cyan2disk_new.cpio.gz --cmdline 'no_console_suspend=1 console=bull's --base 0x30000000 --pagesize 4096 -o boot.img
Remember, your username is not dave! Unless it is. Make the appropriate changes to the path.
How do I make the CWM flashable .zip file?
Click to expand...
Click to collapse
We're nearly there! This bit is relatively painless. At this point you could save and run the script to check that mkboot is working. If it has worked you can use the same ls -l trick from before, but this time target the boot.img file you just created. If the time-stamp is fresh, it means your boot.img is correct.
TIP: If you haven't switched branches, or run 'make clean', all your .o files are unchanged. The make program keeps track of changes, and only recompiles .o files when the corresponding .c file has been altered. If nothing has changed, your build script will execute very quickly!
To make a flashable .zip file, the easiest thing to do is modify an existing .zip file. You can download my kernel for simplicity, since it already has the necessary script for flashing the entire boot partition. (Most kernels here use koush's any-kernel script, which updates only the zImage and keeps the boot partition's existing ramdisk, so if you try to use another kernel .zip as a template, make sure you correct their updater-script. Using my ramdisk and kernel script will also ensure you keep MTP!)
Once you've downloaded my kernel you should extract it in your home folder, then rename the directory to something like 'myzip'
Now add these lines to your build-script:
Code:
cp /home/dave/mykernel/mkboot/boot.img /home/dave/myzip/boot.img
cp /home/dave/mykernel/drivers/scsi/scsi_wait_scan.ko /home/dave/myzip/system/modules/
"What's that second line? With the .ko file?" I hear you say. Depending on what modules you build, you'll need to copy all of them to the folder specified above. Fortunately, when the kernel finishes building, it tells you what modules have also been built. If you don't want modules in your kernel, you can remove the second line above. However, you must edit your .config file: Open it in gedit, use CTRL+F to open the find dialogue, then type "=m" Now, change every one you find into a "=y" ...so now instead of building modules, the kernel will now incorporate all that code into the zImage instead.
Finally, add this line to your build-script:
Code:
7z a -r -tzip /home/dave/mykernel.zip /home/dave/myzip/*
Run the script again. if everything has gone smoothly, then you now have a flashable .zip in your home directory!
Congratulations!
* * * * * * * * *
More git tips!
Click to expand...
Click to collapse
I've compiled a list of commands you may find handy when getting to know git.
Add a remote branch and track it
git remote add ezekeel git://github.com/Ezekeel/GLaDOS-nexus-s-ics.git
git fetch ezekeel
git checkout --track -b bln ezekeel/bln
Merge in the changes
git merge bln
Resolve conflicts
git mergetool
List local branches
git branch
List remote branches
git branch -r
Switch branch
git checkout branch_name
Rename a branch
git branch -m old_branch_name new_branch_name
View log with short sha1 hash
git log -10 --pretty=format:"%h - %ar: %s"
Restore to a particular point
(IMPORTANT! Don't do this if you've already pushed your commits to github!)
git reset --hard <sha1 hash>
Restore to your last commit
git reset --hard HEAD
Restore to one commit before your last commit:
git reset --hard HEAD^
Restore to two commits before your last commit:
git reset --hard HEAD^^ (etc.)
As long as you haven't pushed to github,
squash all your recent commits into one:
git rebase -i <sha1> ...then change push to squash (or fixup) for all except the first one
git rebase -i --abort (to abort!)
Add .file (i.e. hidden file)
git add .file (simple!)
Add all new and modified files
git add .
Deleting files
(i.e. after doing rm <files>)
git add -u (git will note which files have been deleted)
Bring files from a directory in another branch
git checkout cyanogenmod drivers/cpufreq/
Tells you what changes you've made so far
git status
Commit your changes
git commit (type in your notes about what you did, then CTRL+X then Y to save)
Sync your commits to your github repo
git push <repo_name> <branch_name>
Delete a remote branch
(WARNING: This will delete the entire branch from github
Note: You cannot do this to the default github branch, but you can change the default branch in the admin tab on the website)
git push <repo_name> :<branch to be deleted>
General tips! File management, searching... etc.
Click to expand...
Click to collapse
Find a file (useful for troubleshooting in some situations)
find /home/dave/ -name 'buildlean.sh'
(searches the home folder and subdirectories for 'buildlean.sh')
Find within any *.c file, the text "s5pv210_driver" (good for finding bits of code)
find ./ -type f -name *.c | xargs grep s5pv210_driver
Find within any file, the text "s5pv210_driver" (good for finding bits of code)
find ./ -type f | xargs grep s5pv210_driver
bedalus said:
Thalamus recently changed the way he compiles his kernel. This was his previous stable release, based on Samsung source code.
The cyann.mobi adds bln, touchwake. Features that thalamus has said are unnecessary.
Click to expand...
Click to collapse
bedalus Hello, I can add this kernel to the list I made on the kernel and rom?
Yes, but be sure to give credit to the right people.
I've decided to attempt to build my own version of thalamus' kernel with some mods.
If I'm not too retarded, hopefully i can achieve this in the next few days.
As a result of learning to manage git and c, I'll have less time for forum posts.
bedalus said:
Yes, but be sure to give credit to the right people.
I've decided to attempt to build my own version of thalamus' kernel with some mods.
If I'm not too retarded, hopefully i can achieve this in the next few days.
As a result of learning to manage git and c, I'll have less time for forum posts.
Click to expand...
Click to collapse
Looking forward to this
Sent from my Nexus S 4G using xda premium
bedalus said:
Yes, but be sure to give credit to the right people.
I've decided to attempt to build my own version of thalamus' kernel with some mods.
If I'm not too retarded, hopefully i can achieve this in the next few days.
As a result of learning to manage git and c, I'll have less time for forum posts.
Click to expand...
Click to collapse
This is good news, Dave. I've been hearing a lot of good things about the new stable release of thalamus in the thread for his kernel that I've been moderating. However, a lot of people including me will be missing BLD and BLN so it's nice to see how it would perform with these mods. With those two plus Voodoo sound that's already cooked in the last release, this may be a kernel to be reckoned with. Cheers!
Sent from my Nexus S
bedalus said:
Thalamus recently changed the way he compiles his kernel. This was his previous stable release, based on Samsung source code.
The cyann.mobi adds bln, touchwake. Features that thalamus has said are unnecessary.
Click to expand...
Click to collapse
waiting for bedalus thalamus base plus addons
an interesting benchmark would be bedalus vs thalamus
Off-Topic: I've been discussing with thalamus about the need for a dalvik wipe before flashing a kernel, and he had some pretty convincing arguments against it. You can read his statement here.
Just wanted to get your opinion on this, if you have time. Thanks, Dave.
Sent from my Nexus S
jjhrrsn said:
Looking forward to this
Sent from my Nexus S 4G using xda premium
Click to expand...
Click to collapse
+1. Me too! Would be nice to have voodoo color included.
ironia. said:
waiting for bedalus thalamus base plus addons
an interesting benchmark would be bedalus vs thalamus
Click to expand...
Click to collapse
Thalamus wins,
REMATCH!
Thalamus wins again.
Good news, BLN added. I now know what I'm doing with the code merges, so more features to come soon.
Later on I may start trying to make some original mods, but for now we'll focus on existing ones.
Thanks to thalamus for his help with some extremely noobish questions,
...thalamus' latest but with added BLN and marmite.
To Do
Get organised
Push back to github so changes can be observed
Get some sleep
bedalus said:
Thalamus wins,
REMATCH!
Thalamus wins again.
Good news, BLN added. I now know what I'm doing with the code merges, so more features to come soon.
Later on I may start trying to make some original mods, but for now we'll focus on existing ones.
Thanks to thalamus for his help with some extremely noobish questions,
Here: http://d-h.st/Df6
...thalamus' latest but with added BLN and marmite.
To Do
Get organised
Push back to github so changes can be observed
Get some sleep
Click to expand...
Click to collapse
Lol at marmite.
Sent from my Nexus S®
apatal said:
Off-Topic: I've been discussing with thalamus about the need for a dalvik wipe before flashing a kernel, and he had some pretty convincing arguments against it. You can read his statement here.
Just wanted to get your opinion on this, if you have time. Thanks, Dave.
Sent from my Nexus S
Click to expand...
Click to collapse
Yeah, i agree with thalamus. I only wipe when switching ROMs.
I modified the script so it doesn't bother wiping cache or dalvic-cache
This makes flashing much more painless.
If anyone has trouble, reboot into recovery and wipe cache.
apatal provides some handy scripts for wiping: http://forum.xda-developers.com/showthread.php?p=19746141
To be completely honest, I wouldn't have been so helpful had I known you intended to release this, specially without saying anything to me about it.
I fully accept that the GPL doesn't require permission but to ask is both the polite and respectful thing to do.
The majority of others have always when they have wanted to release my work with superficial alterations...all it takes is 'I plan on doing this, what do you think?'
I have never had any objection, but to be asked first is just common courtesy, specially when you are asking me for help! You had plenty of chance to mention it whilst I was assisting you with your queries via email.
But hey...
_thalamus said:
To be completely honest, I wouldn't have been so helpful had I known you intended to release this, specially without saying anything to me about it.
I fully accept that the GPL doesn't require permission but to ask is both the polite and respectful thing to do.
The majority of others have always when they have wanted to release my work with superficial alterations...all it takes is 'I plan on doing this, what do you think?'
I have never had any objection, but to be asked first is just common courtesy, specially when you are asking me for help! You had plenty of chance to mention it whilst I was assisting you with your queries via email.
But hey...
Click to expand...
Click to collapse
From what i see here... Give him the big daddy credits as you used his sources...
_thalamus said:
To be completely honest, I wouldn't have been so helpful had I known you intended to release this, specially without saying anything to me about it.
I fully accept that the GPL doesn't require permission but to ask is both the polite and respectful thing to do.
The majority of others have always when they have wanted to release my work with superficial alterations...all it takes is 'I plan on doing this, what do you think?'
I have never had any objection, but to be asked first is just common courtesy, specially when you are asking me for help! You had plenty of chance to mention it whilst I was assisting you with your queries via email.
But hey...
Click to expand...
Click to collapse
Sorry, links pulled.
bedalus said:
Sorry, links pulled.
Click to expand...
Click to collapse
Too bad i was diggin the marmite just now lol
Sent from my Nexus S®
I feel quite bad now. I don't know what possessed me to release without getting the okay first. Eager to show off i think.
I'll get this thread locked as a lesson to myself!
bedalus said:
I feel quite bad now. I don't know what possessed me to release without getting the okay first. Eager to show off i think.
Click to expand...
Click to collapse
We're not perfect we have our own mistakes in life
Sent from my Nexus S®
Actually thalamus is fine for me to release this! Yay. Thanks thalamus.
Links will reappear when the OP is properly organised and credited.

[DEV][KERNEL SOURCE]Patched 3.0.21 - Bootmode Aware

Hi Folks
I thought I throw this one up for good measure.
Archos Kernel 3.0.21
I've made a couple of changes which are outline in the README2 file in the repo, but a quick summary.
Patched arch/arm/mach-omap4/omap4-reboot-reason.c to enable bootmode system property setting from the kernel command line which is required by CWM-SDE
I also back-ported the arch/arm/mm/proc-v7.S from the android-omap-3.4 kernel which means the kernel can be built using the standard android aosp toolchains Although It's probably still better to use Linaro Optimized!!
github.com/trevd/android_kernel_ti_archos.git
README2
Code:
android linux kernel 3.0.21 based on original archos sources found at
http://gitorious.org/archos/archos-gpl-gen9-kernel-ics branch: linux-ics-3.0.21
Android boot mode awareness:
----------------------------
changes made to arch/arm/mach-omap2/omap4-reboot-reason.c to enable correct setting
of android system property ro.bootmode.
designed to be used in conjunction with roms created using device files locating in
https://github.com/trevd/android_device_ti_archos.git
Proc-v7.S changes
-----------------
I've backported arch/arm/mm/Proc-v7.S from the android-omap-3 kernel 3.4 branch, this
was done to allow the kernel to be built using the standard android toolchain.
Building
--------
Clone the android aosp toolchain
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6
Using the Bourne Again Shell ( bash ) export an alias to make cross compiling easy
alias make-arm='<toolchain path>/arm-eabi-4.6/bin/:$PATH ARCH=arm SUBARCH=arm CROSS_COMPILE=arm-eabi- LOCALVERSION_AUTO=n make'
make-arm distclean && make-arm mrproper
make-arm ti_archos_defconfig
make-arm -j$(grep -c processor /proc/cpuinfo)
Out of tree drivers
-------------------
PowerVR Kernel Modules are not included in this release, they are available from omapzoom android aosp
repo located at git://git.omapzoom.org/device/ti/proprietary-open.git. this repo also contains the matching
userland binary blobs, versions of which exist for Gingerbread, ICS and JellyBean. See device tree documentation
for further details ( https://github.com/trevd/android_device_ti_archos.git )
Hi Trevd !
Thank you very much for your great work ! :good:
....how much I wish I could be useful ( I am currently with hands tied :laugh: - I have not my tablet ....but I'll be back as soon as I will receive my tablet from reparation centre ! )
Good luck & keep up your awesome work ! :good::good::good:
Wifi Drivers info and resources.
Hi Folks.
Along with building the PowerVR Drivers out of tree, It should be also possible to use the latest drivers for the wireless chip
This Page [ linuxwireless.org ] provides some nice documentation with the links to the repo's contain the lastest code along with what looks like some useful android related utilities

CM10.2 for the LG Optimus 2x

CM10.2 for the LG Optimus 2x
If you appreciate my work on the LG Optimus 2x you can support me by donating!
I am doing this for free in my leisure time because I like working on Android stuff and helping others out.
You're not required to donate, but I highly appreciate a couple free beers or pizzas as a gratidue for my work.
To quote one of the most famous xda developers:
Chainfire said:
Don't be a leech, buy me a beer (and use the "Thanks" button!). Imagine if every CF-Root user has donated me $1...
Click to expand...
Click to collapse
I am nowhere near his usercount, but just imagine if every happy (and only those) user of one of my ROMs has donated 5€+.
​
After some sleepless nights I am happy to present CM10.2 for the LG P990 :highfive:
The first post contains information for developers, the second one a download and changelog of my personal testbuilds.
My time is rather limited these days. I will maintain the p990 device tree for others to use and post my development test builds.
But I do not plan to support a clean CM10.2 build, as soon as I upgrade to my own fork of CM someone else will have to take over!
Core changelog:
Code:
2131109:
- buildflag optimizations (-Os for arm modules, slightly increases RAM)
- codebase updated to the CM-10.2-M1 snapshot (Android 4.3.1)
20130930:
- fixed camera getting stuck after taking a picture
(this isn't about camera FCs - try the norh kernel for them!)
20130930:
- fixed notifications causing media playback interruption
20130829:
- Hack: Disable Wifi suspend options by default
(this is a bcmdhd option not compatible to our bcm4329 drivers)
- Additional custom hardwarekeys button actions
- Add gesture based lockscreen security
20130824.2:
- option to use the external SD as primary
- using the T2 camera wrapper (which improves ISO, contrast and saturation)
20130824:
- removed all selinux/auditd etc. modules
- enabled timer coalescence/slack kernel functions by default
- fixed CPU speed options at the performance menu (tegra2 incompatibilities)
20130821:
- dalvik/vm: Dalvik startup with a low memory footprint (gives more free ram)
- built from the new consolidated device tree at [url=https://github.com/p990-dev/android_device_lge_p990/commits/cm-10.2]https://github.com/p990-dev/[/url]
20130820:
- Camera fixed
- hardware OMX fix (mp4 videos in the stock player etc.)
- Google TTS non-neon incompatibility fixed
20130812:
- SoftAP (wifi hotspot) fixed (see details below)
20130809:
- initial CM10.2 build
- device tree updated for Android 4.3 including:
fstab updates, RIL updates, CM10.2 source build incompatibilities fixed etc
Information for developers:
I have created a clean and consolidated device tree for cm-10.2 at p990-dev:
https://github.com/p990-dev/android_device_lge_p990/commits/cm-10.2
We do not need the split into p990 and star-common anymore (that has been done initially to support the p999), thus I decided to combine them.
I git merged them together to retain the 2.5 year old commit history (I really hate those "initial commit bringups, which destroy them completely).
It is only for the new bootloader, as we got a converter to support both.
But if someone wants to maintain a dedicated oldbl branch just send me a PM and I'll give you push access.
In order to build CM10.2 for the p990 we need to track frameworks/av to fix compiling and for the OMX stuff which fixes the camera.
I've set up a build manifest which you can use: https://github.com/p990-dev/android
If you want to fix the SoftAP (wifi hotspot) you need to track my modified system/netd package and apply the patch attached to this post to frameworks/base.
The fix isn't included by default because I'd have to maintain the frameworks/base package - and it would require almost daily updates or it gets out of sync with other packages relying on it causing the build to fail.​
Compile your own CM10.2 ROM
For those of you who want to build your own ROM (which I can highly recommend) I've copied the excellent build setup instructions by @Raum1807 here, they should still work for CM10.2:
Raum1807 said:
Make your 'own' ROM today!
0. Preparation
Things you need for building:
A computer
An internet connection
An open mind
Time
Patience
First of all you need a running up-to-date Ubuntu/Linux system. I am using Ubuntu 12.10 64-bit.
Use the terminal to make the steps. A terminal window can be opened by pressing Ctrl+Alt+T. Every single command for the terminal is marked with a $ sign. Just paste every command (without the $ sign) to your terminal window and there shouldn't be any problem.
IMPORTANT: INSTALL EVERYTHING AS A NORMAL USER. DON'T INSTALL AS ROOT!
[INDENTI. Installation of the required packages (Ubuntu 12.10 64-bit)[/SIZE]
Install packages:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils schedtool pngcrush xsltproc zlib1g-dev:i386
Set the links:
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
II. Installing JAVA
You need a Java Development Kit for building CM10. Recommended is the SUN JDK 6. As of writing the most recent version is SUN JDK 6 Update 38.
1. Download the jdk-6u38-linux-i586.bin from the Oracle/Sun Java Download Area. If you are on 64-bit Ubuntu as I am, you should grab jdk-6u38-linux-x64.bin.
2. Make the bin file executable:
Code:
$ chmod +x jdk-6u38-linux-x64.bin
3. Extract the bin file:
Code:
$ ./jdk-6u38-linux-x64.bin
4. Move the extracted folder to this this location:
Code:
$ sudo mv jdk1.6.0_38 /usr/lib/jvm/./jdk-6u38-linux-x64.bin
5. Install the new Java source in system:
Code:
$ sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/javac 1
$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/java 1
$ sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/javaws 1
$ sudo update-alternatives --install /usr/bin/javadoc javadoc /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/javadoc 1
$ sudo update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/javah 1
$ sudo update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/javap 1
$ sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk-6u38-linux-x64.bin/bin/jar 1
6. Select the default Java version for your system:
Code:
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javaws
$ sudo update-alternatives --config javadoc
$ sudo update-alternatives --config javah
$ sudo update-alternatives --config javap
$ sudo update-alternatives --config jar
7. Check Java version:
Code:
$ java -version
8. Verify the symlinks. Javac, Java, Javaws, Javadoc, Javah, Javap and Jar should all point to the new Java location and version:
Code:
$ ls -la /etc/alternatives/java* && ls -la /etc/alternatives/jar
III. The sources
Install repo:
Repo is a tool that makes it quite easy to download and maintain the sources of Cyanogenmod.
Code:
$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ cd ~/bin
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo[/QUOTE]
[/hide]
After this is done (one time only of course) you can build your own CM10.2 ROM.
There is no need to handle a local_manifest as I included the required repos into the main mainfest.
I've again used [user=4732829]@Raum1807[/user]'s instructions but updated them to CM10.2
[hide][B][SIZE=3]Get the sources[/SIZE][/B]
Start with creating a new working directory for CM10.2:
[CODE]$ mkdir ~/cm10.2
$ cd ~/cm10.2
Initialize Repo for Android CM10.2 (Android 4.3):
Code:
$ repo init -u git://github.com/p990-dev/android.git -b cm-10.2
and enter your credentials if needed.
Download the sources:
Code:
$ repo sync
Wait until it's finished (takes a lot of time!).
If the process hangs use Ctrl+C to break out of it and resume the download with another
Code:
$ repo sync
Initialize the environment
Code:
$ . build/envsetup.sh
Build the ROM
Code:
$ repo sync
$ breakfast p990
$ mka bacon
and flash it via CWM/TWRP. Make a clean start (if necessary) with format /system, wipe data/factory reset, etc..
Have fun!
Click to expand...
Click to collapse
for users
For users:
A download of my newest newbl testbuild is here:
http://tonyp.basketbuild.com/index.php?dir=main/CM-10.2/
https://meocloud.pt/link/ab96fec3-cac7-4a3f-b652-560ea5efbfa5/tonyp ROMs&Others/ (mirror by @trocopassu, thanks!)
It comes with kk 126 + kowalskimanager, mini gapps for 4.3.
Apart from my fixes to make this old device with ICS(!) blobs and an outdated kernel work it's mostly clean cm10.2 build.
Installation instructions (coming from another ROM than CM10.2):
Do a full wipe. Do another reboot after the first boot. Don't *****.
Installation instructions (updating to a newer CM10.2 build):
Flash the ROM. Reboot. No wipes needed.​
Working:
- Nearly the same features as in CM10.1 (phone, wifi, data, etc).
Not working (oh and pretty please, no "reminders" of what's broken):
- BT is pretty much broken - see here for more details
- camera (yes, it's completely broken)
- wifi hotspot
- all the cm10.1 bugs are still there of course (hdmi etc.)
Changelog:
Code:
[B]cm-10.2-20130824-UNOFFICIAL-p990.zip[/B]
- removed all selinux/auditd etc. modules.
- fixed setting the CPU speed at the performance menu
- enabled timer coalescence/slack kernel functions by default
- lowered the vibration strength
- merged upstream (JWR66Y is merged)
[B]cm-10.2-20130821-UNOFFICIAL-p990.zip[/B]
- dalvik/vm: Dalvik startup with a low memory footprint
- add the possiblity of using external sdcard as application storage for user 0
- added sys.mem.max_hidden_apps=4 to the build.prop
- back to CM10.1 stock GPS files
[B]cm-10.2-20130820-UNOFFICIAL-p990.zip[/B]
- Camera fixed \o/
- hardware OMX fix (mp4 videos in the stock player etc.)
- added my memory management option from CM10.1 (more aggressive task killing)
- long press the clear recents button to clear cache
- enabled development settings for the device owner by default
- enabled camera shutter muting (follows device sound settings)
- re-added Focal
- Google TTS fix
- included mini gapps package updated
- merged upstream
[B]cm-10.2-20130812-UNOFFICIAL-p990.zip[/B]
- SoftAP (wifi hotspot) fixed
- merged upstream
[B]cm-10.2-20130809-UNOFFICIAL-p990.zip[/B]
- initial build
Click to expand...
Click to collapse
Thank you
Sent from my Nexus 4 using xda app-developers app
here it is:
General Discussion here
Thanks for the adherence, compliance and understanding
Old bootloader version
Tonyp's Unofficial JB 4.3 oldBL will be shortly available...
Thanks to @tonyp for the porting methods
Thanks to @Custom40 for the effort of packing/repacking boot.img
please hold on for sometime......maybe available to the testers soon
Thanks guys
Sweet, I got the power to move threads from the dev discussion to this place
As the main issue seems fixed (spoiler alert - see below ) and I doubt there will come too much input from other developers anyways, I think we can continue this here.
Still try to use SREEPRAJAY thread for general input
Sooo... what's the big news.
Thanks to the help of @timduru I managed to find the missing piece which is required for this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
:victory: :victory: :victory:
I will post a new build in the evening :good:
Awesome Tony! You are EPIC man..Hats off
And for 4.3, let me try porting the LG cam!
That is called a good team.... @tonyp @pengus77 @spyrosk....as someone here said...you guys are preventing users from buying a new one....lol
Thanks a lot
And @Jishnu Sur joining for the cam....
And so many others who are behind the screen
BTW should I try porting it to the old bl?
Sent from my LG-P990 using xda premium
tonyp said:
[…]
As the main issue seems fixed (spoiler alert - see below ) […]
Sooo... what's the big news.
Thanks to the help of @timduru I managed to find the missing piece which is required for this:
:victory: :victory: :victory:
I will post a new build in the evening :good:
Click to expand...
Click to collapse
Ermahgerd you're such a genius, man. Thank you so much for your effort. I'm glad you finally found the missing piece required for the plant.
Tony, you're fantastic.
I can't say all my current feelings right now but I'm heating alot (me not my P990, :laugh
It's the first time in my life I hope to be back from hollydays soon to be able to download these new builds.
And any news about Github?
I know we all are grateful, but if hitting the thanks button is not enough, then please use the topic in the general section as tony said. Try to keep the topic right here as clean as it has been so far, no matter how hyped the great devs make us
Sent from my LG-P990 using xda premium
This is cool....
So i can add p990 back CM10.2 tree from PAC Man.... with nightly and mine builds. We have many things updated and added... Settings menu are new, now with OTA officially and many more xD
But i will wait a little bit and will see if all work fine in this Thread with a clean CM10.2.. Lets first fix all bugs
TonyP gratulations, great work
tonyp said:
Sweet
:victory: :victory: :victory:
I will post a new build in the evening :good:
Click to expand...
Click to collapse
:crying::crying::crying:
(tears of Joy..) hope that will be a real download link..
Amazing work! You are getting better & better on this... Halleluiah... ^__^
finally...
edit: sorry for spamming ithought im on Discussion thread.. mod will you please delete this , i can't the delete
Can u people stop spamming thank you's in DEV thread. Thanks.
Although I just bought my gs4 a few days ago, this is great news. Maybe it can increase the resale value of the 2x. Or I can even use it as a backup phone. Good job to all the devs responsible for this. I'll give this a flash as soon as I can.
Sent from my SGH-I337M using xda app-developers app
Youngbloodx said:
Although I just bought my gs4 a few days ago, this is great news. Maybe it can increase the resale value of the 2x.
Sent from my SGH-I337M using xda app-developers app
Click to expand...
Click to collapse
I don't think that is true. But if it is, that extra money should go to tonyp!
Enviado de meu LG-P990 usando Tapatalk 4
Okay, the new build is up
Changelog:
Code:
cm-10.2-20130820-UNOFFICIAL-p990.zip
- Camera fixed \o/
- hardware OMX fix (mp4 videos in the stock player etc.)
- added my memory management option from CM10.1 (more aggressive task killing)
- long press the clear recents button to clear cache
- enabled development settings for the device owner by default
- enabled camera shutter muting (follows device sound settings)
- re-added Focal
- Google TTS fix
- included mini gapps package updated
- merged upstream
It looks like GPS is broken.
Would be great if some of you guys could test it and try out different GPS fixes out there at xda, maybe one or the other will work...
lucfig said:
I don't think that is true. But if it is, that extra money should go to tonyp!
Click to expand...
Click to collapse
Oh I like that :good:
You all know where my donation links are - I'm putting lots of effort into the 2x and appreciate each and every incoming beer.
Imagine the amount of money I'd have made when each (happy) user would have donated just 5€ ...
chp2 said:
Tony, you're fantastic.
Click to expand...
Click to collapse
:highfive:
chp2 said:
And any news about Github?
Click to expand...
Click to collapse
I am almost done:
https://github.com/p990-dev/android_device_lge_p990
It should be complete but is untested, will do my next build from the sources, then I can give the green light.
Ryukenden said:
Can u people stop spamming thank you's in DEV thread. Thanks.
Click to expand...
Click to collapse
Actually: I don't really care that much.
If I would have wanted to keep the thread entirely clean I could have left it in the dev discussion section in the first place.
Almost on my birthday :laugh: Thanks man! Gonna test it's battery life, because on my Nexus 7 it's much better than on android 4.2.
Yay, camera fixed. Concerning GPS there are 2 apps that might help:
1.) FasterFix (might not be needed)
2.) GPS Status - Test & Fix
So I installed FastFix first, selected "Europe" (time server), but still got no GPS signal. I'm not sure if setting the time server is persistent. If it is, this step might be needed. But you can also try to install the 2nd app only: GPS Status - Test & Fix. I started it and suddenly the GPS worked! From then on it also worked in Ingress and Google Maps.
I attached the logcat of both situations: gps_error.txt is before installing any of the apps, gps_fixed.txt is when it works successfully. Both logcats are grepped for "gps_BRCM" and they both start when a GPS signal was not found. Then the screen turns off (GPS also), then screen turns back on (GPS also) and in one case it gets a signal, in the other case it doesn't (although it gets a good number of sattelites in both cases, you see num_svs up to 8).
@tonyp just one question. Is it build with GCC 4.7/4.8?
Asking because for now I am a heavy user of BT headset.
Thanks us advance
Enviado de meu LG-P990 usando Tapatalk 4

[Dev][Krt16m][4.4] unofficial_cyanogenmod-11 [Thread-Closed]

Note : this thread is intended only for dev disscusion , working as i m getting things mixed in my beanstalk thread So, decided to create this thread thanks @DomusX10 and @[NUT] for idea
this is work to make Kitkat working on xperia 2011 devices
Source : github.com/cyanogemod
https://github.com/rebelos/msm7x30-3.4.x-nAa
Test Build 1 link :- http://www.mediafire.com/download/5zkr6d5dxzl7zdr/cm-11-20131110-UNOFFICIAL-anzu.zip
Test Build #2
Link : http://www.mediafire.com/download/ww4p6srrs0d58kd/cm-11-20131118-UNOFFICIAL-anzu.zip
Add this line in build prop before flashing..
Code:
#ADB
ro.debuggable=1
persist.sys.usb.config=adb
thank you!
current status : stuck at bootanim [on build #1] on build #2 needed to be verified
credits : Mikeioannia , legacy xperia , saki3d ,cyanogenmod , fxp ,szezso , munjeni
how to build guide
Code:
[B]How To Make Your Own Cm_11 builds for Anzu , urushi and smultron[/B]
1. mkdir cm
2. repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
3. mkdir -p ~/cm/.repo/local_manifests
4. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/semc.xml > ~/cm/.repo/local_manifests/semc.xml
5. repo sync -j1
6. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/updates.sh > ~/cm/updates.sh
7. chmod a+x updates.sh
8. ./updates.sh
9. cd ~/cm/vendor/cm
10. ./get-prebuilts
11. cd ~/cm
12. . build/envsetup.sh
13. breakfast <device>
14. brunch <device>
guys build it .. try it.. debug it ..
[Dev][Krt16m][4.4] unofficial_cyanogenmod-11
I am running now the 4.4 on my n4 it don't have new kernel but it have some new resources that the devs will take and they optimization the performance.. My n4 flying I hope to see my arc s flying to..
Sent from my Nexus 4 using XDA Premium 4 mobile app
nokiagye said:
I am running now the 4.4 on my n4 it don't have new kernel but it have some new resources that the devs will take and they optimization the performance.. My n4 flying I hope to see my arc s flying to..
Sent from my Nexus 4 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
this evening I read about which sony device reiceve kitkat, and I read that xperia V and T will receive 4.3 officially.
Hope of 4.4 on Arc S never die. Obviously with a cooked ROM from xda...:good:
[Dev][Krt16m][4.4] unofficial_cyanogenmod-11
any experienced user here who knows how to do logcat cause i needed few testers for 4.4
[Dev][Krt16m][4.4] unofficial_cyanogenmod-11
officiallysonyrebel said:
any experienced user here who knows how to do logcat cause i needed few testers for 4.4
Click to expand...
Click to collapse
OK i can test and maybe ask @besttt & @vishal_android freak
which link to download?
cheers
officiallysonyrebel said:
any experienced user here who knows how to do logcat cause i needed few testers for 4.4
Click to expand...
Click to collapse
stuck with me at kernel logo using provided kernel
Cheers
[Dev][Krt16m][4.4] unofficial_cyanogenmod-11
elguneid said:
Me too confused about that ...
Sent from my LT18i using xda app-developers app
Click to expand...
Click to collapse
fixed....
Code:
[B]How To Make Your Own Cm_11 builds for Anzu , urushi and smultron[/B]
1. mkdir cm
2. repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
3. mkdir -p ~/cm/.repo/local_manifests
4. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/semc.xml > ~/cm/.repo/local_manifests/semc.xml
5. repo sync -j1
6. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/updates.sh > ~/cm/updates.sh
7. chmod a+x updates.sh
8. ./updates.sh
9. cd ~/cm/vendor/cm
10. ./get-prebuilts
11. cd ~/cm
12. . build/envsetup.sh
13. breakfast <device>
14. brunch <device>
guys build it .. try it.. debug it ..
[Dev][Krt16m][4.4] unofficial_cyanogenmod-11
officiallysonyrebel said:
fixed....
Code:
[B]How To Make Your Own Cm_11 builds for Anzu , urushi and smultron[/B]
1. mkdir cm
2. repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
3. mkdir -p ~/cm/.repo/local_manifests
4. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/semc.xml > ~/cm/.repo/local_manifests/semc.xml
5. repo sync -j1
6. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/updates.sh > ~/cm/updates.sh
7. chmod a+x updates.sh
8. ./updates.sh
9. cd ~/cm/vendor/cm
10. ./get-prebuilts
11. cd ~/cm
12. . build/envsetup.sh
13. breakfast <device>
14. brunch <device>
guys build it .. try it.. debug it ..
Click to expand...
Click to collapse
I have an ARC, no coding experience though...
Before I try this:
No need to get blobs for 4.4?
officiallysonyrebel said:
i saw u on Z forum u have created XZ dual recovery ...
everything is updated on my github..nothing needed but the problem i m not able to surpass boot screen with no adb shell access according to mikeioanniai busybox is broken ... currently trying to fix up things ... plz if u can try it for fixing these thigns then that will be great
best regards
Officiallysonyrebel
Click to expand...
Click to collapse
XZDualRecovery, yes, that's me
PM me your hangouts email, I'll attempt a build ASAP and we will be able to do some live debugging while you code
officiallysonyrebel said:
fixed....
Code:
[B]How To Make Your Own Cm_11 builds for Anzu , urushi and smultron[/B]
[STRIKE]1. mkdir cm[/STRIKE]
[STRIKE]2. repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0[/STRIKE]
[STRIKE]3. mkdir -p ~/cm/.repo/local_manifests[/STRIKE]
[STRIKE]4. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/semc.xml > ~/cm/.repo/local_manifests/semc.xml[/STRIKE]
[STRIKE]5. repo sync -j1[COLOR="Red"][B]0[/B][/COLOR][/STRIKE]
[STRIKE]6. curl https://raw.github.com/rebelos/local_manifests/cm-11.0/updates.sh > ~/cm/updates.sh[/STRIKE]
[STRIKE]7. chmod a+x updates.sh[/STRIKE]
[STRIKE]12. . build/envsetup.sh[/STRIKE] [COLOR="Green"][B]needed to do here!!![/B][/COLOR]
[STRIKE]8. ./updates.sh[/STRIKE]
[COLOR="Green"][B]Open and comment cherries 53164, 51130, 51224, 52888 and 53495: ALREADY MERGED![/B][/COLOR]
[STRIKE]9. cd ~/cm/vendor/cm[/STRIKE]
[STRIKE]10. ./get-prebuilts[/STRIKE]
[STRIKE]11. cd ~/cm[/STRIKE]
[STRIKE]13. breakfast anzu[/STRIKE]
14. brunch anzu [COLOR="Red"][B]RUNNING[/B][/COLOR]
guys build it .. try it.. debug it ..
Click to expand...
Click to collapse
Doing this now, will strike off everything done sofar to show progress
-- EDIT --
Man, CM is so freaking big, even with my 2 (yes, really) 20Mbit connections it's taking for ever
@officiallysonyrebel
Code:
# breakfast anzu
including vendor/cm/vendorsetup.sh
build/core/product_config.mk:238: *** _nic.PRODUCTS.[[device/semc/anzu/cm.mk]]: "hardware/ti/wlan/mac80211/wl127x-wlan-products.mk" does not exist. Stop.
Device anzu not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_semc_anzu
Default revision: cm-11.0
Checking branch info
Default revision cm-11.0 not found in android_device_semc_anzu. Bailing.
Branches found:
cm-9.0.0
gb-release-7.2
gingerbread
gingerbread-release
ics
ics-release
jellybean
jellybean-stable
cm-7.1.0
Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.
build/core/product_config.mk:238: *** _nic.PRODUCTS.[[device/semc/anzu/cm.mk]]: "hardware/ti/wlan/mac80211/wl127x-wlan-products.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_anzu'
** Do you have the right repo manifest?
Any idea how to get this fixed? For some reason, repo breakfast is not picking up your repository as a valid one... I can't find why
The path device/semc/anzu is there... breakfast somehow thinks it's not
---------- Post added at 01:31 AM ---------- Previous post was at 01:30 AM ----------
arc_n_krizt said:
How big data source for cm???
Sent from my Xperia Arc S using xda app-developers app
Click to expand...
Click to collapse
22Gb sofar... no idea if it will grow even more...
[NUT] said:
@officiallysonyrebel
Code:
# breakfast anzu
including vendor/cm/vendorsetup.sh
build/core/product_config.mk:238: *** _nic.PRODUCTS.[[device/semc/anzu/cm.mk]]: "hardware/ti/wlan/mac80211/wl127x-wlan-products.mk" does not exist. Stop.
Device anzu not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_semc_anzu
Default revision: cm-11.0
Checking branch info
Default revision cm-11.0 not found in android_device_semc_anzu. Bailing.
Branches found:
cm-9.0.0
gb-release-7.2
gingerbread
gingerbread-release
ics
ics-release
jellybean
jellybean-stable
cm-7.1.0
Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.
build/core/product_config.mk:238: *** _nic.PRODUCTS.[[device/semc/anzu/cm.mk]]: "hardware/ti/wlan/mac80211/wl127x-wlan-products.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_anzu'
** Do you have the right repo manifest?
Any idea how to get this fixed? For some reason, repo breakfast is not picking up your repository as a valid one... I can't find why
The path device/semc/anzu is there... breakfast somehow thinks it's not
---------- Post added at 01:31 AM ---------- Previous post was at 01:30 AM ----------
22Gb sofar... no idea if it will grow even more...
Click to expand...
Click to collapse
Hi,
see if these works:
First, check if in cm\device folder there is "semc\anzu\..."
if not, local manifest should be changed
if there is anzu folder in cm\device\ then try one of these:
breakfast cm_anzu
breakfast cm_anzu-eng
or alternatively just type lunch and select anzu from the list
[NUT] said:
@officiallysonyrebel
Code:
# breakfast anzu
including vendor/cm/vendorsetup.sh
build/core/product_config.mk:238: *** _nic.PRODUCTS.[[device/semc/anzu/cm.mk]]: "hardware/ti/wlan/mac80211/wl127x-wlan-products.mk" does not exist. Stop.
Device anzu not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Found repository: android_device_semc_anzu
Default revision: cm-11.0
Checking branch info
Default revision cm-11.0 not found in android_device_semc_anzu. Bailing.
Branches found:
cm-9.0.0
gb-release-7.2
gingerbread
gingerbread-release
ics
ics-release
jellybean
jellybean-stable
cm-7.1.0
Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.
build/core/product_config.mk:238: *** _nic.PRODUCTS.[[device/semc/anzu/cm.mk]]: "hardware/ti/wlan/mac80211/wl127x-wlan-products.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_anzu'
** Do you have the right repo manifest?
Any idea how to get this fixed? For some reason, repo breakfast is not picking up your repository as a valid one... I can't find why
The path device/semc/anzu is there... breakfast somehow thinks it's not
---------- Post added at 01:31 AM ---------- Previous post was at 01:30 AM ----------
22Gb sofar... no idea if it will grow even more...
Click to expand...
Click to collapse
its easy ..
cd ~/cm/hardware/ti/wlan
git fetch http://review.cyanogenmod.org/CyanogenMod/android_hardware_ti_wlan refs/changes/24/51224/7 && git cherry-pick FETCH_HEAD
only if it show some wired thing then
git commit --allow-empty
source is aroung 30 gb's
yup we can use hangouts [email protected] -- if anybody has problem regarding kk then can contact me at hangouts .. thnx
after it u might get librpc error [maybe] the n go in hardware / gps / delete lib rpc .. i m updating sources to upstream changes..
best regards
officiallysonyrebel
officiallysonyrebel said:
its easy ..
cd ~/cm/hardware/ti/wlan
git fetch http://review.cyanogenmod.org/CyanogenMod/android_hardware_ti_wlan refs/changes/24/51224/7 && git cherry-pick FETCH_HEAD
only if it show some wired thing then
git commit --allow-empty
source is aroung 30 gb's
yup we can use hangouts [email protected] -- if anybody has problem regarding kk then can contact me at hangouts .. thnx
after it u might get librpc error [maybe] the n go in hardware / gps / delete lib rpc .. i m updating sources to upstream changes..
best regards
officiallysonyrebel
Click to expand...
Click to collapse
gosssss.... it more 5 days to finish in my country!!! does anyone have the cd form .... it's like a repository in linux right??
arc_n_krizt said:
gosssss.... it more 5 days to finish in my country!!! does anyone have the cd form .... it's like a repository in linux right??
Click to expand...
Click to collapse
whats u r bandwidth..?
officiallysonyrebel said:
its easy ..
cd ~/cm/hardware/ti/wlan
git fetch http://review.cyanogenmod.org/CyanogenMod/android_hardware_ti_wlan refs/changes/24/51224/7 && git cherry-pick FETCH_HEAD
only if it show some wired thing then
git commit --allow-empty
source is aroung 30 gb's
yup we can use hangouts [email protected] -- if anybody has problem regarding kk then can contact me at hangouts .. thnx
after it u might get librpc error [maybe] the n go in hardware / gps / delete lib rpc .. i m updating sources to upstream changes..
best regards
officiallysonyrebel
Click to expand...
Click to collapse
The git fetch line fixed it indeed :good: I did need to remove the hardware/qcom/gps/librpc folder though, so that was a smart move
officiallysonyrebel said:
whats u r bandwidth..?
Click to expand...
Click to collapse
i cant share in this forum... whether there is a link than github??
Great!
Now it is much easier to discuss progress with kit kat on xperia 2011 lines! :good::good:
Boy, that split was a hassle
Anyway... ROM compile still running... I'm afraid to stop it, but I forgot to add export USE_CCACHE=1 and to have brunch run with a -j3 switch (which will enable it to use multicore systems)...
It's been running since 7:30 AM (GMT+1) ...
-- EDIT --
If you use the -j switch, take the amount of cores and add 1 to determine the number of threads it can handle. For every 4 cores you can add 1 extra thread. So a dual-core CPU can handle 3, a quad-core can handle 5 but an octo-core can handle 10.
Don't mix up HYPERTHREADING (HT) with actual number of cores, if you have a Pentium series CPU with HT, half the number of cores you might see in your /proc/cpuinfo, HT is doubling your core count but while compiling, it will hinder the processing power of your CPU more then it helps
That clearly does not work on lunch,brunch and breakfast ... too bad!
:victory: FINALY it was done ... or so I thought...
Code:
In file included from external/chromium_org/content/common/android/hash_set.cc:5:0:
/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:10:26: error: extra tokens at end of #ifndef directive [-Werror]
/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:11:26: error: missing whitespace after the macro name [-Werror]
target thumb C++: content_content_common_gyp <= external/chromium_org/content/common/android/surface_texture_peer.cc
In file included from external/chromium_org/content/common/android/hash_set.cc:5:0:
/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:24:20: error: expected initializer before '<' token
/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:26:17: error: expected initializer before '<' token
/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected '{' before '<' token
/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected unqualified-id before '<' token
external/chromium_org/content/common/android/hash_set.cc:30:1: error: expected '}' at end of input
cc1plus: all warnings being treated as errors
make: *** [/storage/home/nut/development/xperia/cyanogen/beanstalk/out/target/product/anzu/obj/STATIC_LIBRARIES/content_content_common_gyp_intermediates/content/common/android/hash_set.o] Error 1
make: *** Waiting for unfinished jobs....
Lets see if I can fix that...
-- EDIT --
I thought it might have been a typo somewhere ... but I'm lost already
Need help

Categories

Resources