Quote:
Originally Posted by ghadap View Post
Stefan, will your tutorial works with original source (eg, V20q) and others (eg, spica HP)? and which file/folder to make our kernel support ext4?

My idea was using stock kernel but add ext4..
Example of building unchanged stock kernel and only add ext4 compatibility:
  • start the kernelBuilder,
  • delete all folders located in Desktop/kernel_source except the folders "guestekrnl_BUILDS" and "zipstructure"
  • delete all files located in Desktop/kernel_source except the file "buildkernel"
  • edit the file "buildkernel" (rightClick-> open with gEdit) and change line
    Quote:
    make ARCH=arm gueste${1}_defconfig;
    to
    Quote:
    make ARCH=arm star_ifx${1}_defconfig;
    if you use v20 sources or to
    Quote:
    make ARCH=arm star_rev_f_android${1}_defconfig;
    if you use v10 sources
  • Download the official kernel sources you want from http://www.lg.com/global/support/ope...delCode=LGP990
  • Extract the sources until you get a folder kalled "kernel"
  • copy the contents from inside "kernel" folder to Desktop/kernel_source
  • edit file Desktop/kernel_source/drivers/net/wireless/bcm4329/Makefile -> change line
    Quote:
    -Wall -Wstrict-prototypes -Werror \
    to
    Quote:
    -Wall -Wstrict-prototypes \
  • edit file Desktop/kernel_source/arch/arm/configs/star_ifx_defconfig (or star_rev_f_android_defconfig): enable ext4 through replacing ext4 config (search for it in the file) with following:
  • Quote:
    CONFIG_EXT4_FS=y
    CONFIG_EXT4_FS_XATTR=y
    # CONFIG_EXT4_FS_POSIX_ACL is not set
    # CONFIG_EXT4_FS_SECURITY is not set
    # CONFIG_EXT4_DEBUG is not set
    CONFIG_JBD=y
    # CONFIG_JBD_DEBUG is not set
    CONFIG_JBD2=y
    # CONFIG_JBD2_DEBUG is not set
  • run the buildkernel script, kernel will be built
  • Attention: don't use linaro/gcc toolchain newer than september 2011, otherwise kernel won't boot without additional modifications (the included default toolchain will work fine)

For every other stock kernel sources (in order to compile & zip-package them using kernelBuilder) the procedure should work similar!
Spica horsepower kernel however won't work that way, because spica does not upload his defconfig to his sources @GitHub (thus making rebuilding more difficult).
And default defconfig of stock kernel won't work with spica kernel. (Without the right defconfig the kernel does not boot.)
Older spica kernels (older than SR3) completely won't work and can't be rebuilt because spica never offered full sources @GitHub until SR3.

So in order to get a current spica kernel source working, you have to additionally
  • install the kernel you want to rebuild first on your phone and then
  • copy the file /proc/config.gz first to your internal SD and then to your PC,
  • unpack it and then rename the file you get to "spica_defconfig" and
  • place it in Desktop/kernel_source/arch/arm/configs/
  • finally edit the buildkernel file again so you have
    Quote:
    make ARCH=arm spica${1}_defconfig;
    in there!

In order to see the differences of guestekrnL compared to stock kernel, Download Meld Diff Viewer in App Store of virtual linux machine and make a folder-comparison of folder Desktop/kernel_source and a folder where you keep unchanged v10E kernel sources!
LG O2X @ GoodBye v2.0R
+ guestekrnL v2.2.1
"Fische, die nur mit dem Strom
schwimmen, sind tot."