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

From DAVE Developer's Wiki
Jump to: navigation, search
m (Configuring the build system)
m (Building Android)
Line 24: Line 24:
  
 
= Building Android =
 
= Building Android =
 +
 +
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.
 +
<pre>
 +
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
 +
</pre>
 +
* '''build''' tutti gli script per il build di android
 +
file modificato '''build/core/root.mk''' aggiungendo riga 13
 +
<pre>
 +
ifeq ($(TARGET_PRODUCT), naon)
 +
export SYSLINK_VARIANT_NAME := TI814X
 +
CLEAN_RULE := syslink_clean sgx_clean kernel_clean clean
 +
rowboat: sgx
 +
else
 +
</pre>
 +
riga 60
 +
<pre>
 +
endif
 +
</pre>
 +
riga 83
 +
<pre>
 +
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
 +
</pre>
 +
riga 114
 +
<pre>
 +
ifeq ($(TARGET_PRODUCT), naon)
 +
sgx: kernel_build ti81xx_kernel_modules
 +
else
 +
</pre>
 +
riga 125
 +
<pre>
 +
endif
 +
</pre>
 +
 +
* '''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 =
 
= Running Android on Naon =

Revision as of 17:13, 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.

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]