Date post: | 11-Feb-2017 |
Category: |
Technology |
Upload: | nanik-tolaram |
View: | 2,397 times |
Download: | 0 times |
Building AOSP for Nexus 7Building AOSP for Nexus 7
Nanik TolaramNanik Tolaram@nanikjava@nanikjava
Thank You !Thank You !
WARNING !WARNING ! Voiding warrantyVoiding warranty
Bricked deviceBricked device
No support (DIY support)No support (DIY support)
Who Am I ?Who Am I ? Enterprise Java DeveloperEnterprise Java Developer
Android Framework & Kernel tinkererAndroid Framework & Kernel tinkerer
Creating electronics gadgetsCreating electronics gadgets
ozandroid.info & kernel.ozandroid.infoozandroid.info & kernel.ozandroid.info
What you need ?What you need ? Android DeviceAndroid Device
64-bit Linux based distro64-bit Linux based distro
Fast Computer (16/32GB RAM, Multi Fast Computer (16/32GB RAM, Multi Core processor, Fast hard drive)Core processor, Fast hard drive)
Patience !!!Patience !!!
Why Nexus 7 ?Why Nexus 7 ? Source code (kernel) & binaries availableSource code (kernel) & binaries available
Code name – Grouper (WiFi) / Nakashi Code name – Grouper (WiFi) / Nakashi (3G)(3G)
BIG community supportBIG community support
ArchitectureArchitecture
PartitionPartition Recovery – recovery.imgRecovery – recovery.img
““saviour” partitionsaviour” partition Boot – boot.imgBoot – boot.img
Main partition for botting Main partition for botting System – system.imgSystem – system.img
Android framework & apps partitionAndroid framework & apps partition Data – data.imgData – data.img
Application data storage partitionApplication data storage partition
BootingBooting
Bootloader Microcode
Boot Partition
System Partition
Recovery ?
Recovery Partition
N
Y
Building ProcessBuilding Process
1.1. Checkout AOSP Checkout AOSP 2.2. Checkout Linux KernelCheckout Linux Kernel3.3. Download Device DriversDownload Device Drivers4.4. Extract & Device DriversExtract & Device Drivers5.5. Change ConfigurationChange Configuration6.6. BuildBuild
Source CodeSource Code
http://elinux.org/Android_Source_Code_Description
Building – Code & DriversBuilding – Code & Drivers Android Source CodeAndroid Source Code
Checkout Code - source.android.com/source/downloading.htmlCheckout Code - source.android.com/source/downloading.html Branch – masterBranch – master
Nexus 7 DriversNexus 7 Drivers developers.google.com/android/nexus/drivers/#grouperdevelopers.google.com/android/nexus/drivers/#grouper Extract and Copy to <aosp>/vendorExtract and Copy to <aosp>/vendor
Building – ConfigurationBuilding – Configuration Linux Kernel & ConfigurationLinux Kernel & Configuration
Linux Code - android.googlesource.com/kernel/tegra/Linux Code - android.googlesource.com/kernel/tegra/ Linux Config Info - source.android.com/source/building-kernels.htmlLinux Config Info - source.android.com/source/building-kernels.html tegra3_android_defconfig - config for Nexus 7tegra3_android_defconfig - config for Nexus 7
Build ConfigurationBuild Configuration /build/core/tasks/kernel.mk (from Cyanogenmod)/build/core/tasks/kernel.mk (from Cyanogenmod) Linux Directory Configuration Linux Directory Configuration
/device/asus/grouper/BoardConfigCommon.mk /device/asus/grouper/BoardConfigCommon.mk /device/asus/grouper/BoardConfig.mk/device/asus/grouper/BoardConfig.mk
DemoDemo Starting build processStarting build process
/out folder/out folder
Flashing (fastboot)Flashing (fastboot)