[Kernel Base][3.4.55][Dev]Bare Repositories of TW/AOSP Kernel (4.3 Sammy Sources!) - Galaxy S 4 i9505 Android Development

Up-to-Date Bare Repositories for TW/AOSP 4.2.2 Kernel​samsung-kernel-jfltexx​
Short Info:
I've made this repository to have a central place for everyone to fork their kernel base from. The advantage of this repo is that it is always up-to-date (as in the latest linux kernel version). Imagine the difference from starting at a 3.4.0 kernel base and 3.4.52 kernel base, there are thousands of new patches in that patch range. :good:
Repository Url:
Code:
https://github.com/broodplank/samsung-kernel-jfltexx
Repository Info:
Name: samsung-kernel-jfltexx
Description: Bare repositories for jfltexx (i9505)
Branches: tw-4.2.2 and aosp-4.2.2 (aosp 4.3 coming when 4.3 kernel sources are released)
tw-4.2.2 = Stock i9505 TouchWiz Kernel from Samsung sources patched until latest linux kernel version
aosp-4.2.2 = i9505g Google Edition Kernel (for AOSP 4.2.2 Google Edition and TouchWiz 4.2.2) (for i9505)
Getting the sources:
If you want to compile the kernel directly without much changes it's advised to clone it:
Code:
git clone [url]https://github.com/broodplank/samsung-kernel-jfltexx[/url] -b branchname
If you want to make your own kernel it's advised to fork the kernel:
- Login at github
- Go to https://github.com/broodplank/samsung-kernel-jfltexx
- Click Fork at the right top of the page
Click to expand...
Click to collapse
Usage Info:
Initializing first config:
Code:
make VARIANT_DEFCONFIG=jf_eur_defconfig jf_defconfig
Configuration:
Easiest variant (QT based GUI, needs libqt4-dev libqt4-core and libqt4-gui)
Code:
make xconfig
Default variant:
Code:
make menuconfig
Other less popular variants:
(GTK based, doesn't need any special packages)
Code:
make gconfig
(Ncurses based, needs libncurses5, libncurses5-dev and libncursesw5)\
Code:
make nconfig
Building Kernel:
Code:
export ARCH=arm
export CROSS_COMPILE=/path/to/toolchain/bin/arm-eabi-
make -jx (where x is the amount of cpu cores + 1)
Toolchains:
Toolchains that are suited for building the sources are:
arm-eabi-4.6
Click to expand...
Click to collapse
Building boot.img:
Code:
./build_bootimg
(Choose the rom type you will be using and it will be created in build/output)
Flashing boot.img and modules:
Code:
./flash_bootimg
(This is a process that pushes boot.img to your phone and then to the kernel partition, after that you can choose whether to push modules or not, and finally you can choose to wipe dalvik-cache or not and it will reboot.
Updating Info:
If you have forked the repository do this to fetch the updates from this repository:
First add it to the remote:
Code:
git remote add bare [url]https://github.com/broodplank/samsung-kernel-jfltexx[/url]
git fetch bare
Then search for the commit(s) that you want to merge
For 1 commit:
Code:
git cherry-pick [commit hash here, this is the last part of a commits url]
(for example: https://github.com/broodplank/samsung-kernel-jfltexx/commit/612bbea08b67f16dd5628cb8cd8406973f8fe821 would be: 612bbea08b67f16dd5628cb8cd8406973f8fe821)
For a range of commits:
Code:
git cherry-pick [commit a hash]^..[commit b hash]
Where commit a is the oldest commit and commit b the newest.
for example:
Code:
git cherry-pick 0bff3bdba64c58ea6100d72763f2be3acc9659db^..612bbea08b67f16dd5628cb8cd8406973f8fe821
This would patch the sources from 3.4.40 to 3.4.52

Latest Repository Changes:
3-08-2013
- Switched to real samsung 4.3 sources
29-07-2013
- Updated aosp-4.2.2 and tw-4.2.2 to 3.4.55
25-07-2013
- NEW BRANCH: AOSP-4.3
- NEW BRANCH: TW-4.3
- Added MSM8960 Headers from Google!
23-07-2013
- Update to 3.4.54
14-07-2013
- Update to 3.4.53
- Merge sensor fix from faux123
13-07-2013
- Updated defconfigs for proper building
09-07-2013
- Update to 3.4.52
- Sensor fix by ausdim
- Large update to readme
06-07-2013
- Add samsung sources
- Patch to latest version 3.4.51
- add boot.img creator
05-07-2013
- Initial commit, make repository

Thanks, I just forked it.
I'm a noob at this but am learning fast. I've modified and compiled the 3.0.31 kernel for the 9210T but I'd like to now try 3.4. Appears none of the celox changes for board_msm8x60.c source came across from 3.0 to 3.4 so I think I've got my work cut out for me.
m0tter

This guide is not working for me.
If I follow your guide the resulting kernel boots, but I have no sound and no 3G (PIN pad doesn't show up).
I'm on MF8 stock ROM. Yours, Ausdims or my own (based on Samsung Update 2 sources) work fine.
This is what I did:
$ git clone https://github.com/broodplank/samsung-kernel-jfltexx -b tw-4.2.2
$ make VARIANT_DEFCONFIG=jf_eur_defconfig jf_defconfig
$ export ARCH=arm
$ export CROSS_COMPILE=/path/to/toolchain/bin/arm-eabi-
$ make xconfig (no changes!)
$ make -j3
$ ./build_bootimg && ./flash_bootimg (selected 1 for TW)
What am I doing wrong?

harise100 said:
This guide is not working for me.
If I follow your guide the resulting kernel boots, but I have no sound and no 3G (PIN pad doesn't show up).
I'm on MF8 stock ROM. Yours, Ausdims or my own (based on Samsung Update 2 sources) work fine.
This is what I did:
$ git clone https://github.com/broodplank/samsung-kernel-jfltexx -b tw-4.2.2
$ make VARIANT_DEFCONFIG=jf_eur_defconfig jf_defconfig
$ export ARCH=arm
$ export CROSS_COMPILE=/path/to/toolchain/bin/arm-eabi-
$ make xconfig (no changes!)
$ make -j3
$ ./build_bootimg && ./flash_bootimg (selected 1 for TW)
What am I doing wrong?
Click to expand...
Click to collapse
InitRamfs??
Permisions of initramfs?

ausdim said:
InitRamfs??
Permisions of initramfs?
Click to expand...
Click to collapse
Don't know.
I used the script to build the boot.img. If I do the same with my sources, it works.
In both cases, I haven't touched those files.
Sent from my GT-I9505 using xda app-developers app

harise100 said:
Don't know.
I used the script to build the boot.img. If I do the same with my sources, it works.
In both cases, I haven't touched those files.
Sent from my GT-I9505 using xda app-developers app
Click to expand...
Click to collapse
Im not on pc to check that and help you but your problem about radio (pin) sounds initramfs problem.
Unpack an stock boot.img and use that ramfs.
Thanks

ausdim said:
Im not on pc to check that and help you but your problem about radio (pin) sounds initramfs problem.
Unpack an stock boot.img and use that ramfs.
Thanks
Click to expand...
Click to collapse
Thank you for trying to help me... but it still doesn't work. Same result.

harise100 said:
Thank you for trying to help me... but it still doesn't work. Same result.
Click to expand...
Click to collapse
Tonight Ill do a little research on this and tell you the solution.

I remember when I started to make my first kernel, I had similar problems with the Samsung sources.
Wanam gave me his jf_defconfig file and it worked. He said that the config file by Samsung is crap. But I forgot to ask for details.
If I use my config file on your sources, it results in a bootloop, whereas they work fine with Samsung update 2 sources.
Does that make sense?
Sent from my GT-I9505 using xda app-developers app

Still figuring out, why i cant even successfully compile the sources. With ktoonse sources it works.
But i'm still a beginner. Will see about that xP
Gesendet von meinem GT-I9505 mit Tapatalk 2

.c0dy said:
Still figuring out, why i cant even successfully compile the sources. With ktoonse sources it works.
But i'm still a beginner. Will see about that xP
Gesendet von meinem GT-I9505 mit Tapatalk 2
Click to expand...
Click to collapse
What is your problem?
Sent from my GT-I9505 using xda app-developers app

harise100 said:
What is your problem?
Sent from my GT-I9505 using xda app-developers app
Click to expand...
Click to collapse
I hate it -.- xD
Now it worked. And I do not know why... As I am pretty new to this, as already said, - could this be the problem? :
I think I made this:
$ make VARIANT_DEFCONFIG=jf_eur_defconfig jf_defconfig
$ make xconfig
$ export ARCH=arm
$ export CROSS_COMPILE=/path/to/toolchain/bin/arm-eabi-
Click to expand...
Click to collapse
instead of:
$ make VARIANT_DEFCONFIG=jf_eur_defconfig jf_defconfig
$ export ARCH=arm
$ export CROSS_COMPILE=/path/to/toolchain/bin/arm-eabi-
$ make xconfig
Click to expand...
Click to collapse
So I used xconfig before setting ARCH and CROSS_COMPILE.
Could that be the problem?
Atm i can not paste the error. The first one had something to do with a buffersize. Could "fix" that by setting "CONFIG_FRAME_WARN=1024" higher. Because it said it was 1032.
Second error was something like "‘ret’ may be used uninitialized in this function [-Wuninitialized]".
---------- Post added at 08:08 PM ---------- Previous post was at 07:32 PM ----------
Will add a new post for this, if it's okay.
And i hope it's okay to ask in here
So, first, as wrote in my previous post the compiling worked.
Now, i did the following:
1. Changed in the config: "kernel compression mode -> LZO
2. Removed "Optimize for size"
3. And changed the flag in the makefile to O3.
kernel/workqueue.c: In function 'freeze_workqueues_begin':
kernel/workqueue.c:483:11: warning: array subscript is above array bounds [-Warray-bounds]
error, forbidden warning: workqueue.c:483
make[1]: *** [kernel/workqueue.o] Error 1
make[1]: *** Waiting for unfinished jobs....
While writing this I reset "Optimize for size" and restart compiling. Now it does seem to work.
So i guess there is a problem with the flag. Where is the right place of the flag?

If you want to use O2 or O3, it requires some modification of config and make files.
The build boot.img script worked for me right away.
Sent from my GT-I9505 using xda app-developers app

harise100 said:
If you want to use O2 or O3, it requires some modification of config and make files.
The build boot.img script worked for me right away.
Sent from my GT-I9505 using xda app-developers app
Click to expand...
Click to collapse
Ah okay, thanks. Will see if I can find a few more infos about that

broodplank1337 said:
Tonight Ill do a little research on this and tell you the solution.
Click to expand...
Click to collapse
Did you find anything?
I do have a working build environment and I can compile and install a kernel that is better than stock kernel.
Only these sources don't work. How is that possible?
Sent from my GT-I9505 using xda app-developers app

.c0dy said:
Ah okay, thanks. Will see if I can find a few more infos about that
Click to expand...
Click to collapse
check out this commit: https://github.com/broodplank/andro...mmit/69b6e56fb4151f547368fc77d5ad682fbf99ea7b

broodplank1337 said:
check out this commit: https://github.com/broodplank/andro...mmit/69b6e56fb4151f547368fc77d5ad682fbf99ea7b
Click to expand...
Click to collapse
I'll give it a try when I get home.
Sent from my GT-I9505 using xda app-developers app

harise100 said:
I'll give it a try when I get home.
Sent from my GT-I9505 using xda app-developers app
Click to expand...
Click to collapse
It will work if you have the right toolchain, I use this one:
http://www.mediafire.com/download/i...linaro_4.7.4-2013.07-build_2013_07_12.tar.bz2
It's an optimized Linaro toolchain (http://forum.xda-developers.com/showthread.php?t=2098133)

broodplank1337 said:
check out this commit: https://github.com/broodplank/andro...mmit/69b6e56fb4151f547368fc77d5ad682fbf99ea7b
Click to expand...
Click to collapse
Thanks Will try that.
I already compiled a kernel, but it just booted until the samsung logo.. after that instant reboot... :/

Related

[GUIDE] Howto compile your own Pershoot kernel for CM7 Final for Vision

Compiling Pershoot's Vision Kernel for CyanogenMod 7
Why would I do this?
1. You must enjoy punishment
2. You want to know how a kernel gets compiled for Android.
3. You want to modify your kernel somehow, such as adding the Interactive Scheduler to the default Pershoot config or switching between CFS and BFS.
4. You want to modify the overclocking frequencies or voltages.
I don't teach how to do anything but #1 and 2, the rest I might get into later, but this guide is the gateway to all that.
You will need a working Ubuntu system. 10.04, 10.10, or 11.04 should all be fine. I did it with 11.04, so bleeding edge is working 100%.
On Ubuntu 10.04 and 10.10, get the following packages:
Code:
sudo apt-get install git-core gnupg sun-java6-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
On Ubuntu 11.04 get:
Code:
sudo apt-get install git-core gnupg openjdk-6-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
Let's create our compilation area:
Code:
cd ~
mkdir kernel-compilation
mkdir kernel-compilation/toolchain
mkdir kernel-compilation/finals
mkdir kernel-compilation/staging
Download the following files:
http://www.mediafire.com/file/5aqhkl69fq75253/arm-eabi-4.3.1.zip - Unzip to ~/kernel-compilation/toolchain
http://www.mediafire.com/file/7lo2ctg7r56urky/staging.zip - Unzip to ~/kernel-compilation/staging
And lastly, grab the source from Pershoot's GIT, which will end up in kernel-compilation/vision-2632:
Code:
cd ~/kernel-compilation/
git clone https://github.com/pershoot/vision-2632.git -b gingerbread
Next we'll set up the compiler to use the ARM toolchain through an environment variable to make it easier later:
Code:
export CCOMPILER=~/kernel-compilation/toolchain/arm-eabi-4.3.1/bin/arm-eabi-
Next we'll use Pershoot's default configuration file as a starting point:
Code:
cd ~/kernel-compilation/vision-2632
cp arch/arm/configs/pershoot_vision_defconfig .config
If you wish to modify his configuration:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER menuconfig
Next we'll compile the newly configured kernel:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j4 (replace 4 with the number of physical processor cores on your system, or leave the -j option off altogether if you don't know)
And the modules:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER modules
Now we'll start installing the kernel into our staging area.
Copy the kernel image from the source area into staging:
Code:
cp arch/arm/boot/zImage ~/kernel-compilation/staging/kernel/zImage
and install the modules (and fix where it puts them):
Code:
make ARCH=arm INSTALL_MOD_PATH=~/kernel-compilation/staging/system modules_install
cp ~/kernel-compilation/staging/system/lib/modules/2.6.32.38-cyanogenmod/kernel/drivers/net/wireless/bcm4329/bcm4329.ko ~/kernel-compilation/staging/system/lib/modules/bcm4329.ko
rm -rf ~/kernel-compilation/staging/system/lib/modules/2.6.32.38-cyanogenmod
Now let's finish up by zipping it all into the finals area:
Code:
cd ~/kernel-compilation/staging
zip -r ~/kernel-compilation/finals/mykernel.zip *
Now go to your finals directory and get to flashing!
References:
http://wiki.cyanogenmod.com/index.php?title=Building_Kernel_from_source
http://forum.xda-developers.com/showthread.php?t=916198#
Thanks to Pershoot, CyanogenMod Team, and everybody on #cyanogenmod on Freenode IRC.
you da man.
jbdubbs said:
Compiling Pershoot's Vision Kernel for CyanogenMod 7
Thanks to Pershoot, CyanogenMod Team, and everybody on #cyanogenmod on Freenode IRC.
Click to expand...
Click to collapse
dude, this is one amazingly simple tutorial I have almost zero ubuntu experience, and i have literally NEVER created my own anything for my phone, much less something as seemingly complex as the base kernel, but your easy walkthrough made it one of the easiest things Ive ever done, and now I have a working kernel with all the features i was looking for but never knew how to make myself
EDIT: may have spoken too soon. The kernel compiled fine and booted fine, but when i look for my added governors (interactive and conservative) in the listings, they dont appear there. any thoughts on what I need to do?
Am I right in assuming that the CPU frequencies/voltages are in /arch/arm/mach-msm/acpuclock-7x30.c , and that modifying those values in gedit (default program that opened when I doubleclicked it) would stick once I compile the kernel?
jmwils3 said:
dude, this is one amazingly simple tutorial I have almost zero ubuntu experience, and i have literally NEVER created my own anything for my phone, much less something as seemingly complex as the base kernel, but your easy walkthrough made it one of the easiest things Ive ever done, and now I have a working kernel with all the features i was looking for but never knew how to make myself
EDIT: may have spoken too soon. The kernel compiled fine and booted fine, but when i look for my added governors (interactive and conservative) in the listings, they dont appear there. any thoughts on what I need to do?
Click to expand...
Click to collapse
I'm assuming that you did the 'make ARCH=arm menuconfig' step and didn't properly save your changes. When you exit the menu it'll ask if you'd like to save, obviously select 'yes'. Don't choose the option to save an alternate config at the bottom of the main menu, just keep hitting exit until it asks to explicitly.
Sent from my HTC Vision using XDA App
qzfive said:
Am I right in assuming that the CPU frequencies/voltages are in /arch/arm/mach-msm/acpuclock-7x30.c , and that modifying those values in gedit (default program that opened when I doubleclicked it) would stick once I compile the kernel?
Click to expand...
Click to collapse
The short answer is yes, the long answer is that while that is indeed where the frequencies and voltages are stored, its pretty greek to me. I attempted to copy the 1.9 ghz acpuclock-7x30.c from another post on this forum and it doesn't seem like it compiled it, I still only made it to 1.5.
I'm going to investigate both this and where exactly the smartass governor source is and update this guide later.
Sent from my HTC Vision using XDA App
jbdubbs said:
I'm assuming that you did the 'make ARCH=arm menuconfig' step and didn't properly save your changes. When you exit the menu it'll ask if you'd like to save, obviously select 'yes'. Don't choose the option to save an alternate config at the bottom of the main menu, just keep hitting exit until it asks to explicitly.
Sent from my HTC Vision using XDA App
Click to expand...
Click to collapse
-facepalms- duh, that would make sense. So is there any way to undo the mistake, or would i need to start from scratch? not that bad either way, just wondered
jmwils3 said:
-facepalms- duh, that would make sense. So is there any way to undo the mistake, or would i need to start from scratch? not that bad either way, just wondered
Click to expand...
Click to collapse
You can run 'make clean' then continue from the menuconfig step.
Sent from my HTC Vision using XDA App
jbdubbs said:
You can run 'make clean' then continue from the menuconfig step.
Sent from my HTC Vision using XDA App
Click to expand...
Click to collapse
Im sorry for the extremely noob-ish questions (havent felt this noob-ish since my pre-root days on my FIRST G2), but do you mean to run that command on the created zip file, or elsewhere?
jmwils3 said:
Im sorry for the extremely noob-ish questions (havent felt this noob-ish since my pre-root days on my FIRST G2), but do you mean to run that command on the created zip file, or elsewhere?
Click to expand...
Click to collapse
Run that command from ~/kernel-compilation/vision-2632
Sent from my HTC Vision using XDA App
jbdubbs said:
Run that command from ~/kernel-compilation/vision-2632
Sent from my HTC Vision using XDA App
Click to expand...
Click to collapse
it keeps giving me an error that the selected location is a directory.
jmwils3 said:
it keeps giving me an error that the selected location is a directory.
Click to expand...
Click to collapse
cd ~/kernel-compilation/vision-2632
make clean
make ARCH=arm CROSS_COMPILE=$CCOMPILER menuconfig
Sent from my HTC Vision using XDA App
lol, thanks i had found my mistake, and i just started it from after where it had me retrieve the files (which of course, i already had from before) and it got me to the right place to run the command. everything seems to have worked, but ill see once my phone boots.
EDIT: that did it! thanks again, bro
Instead of:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j4 (replace 4 with the number of physical processor cores on your system, or leave the -j option off altogether if you don't know)
You can use this:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j`grep 'processor' /proc/cpuinfo | wc -l`
that will put the right value based on your processor.
Out of curiosity, why is the interactive governor & others left out of pershoot's kernel in the first place?
I'm wondering if there are compatibility issues or other optimisations with undervolting etc and you may be running the risk of causing problems/damage to your hardware.
Droid Basement said:
Note:
If you use SetCPU, please do not set any Advanced settings, and you should use the ondemand CPU governor.
Click to expand...
Click to collapse
I only ask as, in pershoot's kernel the sysfs cpufreq directory differs from what seems the norm (from what I've seen); There are two cpufreq directories in (cpu & cpu0), but we only have one processor?
Dunno, maybe I'm just being paranoid and need to download the source and investigate...
waydownsouth said:
Instead of:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j4 (replace 4 with the number of physical processor cores on your system, or leave the -j option off altogether if you don't know)
You can use this:
Code:
make ARCH=arm CROSS_COMPILE=$CCOMPILER -j`grep 'processor' /proc/cpuinfo | wc -l`
Click to expand...
Click to collapse
Yeah I left that out for simplicity of the guide. Most people should know how many cores they have.
Out of curiosity, why is the interactive governor & others left out of pershoot's kernel in the first place?
I'm wondering if there are compatibility issues or other optimisations with undervolting etc and you may be running the risk of causing problems/damage to your hardware.
I only ask as, in pershoot's kernel the sysfs cpufreq directory differs from what seems the norm (from what I've seen); There are two cpufreq directories in (cpu & cpu0), but we only have one processor?
Dunno, maybe I'm just being paranoid and need to download the source and investigate...
Click to expand...
Click to collapse
I actually have some issues using BFS (his default scheduler) with the interactive governor regarding stability. I'm assuming that BFS is the culprit for leaving it out.
Sent from my HTC Vision using XDA App
jbdubbs said:
The short answer is yes, the long answer is that while that is indeed where the frequencies and voltages are stored, its pretty greek to me. I attempted to copy the 1.9 ghz acpuclock-7x30.c from another post on this forum and it doesn't seem like it compiled it, I still only made it to 1.5.
I'm going to investigate both this and where exactly the smartass governor source is and update this guide later.
Sent from my HTC Vision using XDA App
Click to expand...
Click to collapse
Seems I was right about the CPU frequencies/voltages being there - I finally compiled a kernel that booted - I added a frequency value of 184Mhz, and SetCPU reflects this.
Thank you so much for this guide - I'm so chuffed with myself compiling a working kernel

How to compile the GS3 kernel from source

Prerequisites:
A (preferably 64 bit) BSD/Linux distro, I use LMDE but most prefer Ubuntu
The setup (only have to do once)
1. Install some binaries for compiling android. Not all of these are needed but get them all to be safe...
"sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3 multilib"
2. Clone the prebuilt toolchains
"git clone git://github.com/cyanogenmod/android_prebuilt.git ~/prebuilt/"
3. Clone the GS3 kernel source
"git clone git://github.com/EpicCM/SPH-L710_NA_Kernel.git ~/GS3Kernel"
Compiling
1. Enter your kernel directory
"cd ~/GS3Kernel"
2. Add the toolchain to path
"export PATH=$PATH:/home/{your username}/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/"
3. Clean the kernel source
"make ARCH=arm clean"
4. Set the config for the Sprint GS3
"make ARCH=arm m2_spr_defconfig"
5. Compile the kernel
"make -j4 ARCH=arm CROSS_COMPILE=arm-eabi-"
Would you know a working method to modify the kernel? Say to add init.d, boot animation and root? I found a guide on here from another section. It appeared to have worked just fine, but when someone flashed one of their own from the guide it bricked their device :s
Tsudeily said:
Would you know a working method to modify the kernel? Say to add init.d, boot animation and root? I found a guide on here from another section. It appeared to have worked just fine, but when someone flashed one of their own from the guide it bricked their device :s
Click to expand...
Click to collapse
Dude I don't think its possible to make a kernel yet since the device source is incomplete and the kernel source won't give you a complete boot image. Maybe I am wrong though, what device source did you use? And did it compile as a zimage? I'm pretty sure you would either need a pre existing boot.img or to build with the device source as well, but that doesn't have the right files yet.
Sent from my GT-P7510 using Tapatalk 2
Sprint GS3 source code is up
Sent from my SPH-D700 using XDA Premium App
I will try this with my T-Mo version when I get home. With the tmo kernel of course
while this is a decent guide to get you up and running, its not all that is needed to make a hopefully booting kernel.
1) https://github.com/Shabbypenguin/SPH-L710_Ramdisk enjoy
2) mkbootimg --cmdline "console=null androidboot.hardware=qcom user_debug=31" --kernel /zImage --ramdisk /ramdisk.gz --base 0x80200000 --ramdiskaddr 0x81500000 -o /Boot.img
that should be the command to pack the zimage with the ramdisk.gz and end up with a boot.img format. i know a lot of the samsung devs are prolly more used to the traditional kernel setup. that command line and base address i have yet to test, but if i find out its wrong ill come back and edit it for the purposes of knowledge
edit: also here is a fancy little kernel script i used, edit the spots you need to to make it work etc. youll notice CROSS_COMPILE isnt there, its because i edited the makefile to reflect my toolchain
http://pastebin.com/hkZ0aetR
shabbypenguin said:
while this is a decent guide to get you up and running, its not all that is needed to make a hopefully booting kernel.
1) https://github.com/Shabbypenguin/SPH-L710_Ramdisk enjoy
2) mkbootimg --kernel zImage --ramdisk ramdisk.gz --cmdline "console=null androidboot.hardware=qcom user_debug=31" -o Boot.img --base 0x80200000
that should be the command to pack the zimage with the ramdisk.gz and end up with a boot.img format. i know a lot of the samsung devs are prolly more used to the traditional kernel setup. that command line and base address i have yet to test, but if i find out its wrong ill come back and edit it for the purposes of knowledge
edit: also here is a fancy little kernel script i used, edit the spots you need to to make it work etc. youll notice CROSS_COMPILE isnt there, its because i edited the makefile to reflect my toolchain
http://pastebin.com/hkZ0aetR
Click to expand...
Click to collapse
Or you could make the zimage then use anykernel updater
Sent from my SPH-L710 using xda app-developers app
jamcar said:
Or you could make the zimage then use anykernel updater
Sent from my SPH-L710 using xda app-developers app
Click to expand...
Click to collapse
the anykernel updater is fine, however it unpacks someones current kernel takes their ramdisk and puts it in yours, ergo if you enable bootanimations and init.d by using that on a stock user you will lose all that.
edit: i need to upload my newest kernel script for everyone but working towards OC/UV right now
shabbypenguin said:
the anykernel updater is fine, however it unpacks someones current kernel takes their ramdisk and puts it in yours, ergo if you enable bootanimations and init.d by using that on a stock user you will lose all that.
edit: i need to upload my newest kernel script for everyone but working towards OC/UV right now
Click to expand...
Click to collapse
Talk to the dev (Romanbb) over in T-Mobile development, they have an OC kernel up and running - http://forum.xda-developers.com/showthread.php?t=1741684
EDIT: Even more relevant, his github: https://github.com/romanbb/kernel_sgh-t999
good to see the epic community in these parts great job merchant... hoping for aosp soon and let the ports begin..
Bfitz26 said:
good to see the epic community in these parts great job merchant... hoping for aosp soon and let the ports begin..
Click to expand...
Click to collapse
Well will that be you?
You know there are CM9 nightlies available for sprint's gs3 and others
Sent from my SPH-D700 using XDA Premium App
yes i just got mine and i did see nightlies maybe i could start working on somethings but i was hoping for a official cm9 before jumping on board
Any chance of a marcusant ROM
Sent from my SPH-D710 using XDA
RaydenEris said:
Any chance of a marcusant ROM a fan of the og epic work you put in
Sent from my SPH-D710 using XDA
Click to expand...
Click to collapse
Sent from my Nexus 7 using xda premium
Where do you place the modules with this process? I dont see them listed anywhere in the ramdisk? Also if you decompile a stock kernel the modules dont show up anywhere in the ramdisk? Im used to the old samsung way zImage style with initramfs.... Im confused can someone unconfuse me?
Any post from marcusant in my new phone's dev section gets a thanks from me
Sent from my SPH-L710 using xda app-developers app
...
DrKaotica said:
Any post from marcusant in my new phone's dev section gets a thanks from me
Sent from my SPH-L710 using xda app-developers app
Click to expand...
Click to collapse
Bet he's got a girlfriend now.
Sent from my SPH-L710 using xda app-developers app
Compiling is a pan in the arose
Sent from my SPH-L710 using xda app-developers app
Marcusant whats up bud! Any chance on getting some marcusant rom love?
Sent from my SPH-L710 using Tapatalk 2

Building CM 10 using the Linaro tool chain

Hi, I've set up a Linux box at home and set up a build system on it. It's working great so far. I just saw in the CM nightly thread that GCC 4.7 and Linaro should now be supported with some recent nice commits. Could somebody please point me in the right direction on how to build CM 10 using that compiler/tool chain instead of the default one?
Big thanks!
Sent from my HTC One X using xda app-developers app
ViperFred said:
Hi, I've set up a Linux box at home and set up a build system on it. It's working great so far. I just saw in the CM nightly thread that GCC 4.7 and Linaro should now be supported with some recent nice commits. Could somebody please point me in the right direction on how to build CM 10 using that compiler/tool chain instead of the default one?
Big thanks!
Sent from my HTC One X using xda app-developers app
Click to expand...
Click to collapse
dont know if this helps mate but here are a few links...apologies if they are not the ones you are looking for
http://forum.xda-developers.com/showthread.php?t=1846651
http://www.kernel-xp.net/index.php/en/guide/25-android/32-build-cm10
Goku80 said:
dont know if this helps mate but here are a few links...apologies if they are not the ones you are looking for
http://forum.xda-developers.com/showthread.php?t=1846651
http://www.kernel-xp.net/index.php/en/guide/25-android/32-build-cm10
Click to expand...
Click to collapse
Hi,
thanks, but those guides seems to be regarding setting the build system up (which I allready got working).
I'm wondering about how to use the GCC 4.7 compiler instead of the default one.
Thanks anyways!
No one else with some ideas? Was planning on building my own Linaro 9.12 builds and sharing them, but I'm to much of a noob when it comes to building CM...
ViperFred said:
Hi,
thanks, but those guides seems to be regarding setting the build system up (which I allready got working).
I'm wondering about how to use the GCC 4.7 compiler instead of the default one.
Thanks anyways!
Click to expand...
Click to collapse
If you're using ubuntu and its variants, you can try the following(should work for any debian based ones)
Code:
rm /usr/bin/gcc
rm /usr/bin/g++
ln -s /usr/bin/gcc-4.7 /usr/bin/gcc
ln -s /usr/bin/g++-4.7 /usr/bin/g++
To change back to your original compiler, you can just repeat the steps but change the version of the gcc and g++(4.7 to your version)
wcypierre said:
If you're using ubuntu and its variants, you can try the following(should work for any debian based ones)
Code:
rm /usr/bin/gcc
rm /usr/bin/g++
ln -s /usr/bin/gcc-4.7 /usr/bin/gcc
ln -s /usr/bin/g++-4.7 /usr/bin/g++
To change back to your original compiler, you can just repeat the steps but change the version of the gcc and g++(4.7 to your version)
Click to expand...
Click to collapse
Thanks! Will try that out!
:good:
Hm...seems the kernel is build using gcc 4.6 anyways. Will look into some CM buildscripts and try to find where to change compiler...
Could it be that CM10 buildsystem is using the prebuild and prebuilds directories for gcc?
Yeah prebuilt is where it's found.
When the Linaro toolchain was experimented with in CM9 you had to cherrypick it.
Rusty! said:
Yeah prebuilt is where it's found.
When the Linaro toolchain was experimented with in CM9 you had to cherrypick it.
Click to expand...
Click to collapse
So...do you know how I could use my system gcc (4.7) instead of the prebuilt one?
Thanks!
You have to edit your envsetup.sh to point to the chain you want to use.
Rusty! said:
You have to edit your envsetup.sh to point to the chain you want to use.
Click to expand...
Click to collapse
Ok, is it the ARM_EABI_TOOLCHAIN that should be set?
Big thanks Rusty! for helping me out here... :good:
Yeah that rings a bell. There might be two of them to set.
I don't know if this will be any help to you?
http://forum.xda-developers.com/showthread.php?t=1759007

[KERNEL] [13/5] Razer LTS | Beta1.0 | NTFS | TUN | CIFS | EFS | EXFAT |

Razer LTS Kernel
Features:
Based On Samsung Update 1
Built with Stock ARM Toolchain
exFat
NTFS
TUN
CIFS
Added Conservative | Interactive | Powersave
Default I/O Sched No-op
CPU_Load_Slope Corrected
Info:This is My First Time Making a Kernel..So please Do not have any regrets in me..if you really don't like my kernel..stay away this thread..do not spam my thread
If you understand what situation I'm in
but sure i can give my fullest to this community
Bugs:
None
Downloads:
Beta 1.0
Instructions:
Backup the ROM
Wipe Dalvik cache
Flash the .zip file with Clockworkmod
Credits:
Thanks for your Contribution,Support and Teachings :good:
AndreiLux
Wanam
n3ocort3x
Github:
Anybody who would like to make changes to my git can obiviously do it
My Simple Motto:Your ROM,Your Kernel
Github Link
First, I'll check it out soon
I can't seem to download it, Google docs just opens the file rather than letting me download it. I'm using my phone not my pc...
Sent from my GT-I9500 using Tapatalk 4 Beta
Nasty_z said:
First, I'll check it out soon
I can't seem to download it, Google docs just opens the file rather than letting me download it. I'm using my phone not my pc...
Sent from my GT-I9500 using Tapatalk 4 Beta
Click to expand...
Click to collapse
file > Download :good:
Sorry, it didn't show up before, downloading now..
Sent from my GT-I9500 using Tapatalk 4 Beta
Purely spiritual support your endeavors to enrich i9500 forum.
Sent from my GT-I9500 using xda app-developers app
The more the merrier, practice makes perfect, I'm sure you'll make a great kernel with time.
WiFi isn't working? @razer1224, are you using Google's NDK toolchain to compile the kernel? Also, Google Docs is a bit confusing for people to download from because it's a .zip file, try http://d-h.st/ instead
android1234567 said:
WiFi isn't working? @razer1224, are you using Google's NDK toolchain to compile the kernel? Also, Google Docs is a bit confusing for people to download from because it's a .zip file, try http://d-h.st/ instead
Click to expand...
Click to collapse
Very nice to see you here, we gonna need all your help. Thanks
android1234567 said:
WiFi isn't working? @razer1224, are you using Google's NDK toolchain to compile the kernel? Also, Google Docs is a bit confusing for people to download from because it's a .zip file, try http://d-h.st/ instead
Click to expand...
Click to collapse
Google Stock Arm Eabi toolchain is not working
I will be getting Linaro 4.6 And thanks for your support
Sent from my GT-I9500 using xda app-developers app
anyways am pointing out the error occuring with stock toolchain @android1234567
/home/razer/arm-eabi-4.6/bin/arm-eabi-gcc: 1: /home/razer/arm-eabi-4.6/bin/arm-eabi-gcc: Syntax error: "(" unexpected
I might be compiling with linaro soon
razer1224 said:
Google Stock Arm Eabi toolchain is not working
I will be getting Linaro 4.6 And thanks for your support
Sent from my GT-I9500 using xda app-developers app
Click to expand...
Click to collapse
Use Linaro 4.7 and add the -mno-unaligned-access flag to the KBUILD_CFLAGS_KERNEL line in the Makefile in the root directory, otherwise the kernel won't boot. You can download the April release of Linaro 4.7 from here: https://releases.linaro.org/13.04/c...13.04-2-2013-04-13_12-08-43-linux-x86.tar.bz2
Also, apply this patch so your kernel builds nicely with Linaro: https://github.com/Christopher83/sa...mmit/423e4b149aa5325937f6d72b9ec5deaea4d8eed2
I don't actually own the S4 (was just browsing around here lol) but it seems pretty nice. Maybe I'll get it
android1234567 said:
Use Linaro 4.7 and add the -mno-unaligned-access flag to the KBUILD_CFLAGS_KERNEL Makefile in the root directory, otherwise the kernel won't boot. You can download the April release of Linaro 4.7 from here: https://releases.linaro.org/13.04/c...13.04-2-2013-04-13_12-08-43-linux-x86.tar.bz2
Also, apply this patch so your kernel builds nicely with Linaro: https://github.com/Christopher83/sa...mmit/423e4b149aa5325937f6d72b9ec5deaea4d8eed2
I don't actually own the S4 (was just browsing around here lol) but it seems pretty nice. Maybe I'll get it
Click to expand...
Click to collapse
Thanks for Metioning
@android1234567
arm-eabi-gcc: error: unrecognized command line option '-MNO-UNALIGNED-ACCESS'
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
Hmm..You asked to add a flag but it does not recognize
razer1224 said:
@android1234567
arm-eabi-gcc: error: unrecognized command line option '-MNO-UNALIGNED-ACCESS'
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2
Hmm..You asked to add a flag but it does not recognize
Click to expand...
Click to collapse
That flag works in Linaro 4.7. Did you set the cross compile path to the Linaro toolchain? That error can also appear if you added the flag to HOSTCFLAGS instead of KBUILD_CFLAGS_KERNEL
Sent from my HTC Sensation 4G using xda app-developers app
android1234567 said:
That flag works in Linaro 4.7. Did you set the cross compile path to the Linaro toolchain? That error can also appear if you added the flag to HOSTCFLAGS instead of KBUILD_CFLAGS_KERNEL
Sent from my HTC Sensation 4G using xda app-developers app
Click to expand...
Click to collapse
i think 4.7 GCC's normally dont work with this kernel sources
as it ends up in some error
razer1224 said:
i think 4.7 GCC's normally dont work with this kernel sources
as it ends up in some error
Click to expand...
Click to collapse
A different error? And all sources can be changed to work with GCC 4.7
Sent from my HTC Sensation 4G using xda app-developers app
razer1224 said:
anyways am pointing out the error occuring with stock toolchain @android1234567
/home/razer/arm-eabi-4.6/bin/arm-eabi-gcc: 1: /home/razer/arm-eabi-4.6/bin/arm-eabi-gcc: Syntax error: "(" unexpected
I might be compiling with linaro soon
Click to expand...
Click to collapse
This error means you are using 64bit version of the toolchain, checkout from this commit.
wanam said:
This error means you are using 64bit version of the toolchain, checkout from this commit.
Click to expand...
Click to collapse
Yeah, My System Totally cant run 64bit properly
meaning it cant update my linux
EDIT: THANK YOU @wanam THIS IS WHAT AM SEARCHING FOR
32BIT Toolchain
Thanks YOU SO MUCH
android1234567 said:
Use Linaro 4.7 and add the -mno-unaligned-access flag to the KBUILD_CFLAGS_KERNEL line in the Makefile in the root directory, otherwise the kernel won't boot. You can download the April release of Linaro 4.7 from here: https://releases.linaro.org/13.04/c...13.04-2-2013-04-13_12-08-43-linux-x86.tar.bz2
Also, apply this patch so your kernel builds nicely with Linaro: https://github.com/Christopher83/sa...mmit/423e4b149aa5325937f6d72b9ec5deaea4d8eed2
I don't actually own the S4 (was just browsing around here lol) but it seems pretty nice. Maybe I'll get it
Click to expand...
Click to collapse
Please get the S4(I9500), imagine unleashing this beast with linaro and potential kernel tweaks beyond anything around now.
Beta 1.0
Beta 1.0:
Fixed WiFi
Exfat module added from Samsung
And Probably NTFS Will Work

Ls970-zvc kernal tar

Here ya go some goodies for u ....
Kernal tar text :
1. Android Build
- Download original android source code ( jelly bean 4.1.2 ) from http://source.android.com
- Unzip opensource packages of LS970_OptimusG_Android_JB_LS970ZVC_Android.tar.gz into downloaded android source directory
- And, merge the source into the android source code
- Run following scripts to build android
a) source build/envsetup.sh
b) choosecombo 1 geehrc4g_spr_us 1
c) m -j4
- When you compile the android source code, you have to add google original prebuilt source(toolchain)
into the android folder
- After build, you can find output at out-geehrc4g_spr_us/target/product/geehrc4g
2. Kernel Build
- Untar using following command at the android folder
tar zxvf LS970_OptimusG_Android_JB_LS970ZVC_kernel.tar.gz
- When you compile the kernel source code, you have to add google original prebuilt source(toolchain)
into the android folder.
- cd kernel
- make j1sp-perf_defconfig ARCH=arm
- make ARCH=arm CROSS_COMPILE=../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
3. After build, you can find the build image(zImage) at arch/arm/boot/
New upload of Kernal zvc :
https://docs.google.com/file/d/0B1DGsUzId7AHdXl1RWNNYXFGcHc/edit?usp=docslist_api
Lg ls970_zvc license link : https://docs.google.com/file/d/0B1DGsUzId7AHN2NuUXBnd3c1SnM/edit?usp=docslist_api
Sent from my LG-LS970 using Tapatalk 4
Built date submit * Fri Jul 13 2013 Crutcher Dunnavant * - changed to provide snprintf and vsnprintf functions
Sent from my LG-LS970 using Tapatalk 4
bigfdaddy2 said:
Built date submit * Fri Jul 13 2013 Crutcher Dunnavant * - changed to provide snprintf and vsnprintf functions
Sent from my LG-LS970 using Tapatalk 4
Click to expand...
Click to collapse
Is this what the guy was talking about in the post about the Optimus G software update?
Sent from my LG-LS970 using xda premium
This is the kernal for that software update coming ...
Sent from my LG-LS970 using Tapatalk 4
Sent from my LG-LS970 using Tapatalk 4
bigfdaddy2 said:
This is the kernal for that software update coming ...
Sent from my LG-LS970 using Tapatalk 4
Click to expand...
Click to collapse
Ok. That's what I thought, I was just too lazy to read.
Sent from my LG-LS970 using xda premium
_dannyboy said:
Ok. That's what I thought, I was just too lazy to read.
Sent from my LG-LS970 using xda premium
Click to expand...
Click to collapse
Lol it all good
Sent from my LG-LS970 using Tapatalk 4
Phone appman is set at test server and so is the bau server .... hopefully lets me get a lil sooner ... unsure whether appman and bau needs to be test server or staging server ....
Sent from my LG-LS970 using Tapatalk 4
bigfdaddy2 said:
Here ya go some goodies for u ....
Kernal tar text :
1. Android Build
- Download original android source code ( jelly bean 4.1.2 ) from http://source.android.com
- Unzip opensource packages of LS970_OptimusG_Android_JB_LS970ZVC_Android.tar.gz into downloaded android source directory
- And, merge the source into the android source code
- Run following scripts to build android
a) source build/envsetup.sh
b) choosecombo 1 geehrc4g_spr_us 1
c) m -j4
- When you compile the android source code, you have to add google original prebuilt source(toolchain)
into the android folder
- After build, you can find output at out-geehrc4g_spr_us/target/product/geehrc4g
2. Kernel Build
- Untar using following command at the android folder
tar zxvf LS970_OptimusG_Android_JB_LS970ZVC_kernel.tar.gz
- When you compile the kernel source code, you have to add google original prebuilt source(toolchain)
into the android folder.
- cd kernel
- make j1sp-perf_defconfig ARCH=arm
- make ARCH=arm CROSS_COMPILE=../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-
3. After build, you can find the build image(zImage) at arch/arm/boot/
Kernal DL : https://docs.google.com/file/d/0B1DGsUzId7AHVXlVN2tBWXRYUE0/edit?usp=docslist_api
Lg ls970_zvc license link : https://docs.google.com/file/d/0B1DGsUzId7AHN2NuUXBnd3c1SnM/edit?usp=docslist_api
Sent from my LG-LS970 using Tapatalk 4
Click to expand...
Click to collapse
Nicely done, did you see anything new building the kernel from source.
Sent from my LG-LS970 using xda app-developers app
I haven't done any building with it to test ....I just was able to pull the kernal from the new update heading our way .... I know evoloutionmods,neighborhood hacker have put it into some builds and are testing it out ....
Sent from my LG-LS970 using Tapatalk 4
bigfdaddy2 said:
I haven't done any building with it to test ....I just was able to pull the kernal from the new update heading our way .... I know evoloutionmods,neighborhood hacker have put it into some builds and are testing it out ....
Sent from my LG-LS970 using Tapatalk 4
Click to expand...
Click to collapse
Nice, Hopefully this will fix the bug issues, I think they are doing this too prepare the phone at the end of year for android 4.3
tommyjoesanders said:
Nice, Hopefully this will fix the bug issues, I think they are doing this too prepare the phone at the end of year for android 4.3
Click to expand...
Click to collapse
I don't believe we will receive 4.3 I know we will get 4.2 but they say it will be by end of year .... Lg seems to usually do 4-5 updates to their top tier phones .. We have had two major updates and know this minor update thats coming and the first minor update for ICS equals our 4 updates lol...
Sent from my LG-LS970 using Tapatalk 4
Posted new upload of zvc kernal ... I messed up last night while uploading ....
Sent from my LG-LS970 using Tapatalk 4
bigfdaddy2 said:
I don't believe we will receive 4.3 I know we will get 4.2 but they say it will be by end of year .... Lg seems to usually do 4-5 updates to their top tier phones .. We have had two major updates and know this minor update thats coming and the first minor update for ICS equals our 4 updates lol...
Sent from my LG-LS970 using Tapatalk 4
Click to expand...
Click to collapse
We've had one major update. 4.1.2. We started with zv7, zv8 and 9 were bug fixes. ZVB is the only major one I can think of. Zvc seems fairly minor.
Sent from my LG-LS970 using xda app-developers app
Sorry to resurrect a dead thread but this is the only one that I saw that talks about compiling from LG kernel source.
I think I did everything like your instructions say but the output folder for my kernel doesn't have a zImage file. The closest name is Image but it's 14.4MB (way bigger than viper kernel, for instance) and it doesn't boot via fastboot boot Image. I'd appreciate it if anyone could give me some pointers.
EDIT: looks like I hadn't installed lzop, never mind.
VoluntaryMan said:
Sorry to resurrect a dead thread but this is the only one that I saw that talks about compiling from LG kernel source.
I think I did everything like your instructions say but the output folder for my kernel doesn't have a zImage file. The closest name is Image but it's 14.4MB (way bigger than viper kernel, for instance) and it doesn't boot via fastboot boot Image. I'd appreciate it if anyone could give me some pointers.
EDIT: looks like I hadn't installed lzop, never mind.
Click to expand...
Click to collapse
I tried it using toolchain 4.6.3, among many others, and at best, the error was with the tsp.drv. When I removed it it compiled fine. But no boot.
How did you get past that error? Also, I have issues getting the modules to compile. How'd you fix that?
I'm trying to learn in my spare time so that's probably my problem. TIA
Sent from my LG-LS970 using XDA Premium 4 mobile app
engine95 said:
I tried it using toolchain 4.6.3, among many others, and at best, the error was with the tsp.drv. When I removed it it compiled fine. But no boot.
How did you get past that error? Also, I have issues getting the modules to compile. How'd you fix that?
I'm trying to learn in my spare time so that's probably my problem. TIA
Click to expand...
Click to collapse
I just started with the source of Viper Kernel, it's ZVC based and already have some good fixes.
You can also see the source I'm working on at bmos/JB_LS970ZVC_Adder, although mine isn't booting right now (although I'm about to try toolchain 4.7 which it says it is optimised for)

Categories

Resources