Android/Kernel: Difference between revisions

From OLPC
Jump to navigation Jump to search
(CROSS_COMPILE is set by Makefile, and cannot be overridden by environment variable)
 
Line 16: Line 16:
== Replace kernel in an old build==
== Replace kernel in an old build==


Build kernel following [[Kernel]] and make sure include/linux/autoconf.h and include/config/auto.conf are generated.
Build kernel following instructions in [[Kernel]]. As a result, include/linux/autoconf.h and include/config/auto.conf are generated.
Then start to build wifi and bt driver separately.
Then start to build wifi and bt driver separately.



Latest revision as of 00:26, 10 February 2015

How to build the XO-4 Android kernel.

Ingredients

  • a well connected development system,
  • an XO-4 laptop,
  • a USB ethernet adapter or USB drive,
  • a serial adapter.

Method

  • prepare for kernel building using the instructions in Kernel, and checkout the arm-3.5-android branch for Android 5.0, or the arm-3.5-android-4.3 branch for Android 4.x,
  • use the arch/arm/configs/xo_4_android_defconfig file as .config,
  • install the kernel by copying via HTTP or USB drive:
ok copy http:\\builder\vmlinuz int:\kernel
ok copy u:\vmlinuz int:\kernel

Replace kernel in an old build

Build kernel following instructions in Kernel. As a result, include/linux/autoconf.h and include/config/auto.conf are generated. Then start to build wifi and bt driver separately.

cd /tmp
git clone git://dev.laptop.org/users/ben/android_vendor_marvell_generic -b android-4.3.1-xo4
cd android_vendor_marvell_generic/sd8787
export ARCH=arm
export KDR=/home/xxxxxxx/android/src/olpc_4.3.1/kernel-source
make wlan bt

Change script in mkzd.sh

replace kernel in build;

 sudo cp ../../../../$out_folder/kernel boot/ ===> sudo cp /home/xxxxxxx/android/src/olpc_4.3.1/kernel-source/arch/arm/boot/zImage boot/

replace driver in build;

 mkdir system                                                                                              
 sudo mount $L3 system 
 sudo cp /tmp/android_vendor_marvell_generic/sd8787/wlan_src/mlan.ko /system/lib/modules/mlan.ko
 sudo cp /tmp/android_vendor_marvell_generic/sd8787/wlan_src/sd8xxx.ko /system/lib/modules/sd8787.ko
 sudo cp /tmp/android_vendor_marvell_generic/sd8787/mbtc_src/mbt8xxx.ko /system/lib/modules/mbt8xxx.ko
 sudo cp /home/xxxxxxx/android/src/olpc_4.3.1/kernel-source/drivers/net/wireless/libertas/libertas_sdio.ko /system/lib/modules/libertas_sdio.ko
 sudo cp /home/xxxxxxx/android/src/olpc_4.3.1/kernel-source/drivers/net/wireless/libertas/libertas_sdio.ko /system/lib/modules/libertas.ko
 sudo umount $L3
 sudo rm -rf system

run mkzd.sh

 ./mkzd.sh

See Also