6AL.1.1 Application Notes

Back to 6AL.1.1_Release_Notes

QSPI NOR/eMMC partitions
In this release, the xloader and bootloader goes into QSPI and rest of the images go in to eMMC partitions. The table below summarizes the partition info

Syntax for fastboot flash command is fastboot flash

To update kernel (zImage) alone, flash the zimage partition fastboot flash zimage 

To update ramdisk.img alone, you will have to create boot.img file and flash it. Steps to create boot.img file below cd $YOUR_PATH/emmc_files mkbootimg --kernel  --ramdisk  --ramdisk_offset 0x01f00000 --base 0x80000000 --output boot.img

Note: To update MLO and u-boot.img in SPI, follow commands below. They have to be flashed together.

fastboot oem spi fastboot flash xloader  fastboot flash bootloader 

Re-Building SGX kernel module
Some changes made to kernel defconfig can causes prebuilt SGX kernel modules to not load

Follow the instructions below for rebuilding SGX modules (pvrsrvkm.ko and omaplfb.ko)

cd ${MYDROID}/device/ti/proprietary-open/jacinto6/sgx_src/eurasia_km/eurasiacon/build/linux2/omap_android export KERNELDIR=${YOUR_PATH}/kernel/android-3.14 export CROSS_COMPILE=${MYDROID}/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- export KERNEL_CROSS_COMPILE=${MYDROID}/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- export ARCH=arm make TARGET_PRODUCT="jacinto6evm" PLATFORM_VERSION=4.4 BUILD=release

SGX modules will be present at ${MYDROID}/device/ti/proprietary-open/jacinto6/sgx_src/eurasia_km/eurasiacon/binary2_omap_android_release/target/pvrsrvkm.ko

Push pvrsrvkm.ko file to /system/lib/modules/ location on the target and reboot the board.

Audio
Note: Android media output and input is on the EVM CPU board, while the JAMR3 output is dedicated for radio.

Below is some information about what input/output connectors in VayuEVM can be used for audio and what type of accessories can be connected.

IPC
 Switching images on remote core  You can dynamically switch the remote core image loaded using below steps via sysfs entry cd /sys/bus/platform/drivers/omap-rproc echo 55020000.ipu > unbind echo 55020000.ipu > bind  
 * IPC 3.3x release uses CCS v6 tool chain (Compared to IPC3.2x which uses CCS v5 tool chain)
 * Release Information:
 * http://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ipc
 * Benchmarking
 * http://processors.wiki.ti.com/index.php/IPC_BenchMarking
 * Late Attach and Error Recovery
 * http://processors.wiki.ti.com/index.php/Early_Boot_and_Late_Attach
 * http://processors.wiki.ti.com/index.php?title=IPC_Slave_Error_Recovery
 * 1) Now change the firmware image in /system/vendor/firmware folder

Video Playback (IPU)
List of codecs supported in this release
 * H.264 playback with AAC+ : BP/MP/HP - Up to 1080p 30fps
 * 1080p60 MP4/H264/H263/MP2 Playback
 * H264 Video Encode (F2F)

USB Gadgets

 * In this release of Android Kernel, there are changes that came in via Google tree for enabling ADB and other Ethernet features which prevents other gadgets from working properly.
 * Temporary workaround is to revert those changes. This will enable other gadgets but it will break ADB.
 * Below mentioned patches should be applied to Kernel for testing other gadget drivers.
 * http://review.omapzoom.org/36544
 * http://review.omapzoom.org/36545
 * Disable  config from Kernel defconfig

ADB + Other USB gadgets
Due to the limitations mentioned above ADB and other gadgets cannot co-exist. There are multiple workarounds to make them co-exist

Option 1: ADB over network (preferred)
You can use ADB over Ethernet or Wi-Fi to avoid the above limitation. This way you can have ADB

Option 2: ADB using configFS
This is an experimental approach, where we have ADB working over configFS. With below changes ADB will work over configFS, but the Android frameowork and Settings app will not know about ADB conection. The support for configFS and Android framework is added in Android M.


 * Android patches
 * http://review.omapzoom.org/#/q/branch:d-lollipop-mr1-release+topic:configFS
 * Kernel patches
 * http://review.omapzoom.org/36544
 * http://review.omapzoom.org/36545
 * http://review.omapzoom.org/36784
 * http://review.omapzoom.org/36800

USB Dual Role / DRD
This release supports USB dual role / Dynamic role switch for USB. Note theat the state machine for dual role or DRD starts only after first gadget driver is loaded (insmod).  Software Configuration:   The above mentioned patches in "USB Gadgets" section should be included to test USB dual role</li> Make sure following configs are enabled in Kernel defconfig</li> CONFIG_USB_OTG=y CONFIG_EXTCON_USB_GPIO=y The USB port you want to use for USB dual role should be marked as "otg" in dts file, example for usb1 below</li> &usb1 { dr_mode = "otg"; }; </ul> Testing Procedure: </li> <ol> The dynamic role switching to "host" or "device" mode is based on usb-id pin when the usb cable (type-A for host, type-B for device) is connected to usb1 or usb2 ports</li> The role switching to "device" or "host" can also be done by writing to dwc3 debugfs nodes</li> echo "device" > /sys/kernel/debug/48890000.dwc3/mode or echo "host" > /sys/kernel/debug/48890000.dwc3/mode </ol> </ul>
 * 1) Ex for USB1 port below, use 488d0000.dwc3 directory for USB2 port

HDMI
  HDMI hot plug is not functional </li>  To enable HDMI, use below commands on target and reboot EVM with HDMI connected </li> su setprop persist.hwc.hdmi.force.init 1 To disable HDMI, use below commands on target and reboot </li> su setprop persist.hwc.hdmi.force.init 0 </ul> </ul>

FPDLink
cd ${MYDROID}/kernel/android-3.14 git fetch http://review.omapzoom.org/kernel/omap refs/changes/35/36535/4 && git cherry-pick FETCH_HEAD
 * The default display configuration of this release is primary display being LCD panel and HDMI as secondary display (both J6 and J6 Eco)
 * For enabling FPDLink, apply the patch below and rebuild Kernel

Radio

 * Radio package is available only through CDDS, please contact [mailto:lester@ti.com Lester Longley] for more info.


 * Kernel patches are needed for McASP3 to avoid under flows with radio use case, cherry pick the below patches as workaround this issue for time being. This is a silicon limitation. Better alternative is to switch to EDMA and this is planned for next release.

cd ${MYDROID}/kernel/android-3.14 git fetch http://review.omapzoom.org/kernel/omap refs/changes/59/36259/2 && git cherry-pick FETCH_HEAD git fetch http://review.omapzoom.org/kernel/omap refs/changes/60/36260/2 && git cherry-pick FETCH_HEAD git fetch http://review.omapzoom.org/kernel/omap refs/changes/61/36261/2 && git cherry-pick FETCH_HEAD

WiLink8Q
6AJ.1.2_Application_Notes

SD Card Boot
6AL_SD_card_boot

Single Stage bootloader
6AJ.1.2_Application_Notes

All eMMC option
6AJ.1.2_Application_Notes

USB Peripheral Boot
cd ${YOUR_PATH} git clone git://git.omapzoom.org/repo/omapboot.git cd omapboot git checkout 609ac271d9f89b51c133fd829dc77e8af4e7b67e cd host/tools make cd ${YOUR_PATH}/u-boot export CROSS_COMPILE=${MYDROID}/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin/arm-eabi- export ARCH=arm make dra7xx_evm_android_perboot_config make
 * Build usbboot Linux Host binary
 * Build special SPL for peripheral boot
 * Follow instructions from 6AJ.1.2_Application_Notes for testing USB peripheral boot on J6 EVM

AOSP Delta
To find out the delta/patches that TI added on top of Android AOSP, follow the instructions below cd $MYDROID repo forall -p -c 'git log --oneline omap-mirror/lollipop-mr1-release..omap-mirror/d-lollipop-mr1-release'
 * This release is based on Lollipop MR1 version of AOSP (5.1.1)
 * AOSP Branch: lollipop-mr1-release
 * Corresponding TI Branch: d-lollipop-mr1-release
 * Once you have the 6AL.1.1 repo downloaded on your PC, use the command below to list out all patches added by TI on top of AOSP projects

Resource Allocation
J6_Resource_Allocation