Wednesday, May 22, 2013

Cara build Kernel Android From Source

Oke sekarang ane mau berbagi lagi tentang cara build kernel langsung dari source codenya yg disediain oleh samsung dan sony. Contoh disini adalah cara build kernel samsung galaxy mini pop plus (GT-S5570I) dan Xperia Mini Pro.

Resiko tanggung sendiri!!

Ucapan Termakasih:
  1. Allah SWT
  2. Asih Restari yg telah meminjamkan Galpop+ nya
  3. Xda-Developer buat semua tutorialnya yg g bisa ane sebut satu-persatu
  4. Maroc-OS buat patch and source di githubnya
  5. Irfan Bagus buat bacem tweak + cara compile kernelnya
  6. Fedy Kusuma buat kernel repencisnya, terutama di init.rc nya yg bisa ane pelajarin
  7. Samsung dan Sony untuk kernel sourcenya
  8. Linux untuk OS compilernya
  9. My Laptop Accer 4741Z dan Compaq presario CQ42
  10. User forum fb galpop+
  11. My Xperia Mini Pro
  12. Dumohsmol untuk souce kernelnya
  13. Official Lounge XM/XMP dan Galaxy Pop+
  14. Dan masih banyak lagi yg gk bisa ane sebutin..
Untuk Galaxy PopPlus:


Bahan-Bahan Yg dibutuhkan:
  1. OS Linux 32 dengan GCC. Contoh Ubuntu. Download Ubuntu disini http://kambing.ui.ac.id/iso/ubuntu/releases/ (tested Ubuntu-12-04)
  2. Sourcery G++ Lite 2009q3-68 toolchain for ARM EABI dari http://goo.gl/XeFj1. Download yang arm-2009q3-68-arm-none-eabi-i686-pc-linux-gnu.tar.bz2
  3. Mkbootimg dengan md5support http://forum.xda-developers.com/show...&postcount=241 . credit to harish2704
  4. Split_bootimg.pl http://goo.gl/gZJ2r
  5. Kernel Galaxy Pop Plus di http://opensource.samsung.com. Di form search ketik aja GT-S5570I (tested download GT-S5570I_GB_Opensource.zip)
  6. Stock boot.img. Kalo gak punya ambil dari sini http://www.4shared.com/zip/xF2nVgFv/Galpop_kernel1.html
Langkah-langkah build kernel:
  1. Pastikan Linux sudah terinstall, entah itu terinstall di virtualbox/di hardisk PCnya.
  2. Lalu ekstrak file g++ litenya atau arm-2009q3-68-arm-none-eabi-i686-pc-linux-gnu.tar.bz2. Contoh file itu ada di /home/usernamekamu/Downloads/
  3. Maka ketik perintah ini: # cd /home/usernamekamu/Downloads/ (Lihat file arm-2009q3-68-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 di gambar: http://goo.gl/B34mY)
  4. Sekarang ekstrak file itu ke /opt/. Perintahnya: # tar -xvf arm-2009q3-68-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 -C /opt/ (lihat gambar: http://goo.gl/YeM72)
  5. Sekarang ketik: # ls /opt/ (Nah disitu harus ada folder arm2009-q3 seperti gambar ini: http://goo.gl/4OGzZ)
  6. Lalu sekarang kita buat folder kerja kernel, ketik ini: # mkdir /home/usernamekamu/kernel
  7. Copy dan Pastekan file GT-S5570I_GB_Opensource.zip ke /home/usernamekamu/kernel/. Contoh dari folder download, maka ketik ini: # mv /home/usernameku/Downloads/GT-S5570I_GB_Opensource.zip /home/usernamekamu/kernel/
  8. Lalu ketik ini: # cd /home/usernamekamu/kernel/
  9. Lalu ketik: # ls (lihat gambar: http://goo.gl/8V19W)
  10. Dari gambar di atas, menunjukan terdapat file GT-S5570I_GB_Opensource.zip
  11. Lalu unzip file itu dengan perintah: # unzip GT-S5570I_GB_Opensource.zip (Lihat gambar: http://goo.gl/WlwvC)
  12. Lalu ekstrak file Kernel.tar.gz dengan perintah: # tar -xvf Kernel.tar.gz (hasilnya akan ada folder kernel dan di dalam folder kernel ada dua buah file common dan modules. Lihat gambar http://goo.gl/TmCEp
  13. Lalu ketik lagi: # cd kernel/
  14. Lalu ketik lagi: # cd common (lihat gambar: http://goo.gl/EntrU)
  15. Lalu ketik ini: # nano Makefile dan cari tulisan CROSS_COMPILE ?=/opt/toolchains/arm-eabi-4.4.3/bin/arm-eabi- dan rubah menjadi CROSS_COMPILE ?=/opt/arm-2009q3/bin/arm-none-eabi- (lihat gambar http://goo.gl/VoHWU)
  16. Lalu save dengan cara tekan tombol ctrl+x lalu apabila muncul pertanyaan pencet tombol y..
  17. Lalu sekarang ketik # make bcm21553_tassve_03_defconfig (Nanti akan ada error scripts/kconfig/conf.c: In function ‘conf_sym’:)
  18. Biarkan saja errornya itu gak apa-apa.. Lihat gambar: http://goo.gl/ZDskR
  19. Selanjutnya adalah tahap buildnya dengan perintah # make
  20. Tunggu sampai selesai.
  21. Klo sudah selesai akan ada file zImage yg ada di folder arc/arm/boot/
Pembuatan boot.img:
  1. Buat folder baru di /home/usernamekamu/Boot-img
  2. Ketik ini: # mkdir /home/usernamekamu/Boot-img
  3. Dan ketik ini: # cd /home/usernamekamu/Boot-img
  4. Copy dan pastekan file Mkbootimg, Split_bootimg.pl dan boot.img stock hasil download ke folder Boot-img tadi (harus sudah tau caranya, pusing soalnya jelasinnya alias lagi cape. Hehe)
  5. Lalu ketik ini: # perl split_bootimg.pl boot.img
  6. Nanti akan ada hasil 2 file yaitu boot.img-ramdisk.gz dan boot.img-kernel
  7. Lalu copy file zImage ke folder Boot-img dengan perintah: # cp /home/usernamekamu/kernel/common/arch/arm/boot/zImage /home/usernamekamu/Boot-img
  8. Setelah itu ketik: # md5sum zImage (lihat kode md5nya)
  9. Lalu ketik: # tar -xvf mkbootimg4GT-S5360.tar.gz (Hasilnya ada folder baru yaitu mkbootimg.. http://goo.gl/HST5a)
  10. Lalu copy file zImage dan boot.img-ramdisk.gz ke mkbootimg dengan perintah: # cp zImage boog.img-ramdisk.gz mkbootimg/
  11. Lalu ketik: # cd mkbootimg
  12. Setelah itu ketik: # ./mkbootimg --kernel zImage --ramdisk boot.img-ramdisk.gz --base 0x81600000 --kernelMD5 -o boot.img
  13. Terakhir ketik: # tar -cvf boot-galpop.tar boot.img
  14. Nah file boot-galpop.tar itu nanti bisa di flash dengan odin. Nanti pas di odin cukup isi file pit --> isi dengan tassve.pit dan pda --> boot-galpop.tar
  15. Lihat hasil akhir kernelnya http://goo.gl/yv5j0
  16. Ucapan Terimakasih untuk: Irfan Bagus atas threadnya http://forum.xda-developers.com/showpost.php?p=24747881&postcount=4
Cara Menganti Nama kernel.
  1. Ingat kita masih terus memanfaatkan file kernel yg sebelumnya. Folder kernel yg ada di /home/usernamekamu/kernel.
  2. Jadi ketik perintah: # cd /home/usernamekamu/kernel/kernel/common
  3. Sekarang kita ganti nama versi kernelnya dengan mengedit file version.c di init/version.c
  4. Jadi ketik perintah: # nano init/version.c
  5. Lalu cari tulisan Const char linux_banner[ ]= dan ubah menjadi seperti di gambar ini (Lihat nama imron02 dan ubuntu di gambar, jadi ubah itu sesuai nama kamu dan nama Linuxnya, misal saya ubuntu) http://goo.gl/058Gh
  6. Setelah itu save ya dengan menekan tombol ctrl+x lalu apabila ada pertanyaan pencet tombol y.
  7. Sekarang compile lagi kernelnya dengan perintah: # make
  8. Setelah itu lihat instruksi pembuatan boot-img di atas.
  9. Hasilnya akan tampak seperti ini: http://goo.gl/PrZfd
  10. Thx untuk http://forum.xda-developers.com/showthread.php?t=977854
Cara aktifin init.d:
Bahannya:
  1. Untuk init.d ini bisa di aktifin juga di stock kernel loch. He
  2. Hh sudah root dan terinstall busybox
  3. Download Android-kitchen di http://forum.xda-developers.com/showthread.php?t=633246
  4. Cara penggunaanya udh di jelasin di sitenya (xda y)
  5. Cara aktifinnya:
  6. Copy dan paste file Android-kitchen-xxx.zipnya ke folder /home/usernamekamu/kernel
  7. Buka terminal dan lalu ketik: $ cd /home/usernamekamu/kernel/Android-Kitchen
  8. Ekstrak file Android-kitchen-xxx.zip itu dengan perintah $ unzip Android-Kitchen-xxx.zip
  9. Tuju direktori Android-kitchen dengan perintah: $ cd Android-Kitchen/
  10. Jalanin android-kitchennya, klo pake linux cukup ketik dengan perintah $ ./menu
  11. Taruh file boot.img sebelumnya di folder android-kitchen/working-xxx-xx itu
  12. Pilih angka 0 (advanced option)
  13. Lalu pilih angka 20 (untuk unpack/repack boot.img)
  14. Lalu pencet huruf w dan tunggu sampe selesai dan sampai muncul pertanyaan pilihan lagi. 
  15. Setelah itu lihat di folder Android Kitchen akan ada folder baru dengan nama BOOT-Extracted
  16. Masuk ke folder itu, lalu masuk ke folder boot.img-ramdisk dan buka file init.rc
  17. Cari kata # chown system system /dev/dun
  18. Taruh di bawah kata itu tulisan: start sysinit on property:cm.filesystem.ready=1
  19. Lihat gambar: http://goo.gl/gvugc
  20. Lalu cari kata lagi onrestart restart netd
  21. Taruh dibawah kata itu service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d 
    disabled
    oneshot

  22. Lihat gambar: http://goo.gl/BHiqG
  23. Buka terminalnya lagi, lalu pencet huruf b (build boot.imgnya)..
  24. Setelah selesai, maka file boot.img sudah jadi dan terletak di folder WORKING-xxxx
  25. Buat file boot.img supaya bisa dijalankan lagi dengan odin. Caranya di terminal ketik: $ tar -cvf boot-galpop.tar boot.img
Cara Aktifin ext4 file system:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/common
  2. Lalu ketik: $ sudo chmod 777 -R /home/usernamekamu/kernel
  3. Fungsi perintah di atas adalah agan kita melakukan compile kernel tidak memakai user root lagi.
  4. Lalu sekarang ketik: $ gedit .config
  5. Lalu cari kata CONFIG_EXT3_FS_SECURITY is not set dan di bawahnya masukkan perintah:
    CONFIG_EXT4_FS=y
    CONFIG_EXT4_FS_XATTR=y
    CONFIG_EXT4_FS_POSIX_ACL=y
    Lihat gambar: http://goo.gl/K9mX6
  6. Lalu jangan lupa untuk di save
  7. Lalu sekarang compile lagi kernelnya dengan perintah $ make
  8. Lalu selanjutnya ikuti perintah pembuatan init.d di atas sampai no 11
  9. Tetapi pada saat init.rc terbuka, maka cari baris #mount yaffs2 mtd@cache /cache nosuid nodev
  10. Selanjutnya di bawahnya tambahkan tulisan seperti yang ada di gambar ini: http://goo.gl/gy45Q
  11. Lalu ikuti perintah no 21 sampai 23 di perintah pembuatan init.d
  12. Kalau sudah berhasil flashing kernelnya, sekarang coba buka terminal emulatornya di android lalu ketik perintah : $ su
  13. Lalu: # mount -o remount -t ext4 /dev/stl9 /system
  14. Apabila tidak ada error, berarti pengaktifkan ext4 telah berhasil.. :D
Cara Aktifin Swap:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/common
  2. Lalu sekarang ketik: $ gedit .config
  3. Lalu cari tulisan # CONFIG_KERNEL_LZO is not set setelah itu di bawahnya tambahkan tulisan seperti gambar di ini: http://goo.gl/1Chb6
  4. Lalu cari tulisan ini lagi # CONFIG_IIO is not set setelah itu di bawahnya tambahkan tulisan seperti gambar ini: http://goo.gl/73XND
  5. Lalu setelah itu compile lagi kernelnya dengan perintah make dan setelah itu buat menjadi boot.img seperti perintah yg sudah dijelaskan di atas dan coba flashing kernelnya.
  6. Apabila berhasil masuk HS, sekarang coba buka terminal emulatornya dan ketikkan perintah ini: $ su
  7. Lalu # swapon /dev/block/mmcblk0p3
  8. Apabila tidak ada error, maka pengaktifan swap berhasil
Cara aktifkan Droidwall:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/common
  2. Lalu sekarang ketik: $ gedit .config
  3. Lalu cari tulisan # CONFIG_IP_NF_MATCH_TTL is not set setelah itu di bawahnya tambahkan tulisan seprti gambar ini: http://goo.gl/DmYye
  4. Lalu cari tulisan # CONFIG_NETFILTER_XT_MATCH_POLICY is not set setelah itu di atasnya tambahkan tulisan seperti di gambar ini: http://goo.gl/aXgMe
  5. Lalu cari tulisan # Core Netfilter Configuration dan setelah itu di bawahnya tambahkan tulisan seperti gambar ini: http://goo.gl/72kIA
  6. Lalu setelah itu compile lagi kernelnya dengan perintah make dan setelah itu buat menjadi boot.img seperti perintah yg sudah dijelaskan di atas dan coba flashing kernelnya.
  7. Apabila berhasil masuk HS, sekarang di uji coba droidwallnya.
Cara aktfikan Droidvpn dan Cifs
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/common
  2. Lalu sekarang ketik: $ gedit .config
  3. Lalu cari tulisan # CONFIG_CEPH_FS is not set setelah itu di bawahnya tambahkan tulisan seperti di gambar ini: http://goo.gl/7QZ8Z
  4. Lalu cari tulisan # CONFIG_EQUALIZER is not set setelah itu di bawahnya tambahkan tulisan CONFIG_TUN=y lalu save
  5. Lalu setelah itu compile lagi kernelnya dengan perintah make dan setelah itu buat menjadi boot.img seperti perintah yg sudah dijelaskan di atas dan coba flashing kernelnya.
  6. Apabila berhasil masuk HS, silahkan uji coba droidvpnnya dan cifs managernya
  7. Sumber: http://forum.xda-developers.com/showthread.php?t=1467149
Cara membuat OC 3 pilihan (300mhz, 600mhz dan 800mhz)
  1. Download dulu file ini: http://www.mediafire.com/download.php?jys7sa5qme97rm8
  2. Lalu ekstrak file itu. Misal hasil ekstrakannya ada di /home/username/Downloads
  3. Perintah ekstraknya adalah dengan $ tar -xvf /home/username/Downloads/cpufreq.tar.gz
  4. Nah sekarang coba lihat folder Download n di situ pasti ada folder patch.
  5. Sekarang coba buka terminalnya lagi, lalu seperti biasa menuju direktori kernelnya dengan perintah: $ cd /home/usernamekamu/kernel/kernel/common
  6. Lalu setelah itu ketik perintah patchingnya: $ patch -p2 /home/username/Downloads/patch/bcm_cpufreq.c.patch
  7. Lalu apabila tidak ada error ketik lagi perintah: $ patch -p2 /home/username/Downloads/patch/clock-21553.c.patch
  8. Lalu terakhir ketik lagi perintah: $ patch -p2 /home/username/Downloads/patch/device.c.patch
  9. Dan setelah itu di coba compile lagi kernelnya.. Dan apabila berhasil, coba cek dengan install aplikasi seperti no-frills cpu dan liat da set frequencynya gak.. Klo tidak ada berarti ada kesalahan, silahkan coba lagi.. :D
  10. Dan coba buat file boot.img lagi
Cara memambahkan dan mengaktifkan Governor + io
  1. Secara default, kernel bawaan samsung ini udah di sediain beberapa governor. Contohnya userspace, bcm2153, powersafe. Nah tapi di sini saya akan coba share cara menambahkan governornya..
  2. Pertama download dulu file governor+ionya di http://www.mediafire.com/download.php?d774fs4o3c2svd9
  3. Lalu ekstrak file governor+io itu. Contoh file itu ada di folder download. Maka cara ekstraknya adalah: $ tar -xvf gov+io.tar.gz
  4. Lalu coba lihat di folder download. Pasti ada folder block dan driver.
  5. Sekarang buka folder block itu, dan copy paste semua isinya, dan isinya copykan semua ke folder /home/usernamekamu/kernel/kernel/common/block/
  6. Lalu buka folder driver/cpufreq di folder download, dan copy paste semua isinya ke folder /home/usernamekamu/kernel/kernel/common/block/driver/cpufreq/
  7. Lalu caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/common/
  8. Lalu ketik perintah: $ gedit .config
  9. Lalu cari tulisan # CPU Power Management. Setelah itu dibawahnya ganti dan tambahkan tulisan seperti ini: http://goo.gl/ItOSe
  10. Kalau sudah selesai, lalu save dan coba kompile kernelnya dan coba buat boot.img lagi.
  11. Nah lalu apabila berhasil di flashing kernelnya, coba buka aplikasi no-frills cpu tadi dan lihat nama-nama governor dan io schedulenya.. Tapi beberapa governor itu masih belum aktif. Dan katanya ada masalah di kernelnya, maka dari itu, dibuthkan file bacem-tweak buatan om Irfan Bagus, jadi ucapin thx buat dia dan download filenya di http://forum.xda-developers.com/showthread.php?t=1640972
  12. Setelah itu coba install file bacem tweak itu melalu CWM, dan setelah restart, coba cari tau aplikasi cpu tuner dan silahkan cek governornya sudah aktif semua atau belum dengan aplikasi itu. Cara pakai aplikasi cpu tuner itu sudah pernah di bahas oleh om fedy kusuma. Jadi silahkan search sendiri ya..
Cara mengaktifkan a2sd darktremor.
  1. Lihat cara ekstrak file boot.img di pembuatan init.d di tutorial di atas.
  2. Ikuti sampai langkah no 11
  3. Lalu setelah init.rc terbuka coba cari tulisan: setprop net.tcp.buffersize.gprs 4092,8760,11680,4096,8760,11680
  4. Lalu dibawahnya tambahkan tulisan ini: http://goo.gl/lJQnm
  5. Lalu cari lagi tulisan service flash_recovery /system/etc/install-recovery.sh
  6. Lalu dibawahnya tambahkan tulisan ini: http://goo.gl/VWCfD
  7. Lalu setelah itu ikuti perintah pengaktifan init.d lagi dari no 21 sampai 23 gan http://goo.gl/dkozv
  8. Penampakan kernel akhir ane: http://goo.gl/dkozv
Catatan:
  1. Biasakan gunakan tombol tab untuk melakukan penulisan command line di linux. Misal saat kita ketik $ cd /home/usernamekamu/ker langsung saja pencet tab keyboardnya, maka akan otomatis menjadi $ cd /home/usernamekamu/kernel
  2. Saat pengetikan cd, mungkin akan ada yg berbeda-beda. Contohnya $ cd /home/usernamekamu klo di ane kan contohnya $ cd /home/aim/
  3. Jadi bagi yg berbeda, disesuaikan z dan gunakanlah tombol tabl itu, karena sangat membantu sekali..
  4. Yg ada perintah-perintah cd itu gk mesti sama, misal di sini ane menggunakan folder kerja di /home/usernameane. Nah bisa jg ente ngerjain di /mnt/Working. Jadi /home/usernamekamu itu bukan patokan yg harus di ikutin untuk penempatan folder kerjanya.
  5. Bagi yg bingung atau pas pengetikan perintah-perintah di atas, suka menemukan command not found/file not such as directory atau error lainnya. Coba membaca dulu tentang command-command line standar linux melalui terminal di internet.
  6. Dan juga selalu gunakan perintah ls untuk mengecek file/folder kerja kita itu memang anda. Contohnya bisa dilihat di gambar-gambar build kernel from source itu di atas. Ane sering gunain perintah ls yang berarti list atau dalam windows sama aja dengan perintah dir
Buat Bahan belajar, mampir ke githubnya Maroc. https://github.com/Maroc-OS/Merruk-Technology/commits/master
Disitu lengkap ada cara aktifin droidwall, oc, uv, ext4, initd, cifs, droidvpn, dan masih banyak lagi..

Untuk Sony Xperia Mini Pro:

Bahan-Bahan Yg dibutuhkan:
  1. OS Linux 32 dengan GCC. Contoh Ubuntu. Download Ubuntu disini http://kambing.ui.ac.id/iso/ubuntu/releases/ (tested Ubuntu-12-04)
  2. Sourcery G++ Lite arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 dari http://code.google.com/p/acoral-hg/downloads/detail?name=arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2&can=2&q=
  3. Stock boot.img. Kalo gak punya ambil dari sini http://www.mediafire.com/?idq0icd0vcitl2p
  4. Dan juga kernel sourcenya, contoh untuk versi ICS di sini http://developer.sonymobile.com/downloads/xperia-open-source-archives/open-source-archive-for-build-4-1-b-0-587/
  5. Download Android-kitchen di http://forum.xda-developers.com/showthread.php?t=633246\
Langkah-langkah build kernel:
  1. Pastikan Linux sudah terinstall, entah itu terinstall di virtualbox/di hardisk PCnya.
  2. Lalu ekstrak file g++ litenya atau arm-2010q1-188 dan source kernelnya tadi. Contoh file itu ada di /home/usernamekamu/Downloads/
  3. Lalu ketik $ sudo su
  4. Maka ketik perintah ini: # cd /home/usernamekamu/Downloads/ (Lihat file arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 dan source kernel ada di /home/usernamekamu/Downloads lihat gambar: http://goo.gl/MHmO5)
  5. Sekarang ekstrak file itu ke /opt/. Perintahnya: # tar -xvf arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 -C /opt/
  6. Sekarang ketik: # ls /opt/ (Nah disitu harus ada folder arm2009-q3 seperti gambar ini: http://goo.gl/PRU7L)
  7. Lalu sekarang kita buat folder kerja kernel, ketik ini: # su usernamekamu. Perintah ini digunakan untuk berpindah dari user root (#) menjadi user biasa lagi ($).
  8. Lalu ketik $ mkdir /home/usernamekamu/kernel
  9. Copy dan Pastekan file source kernel ke /home/usernamekamu/kernel/. Contoh dari folder download, maka ketik ini: $ mv /home/usernameku/Downloads/4.1.B.0.587.tar.bz2 /home/usernamekamu/kernel/
  10. Lalu ketik ini: $ cd /home/usernamekamu/kernel/
  11. Lalu ketik: $ ls (lihat gambar: http://goo.gl/D48Cv)
  12. Dari gambar di atas, menunjukan terdapat file 4.1.B.0.587.tar.bz2
  13. Lalu Ekstrak file itu dengan perintah: $ tar -xvf 4.1.B.0.587.tar.bz2 (Lihat gambar: http://goo.gl/2XR4W)
  14. Lalu ketik lagi: $ cd kernel/
  15. Lalu ketik ini: $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make semc_mango_defconfig (untuk xmp) atau $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make semc_smultron_defconfig (untuk xm)
  16. Nanti akan ada error, itu biarkan saja dan tidak apa-apa, error itu maksudnya adalah kita tidak bisa edit config kernelnya melalui menumake menuconfig.
  17. Lalu sekarang ketik $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make
  18. Tunggu sampai selesai.
  19. Klo sudah selesai akan ada file zImage yg ada di folder arc/arm/boot/
  20. Copy dan paste file Android-kitchen-xxx.zipnya ke folder /home/usernamekamu/kernel
  21. Buka terminal dan lalu ketik: $ cd /home/usernamekamu/kernel/Android-Kitchen
  22. Ekstrak file Android-kitchen-xxx.zip itu dengan perintah $ unzip Android-Kitchen-xxx.zip
  23. Android-kitchen-xxx.zip itu sesuaikan dengan no versi android kitchen agan ya..
  24. Tuju direktori Android-kitchen dengan perintah: $ cd Android-Kitchen/
  25. Jalanin android-kitchennya, klo pake linux cukup ketik dengan perintah $ ./menu
  26. Taruh file boot.img sebelumnya di folder android-kitchen/working-xxx-xx itu
  27. Pilih angka 0 (advanced option)
  28. Lalu pilih angka 20 (untuk unpack/repack boot.img)
  29. Lalu pencet huruf w dan tunggu sampe selesai dan sampai muncul pertanyaan pilihan lagi.
  30. Setelah itu minimaze terminalnya dan lihat di folder Android Kitchen akan ada folder baru dengan nama BOOT-Extracted dengan nautilus/file explorer linux agan.
  31. Lalu copy kan file zImage yg sudah jadi tadi dan replace ke forlder android kitchen Boot-Extracted tadi.
  32. Lalu buka terminallnya dan masih di menu android kitchen, pencet huruf b dan tunggu sampai proses build selesai..
  33. Sekarang ambil file boot.img di folder WORKING tadi dan flash boot.img itu dengan fastboot/Flashtool (ane harap udh paham cara flash kernel dengan ke dua tool ini).
  34. Selesai dan Semoga berhasil.. :D
Cara mengganti nama kernel version:
  1. Ingat kita masih terus memanfaatkan file kernel yg sebelumnya. Folder kernel yg ada di /home/usernamekamu/kernel.
  2. Jadi ketik perintah: $ cd /home/usernamekamu/kernel/kernel/
  3. Sekarang kita ganti nama versi kernelnya dengan mengedit file version.c di init/version.c
  4. Jadi ketik perintah: $ gedit init/version.c
  5. Lalu cari tulisan Const char linux_banner[]= dan ubah menjadi seperti di gambar ini (Lihat nama imron02 dan ubuntu di gambar, jadi ubah itu sesuai nama kamu dan nama Linuxnya, misal saya ubuntu) http://goo.gl/058Gh
  6. Setelah itu save ya dan di quit.
  7. Sekarang compile lagi kernelnya dengan perintah: $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make
Cara Aktifin ext4 file system:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/
  2. Fungsi perintah di atas adalah agan kita melakukan compile kernel tidak memakai user root lagi.
  3. Lalu sekarang ketik: $ gedit .config
  4. Lalu cari kata CONFIG_EXT3_FS_SECURITY is not set dan di bawahnya masukkan perintah:
    CONFIG_EXT4_FS=y
    CONFIG_EXT4_FS_XATTR=y
    CONFIG_EXT4_FS_POSIX_ACL=y
  5. Lalu jangan lupa untuk di save
  6. Lalu sekarang compile lagi kernelnya dengan perintah $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make
Cara Aktifin Swap:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/
  2. Lalu sekarang ketik: $ gedit .config
  3. Lalu cari tulisan CONFIG_LOCALVERSION_AUTO is not set setelah itu di bawahnya edit tulisan swapnya menjadi seperti ini: CONFIG_SWAP=y
  4. Lalu setelah itu compile lagi kernelnya dengan perintah $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make dan setelah itu buat menjadi boot.img seperti perintah yg sudah dijelaskan di atas dan coba flashing kernelnya.
  5. Apabila berhasil masuk HS, sekarang coba buka terminal emulatornya dan ketikkan perintah ini: $ su
  6. Lalu # swapon /dev/block/mmcblk0p3 (dengan catatan sdcard mempunyai partisi swap)
  7. Apabila tidak ada error, maka pengaktifan swap berhasil
Cara aktifkan Droidwall:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/
  2. Lalu sekarang ketik: $ gedit .config
  3. Lalu cari tulisan CONFIG_IP_NF_MATCH_TTL setelah itu di bawahnya tambahkan tulisan seprti gambar ini: http://goo.gl/kRC1c
  4. Lalu cari tulisan # CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set setelah itu di bawahnya tambahkan tulisan CONFIG_NETFILTER_XT_MATCH_OWNER=y
  5. Lalu cari tulisan # Core Netfilter Configuration dan setelah itu di bawahnya tambahkan tulisan seperti gambar ini: http://goo.gl/72kIA
  6. Lalu setelah itu compile lagi kernelnya dengan perintah yg sudah dijelaskan di atas dan coba flashing kernelnya.
  7. Apabila berhasil masuk HS, sekarang di uji coba droidwallnya.
Cara aktfikan Droidvpn dan Cifs:
  1. Caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/
  2. Lalu sekarang ketik: $ gedit .config
  3. Lalu cari tulisan # CONFIG_SMB_FS is not set setelah itu di bawahnya tambahkan tulisan CONFIG_CIFS=y
  4. Lalu cari tulisan # CONFIG_EQUALIZER is not set setelah itu di bawahnya tambahkan tulisan CONFIG_TUN=y lalu save
  5. Lalu setelah itu compile lagi kernelnya dengan perintah yg sudah dijelaskan di atas dan coba flashing kernelnya.
  6. Apabila berhasil masuk HS, silahkan uji coba droidvpnnya dan cifs managernya
Cara memambahkan dan mengaktifkan Governor + io:
  1. Secara default, kernel bawaan sony ini udah di sediain beberapa governor. Contohnya userspace, Conservative. Nah tapi di sini saya akan coba share cara menambahkan governornya..
  2. Pertama download dulu file governor+ionya di http://www.mediafire.com/?aqh4qe38zbvnc1b
  3. Lalu ekstrak file governor+io itu. Contoh file itu ada di folder download.
  4. Lalu coba lihat di folder download. Pasti ada folder block dan driver.
  5. Sekarang buka folder block itu, dan copy paste semua isinya, dan isinya copykan semua ke folder /home/usernamekamu/kernel/kernel/block/
  6. Lalu buka folder driver/cpufreq di folder download, dan copy paste semua isinya ke folder /home/usernamekamu/kernel/kernel/driver/cpufreq/
  7. Lalu caranya seperti biasa menuju direktori kernel yg sebelumnya yaitu: $ cd /home/usernamekamu/kernel/kernel/
  8. Lalu ketik ini: $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make semc_mango_defconfig (untuk xmp) atau $ ARCH=arm CROSS_COMPILE=/opt/arm-2010q1/bin/arm-none-eabi- make semc_smultron_defconfig (untuk xm)
  9. Lalu ketik perintah: $ gedit .config
  10. Lalu cari tulisan # CPU Power Management. Setelah itu dibawahnya ganti dan tambahkan tulisan seperti ini: http://goo.gl/q02lp
  11. Lalu cari tulisan # IO Schedulers. Setelah itu dibawahnya ganti tulisan menjadi seperti ini: http://goo.gl/8NxKt
  12. Kalau sudah selesai, lalu save dan coba kompile kernelnya dan coba buat boot.img lagi.
  13. Nah lalu apabila berhasil di flashing kernelnya, coba buka aplikasi no-frills cpu tadi dan lihat nama-nama governor dan io schedulenya.
Catatan bagi yg mengalami error di net/tcp.o atau net/tcp.c pada saat compile kernel. Replace tcp.c dengan yang ini: http://www.mediafire.com/?cu917e638k1bqa5
Lalu compile lagi kernelnya (lihat dari no 17 di atas)
Dan 1 lagi untuk cpu frequensi + cwm + ramdisk + init.d udh tersedia secara default, dan cwm + init.d udh jadi satu di ramdisk, bisa pakai kernel yg udah saya kasih sebelomnya (lihat postingan paling atas).

Contoh kernel dari ane (untuk XMP):
Kernel support antara lain:
  • Init.d
  • Ext4 file systems
  • Swap
  • Droidwall
  • Cifs And Droidvpn
  • Cpu Frequency sampai 1Ghz7
  • 15 Governors & 5 IO
  • Include CWM
http://www.mediafire.com/download.php?idq0icd0vcitl2p
Fix wifi bagi yg g mau idup. http://www.mediafire.com/download.php?xrpqja887tcz7g5

1 comment: