[XPERIA X1 Android Development] fatsal:
how to build a working kernel for kovsky :

step 1 :

prepared compiling environment :

1. ubuntu karmic (good step) or *nix OS

2. for ubuntu user :

2.a. apt-get install git-core build-essential libncurses-dev

3. mkdir /home/<username>/kovsky-dev

4. Download the source :

4.a. cd /home/<username>/kovsky-dev

4.b. git clone git://git.linuxtogo.org/home/groups/mobile-linux/kernel.git <--- old version

4.b. git clone git://gitorious.org/~fatsal/linux-on-qualcomm-s-msm/linux-msm-kovsky.git <--- new onces

4.c. cd kernel

4.d. git checkout -b htc-msm-2.6.27 origin/htc-msm-2.6.27

5. Download and decompress the arm toolchain (64mb)

5.a. cd /home/<username>/kovsky-dev

5.b. wget http://www.codesourcery.com/gnu_too...-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -O arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

5.c. tar xjf arm-2008q1-126-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2

6. Generate the default .config for the kernel(ARCH is case sensitive)

6.a. cd /home/<username>/kovsky-dev/kernel

6.b. make htckovsky_defconfig ARCH=arm

6.c. pico .config

7. Let's tweak kernel

7.a. pico .config

-----------------------------------------------------------------------

A MUST CHANGES IN KERNEL CONFIG

-----------------------------------------------------------------------

UNCOMMENT CONFIG BELOW :

# CONFIG_FB_MSM_REFRESH is not set -> CONFIG_FB_MSM_REFRESH=y

# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -> CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y (use for fbcon:2 in our startup.txt)

IMPORTANT FOR WIFI :

# CONFIG_CFG80211 is not set --> CONFIG_CFG80211=m (this is for our wifi module)

# CONFIG_WIRELESS_EXT is not set --> CONFIG_WIRELESS_EXT=y

# CONFIG_WIRELESS_EXT_SYSFS is not set --> CONFIG_WIRELESS_EXT_SYSFS=y

# CONFIG_MAC80211 is not set --> CONFIG_MAC80211=m

# CONFIG_IEEE80211 is not set --> CONFIG_IEEE80211=y

# CONFIG_IEEE80211_DEBUG is not set --> CONFIG_IEEE80211_DEBUG=y

# CONFIG_IEEE80211_CRYPT_WEP is not set --> CONFIG_IEEE80211_CRYPT_WEP=y

# CONFIG_IEEE80211_CRYPT_CCMP is not set --> CONFIG_IEEE80211_CRYPT_CCMP=y

# CONFIG_IEEE80211_CRYPT_TKIP is not set --> CONFIG_IEEE80211_CRYPT_TKIP=y

FOR QUICK BOOTING :

# CONFIG_HTC_FB_CONSOLE is not set --> CONFIG_HTC_FB_CONSOLE=y

# CONFIG_HTC_FB_CONSOLE_BOOT is not set --> CONFIG_HTC_FB_CONSOLE=y

FILE SYSTEM SUPPORT FOR OUR KERNEL :

# CONFIG_CRAMFS is not set --> CONFIG_CRAMFS=y

# CONFIG_SQUASHFS is not set --> CONFIG_SQUASHFS=y this is for supporting system.sqsh (squash, for android 2.0.1 ONLY support squash FS)

ADD THIS IN OUR CONFIG

CONFIG_SQUASHFS_EMBEDDED=y

CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3

ADD THIS ON YOUR CONFIG :

CONFIG_RTC_DRV_MSM7X01A=y --> This is for getting update date in our kernel. thanks to vdelf for the patch it's cool man.

notes :

if the compiler ask some this just answer with Y or follow the compiler default answer.

8. Compile

8.a. cd /home/<username>/kovsky-dev/kernel

8.b. export PATH=/home/<username>/kovsky-dev/arm-2008q1/bin:$PATH

8.c. make zImage ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-

9. Play and have fun!!! Now you can copy the compressed kernel image to your blackstone

cp /home/<username>/kovsky-dev/kernel/arch/arm/boot/zImage /wherever your boot files are stored

references :

http://wiki.xda-developers.com/index.php?pagename=Kovsky Linux

LET'S MAKE WIFI WL1251 WORKING :

1. LET SETUP ENVIRONMENT :

1.a. mkdir /home/<username>/kovsky-wifi

1.b. cd /home/<username/kovsky-wifi

1.c. git clone git://gitorious.org/linux-on-qualcomm-s-msm/compat-wireless-msm.git

1.d. cd compat-wireless-msm

2. LET SETUP BUILDER :

2.a. sudo chmod -R 755 builder.sh

2.b. pico builder.sh

2.c. changes KERNEL_PATH=/home/<username>/kovsky-dev/kernel

2.d. ./builder.sh

2.e. cd mods/

2.f. you must see our wifi modules (horeee....we've got working wifi for our xperia).