Difference between revisions of "Android 4.0.3 ICS on DM814x (Naon)"

From DAVE Developer's Wiki
Jump to: navigation, search
m (Building Android)
m (Configuring the build system)
Line 21: Line 21:
 
Please follow the [http://source.android.com/source/initializing.html instructions to initialize the build environment] and in particular [http://source.android.com/source/downloading.html download] the repo tool and the AOSP source code.
 
Please follow the [http://source.android.com/source/initializing.html instructions to initialize the build environment] and in particular [http://source.android.com/source/downloading.html download] the repo tool and the AOSP source code.
  
Please note that the required manifest file is [http://gitorious.org/rowboat/manifest/blobs/master/rowboat-ics-ti81xx.xml rowboat-ics-ti81xx.xml].
+
Please note that the required manifest file is [http://gitorious.org/rowboat/manifest/blobs/master/rowboat-ics-ti81xx.xml rowboat-ics-ti81xx.xml]. Please enter the following commands to update the source code:
 +
 
 +
<pre>
 +
repo init -u git://gitorious.org/rowboat/manifest.git -m rowboat-ics-ti81xx.xml
 +
repo sync
 +
</pre>
  
 
= Building Android =
 
= Building Android =

Revision as of 17:14, 28 March 2013

Info Box
Android-logo.jpg Applies to Android
Naon am387x-dm814x.png Applies to Naon
Maya 03.png Applies to Maya
Dido-main.png Applies to Dido

Introduction[edit | edit source]

Texas Instruments provides the Android developement kits for the Sitara platform, but an official release for the DM814x/AM387x processor is not yet available. However, it is possible to build Android 4.0.3 Ice Cream Sandwich (ICS) for the DM814x/AM387x processor and make it run on the Naon/Maya/Dido SoMs.

Useful links[edit | edit source]

Configuring the build system[edit | edit source]

Please follow the instructions to initialize the build environment and in particular download the repo tool and the AOSP source code.

Please note that the required manifest file is rowboat-ics-ti81xx.xml. Please enter the following commands to update the source code:

repo init -u git://gitorious.org/rowboat/manifest.git -m rowboat-ics-ti81xx.xml
repo sync

Building Android[edit | edit source]

Assuming that rowboat-android is the directory containing the full AOSP source code:

  • kernel contains the Android kernel tree that must be patched to add Naon support
  • out/target/product/ti814xevm/ will contain the created root file system


  • repoICS-init.sh inizializza la cartella per ICS e sincronizza TUTTI i git collegati
  • avvia.sh esegue il make di tutto ICS


    • Nota: ho modificato Makefile riga 71-73 in modo che usi il file naon_ics_defconfig al posto di quello TI.
ifeq ($(TARGET_PRODUCT), naon)
ifeq ($(KRN_DBG),1)
	$(MAKE) -C kernel ARCH=arm naon_ics_defconfig V=1 CONFIG_DEBUG_DONT_REORDER_CODE=1
else
	$(MAKE) -C kernel ARCH=arm naon_ics_defconfig
endif
endif
  • build tutti gli script per il build di android

file modificato build/core/root.mk aggiungendo riga 13

ifeq ($(TARGET_PRODUCT), naon)
export SYSLINK_VARIANT_NAME := TI814X
CLEAN_RULE := syslink_clean sgx_clean kernel_clean clean
rowboat: sgx
else

riga 60

endif

riga 83

ifeq ($(TARGET_PRODUCT), naon)
ifeq ($(KRN_DBG),1)
	$(MAKE) -C kernel ARCH=arm naon_ics_defconfig V=1 CONFIG_DEBUG_DONT_REORDER_CODE=1
else
        $(MAKE) -C kernel ARCH=arm naon_ics_defconfig
endif
endif

riga 114

ifeq ($(TARGET_PRODUCT), naon)
sgx: kernel_build ti81xx_kernel_modules
else

riga 125

endif
  • avvia_dbg.sh esegue il make con le opzioni di DEBUG per il kernel
  • mkRFS.sh crea il RFS
    • Nota: ho disabilitato la creazione del tar che nn server se si usa NFS. file build/tools/mktarball.sh
  • clean.sh cancella la cartella di build out in modo che il successivo make compili tutto da capo.

Running Android on Naon[edit | edit source]