Sunteți pe pagina 1din 13

Generic Android kernel bring-up

1. Port Linux kernel for the device


2. Patch Android kernel changes to the ported
Linux kernel
3. Generate the filesystem
4. Boot, Test and debug
Linux kernel porting

 Get suitable Linux kernel linux-a.b.c from


www.kernel.org
 Cross-compile the kernel to the device
 Develop drivers needed. Eg: Touchscreen,
Audio
 Test and fix -> loop
 Results in linux-arm-xyz-a.b.c version
Linux kernel configuration to support Android

 CONFIG_AEABI
 CONFIG_ARM_THUMB
 YAFFS_FS
Carrying it on to Android kernel
 Download matching version of Android Kernel

source android-linux-a.b.c from


http://android.git.kernel.org/
 Diff the stock Linux kernel linux-a.b.c with
Android kernel to get Android-specific changes
diff -urN linux-vanilla-x.y.z/ cupcake/kernel/ >
android.patch
 Patch these changes to the customised linux-
arm-xyz-a.b.c source to get Android Kernel for
your device
patch -p0 < android.patch
Configuration in Android Kernel

 CONFIG_ANDROID_POWER
 CONFIG_ANDROID_POWER_STAT
 CONFIG_ANDROID_LOGGER
 CONFIG_ANDROID_BINDER_IPC
 CONFIG_ASHMEM
Android File System

Android file system can be built from these:

 System data image from Android SDK's


system.img
 User data image from Android SDK's

userdata.img
 Android ram disk image from /tools/lib/images of

Android SDK
 Device file system – extract this from running

emulator or as per standard file system


Android File system structure

data userdata.img

dev Device file system

etc
init
Ramdisk.img

proc
sbin
sys
system system.img

tmp
var
Rowboat Android on TI OMAP3530
Rowboat:
Android port for TI devices – specifically
OMAP35x series

Features:
 Stable and well tested Android for OMAP35x

 Hardware features like ARM plus NEON, DSP,

2D/3D Accelerated Graphics supported with TI


drivers
 Active and open development of a quality

Android port
Setup

Hardware:
 Mistral OMAP 3530 EVM

Software:
 Rowboat Android Eclair SDK with DSP support

 TI dvsdk, bios and DSP decoders/tools –

Rowboat will download this for you


 X-loader and uBoot from Mistral
TI-OMAP3530 Processor
• Application Processor
– 600 MHz ARM Cortex™ A8 Core
– ARMv7 Architecture
– 16KB I-Cache; 16KB D-Cache; 256KB L2
– NEON™ SIMD Coprocessor
• DSP Core
– TMS320C64x DSP
– L1 32KB Program Cache + 80KB Data Cache
– L2 64K Program/Data Cache + 32KB SRAM
– Video Hardware Accelerators
• Graphics Core
– PowerVR SGX Graphics Accelerator
– Tile Based Architecture: 10 MPoly/Sec
• On Chip Memory: 64KB SRAM
Simple steps in building Rowboat
Android

 Download Rowboat
 Build kernel and filesystem
 Create file system image
 MMC boot
Android on OMAP 3530 – boot
sequence with MMC SD Card

1)ROM loads x-load (MLO)


2)X-load loads u-boot
3)U-boot reads commands
4)Commands load kernel
5)Kernel reads root file system

S-ar putea să vă placă și