How to test Android on iMX6 Rex

On this page you can find step-by-step instructions about how to test Android on iMX6 Rex. Credit goes to VOIPAC. Thank you.

For more information, follow VOIPAC wiki website at:
http://wiki.voipac.com/xwiki/bin/view/imx6+rex/android442

Android source code for iMX6 Rex can be downloaded from here: http://www.voipac.com/downloads/imx/iMX6_Rex/Module/src/android/kk442/


To prepare an Android SD card, you will need a host machine with Linux. If you don’t have any Linux machine, you can follow these steps to prepare one. Once you have the host machine, login in and follow the steps below.

Create a directory called Android:

cd
mkdir android
cd android

Download all the files you will need:

wget http://www.voipac.com/downloads/imx/iMX6_Rex/Module/bin/android/kk442/u-boot-pro-20141211.bin
wget http://www.voipac.com/downloads/imx/iMX6_Rex/Module/bin/android/kk442/boot-20141211.img
wget http://www.voipac.com/downloads/imx/iMX6_Rex/Module/bin/android/kk442/recovery-20141211.img
wget http://www.voipac.com/downloads/imx/iMX6_Rex/Module/bin/android/kk442/system-20141211.img
wget http://wiki.voipac.com/xwiki/bin/download/rex/android442/fsl%2Dsdcard%2Dpartition.sh
chmod 777 fsl-sdcard-partition.sh

Note: To download the latest VOIPAC Android files, check their website at: http://wiki.voipac.com/xwiki/bin/view/imx6+rex/android442

Rename the files:

mv u-boot-pro-20141211.bin u-boot.bin
mv boot-20141211.img boot.img
mv recovery-20141211.img recovery.img
mv system-20141211.img system.img

Insert an SD card into your host and check how it was recognized:

fedevel@ubuntu:~/android$ dmesg | tail
[2300997.840777] sd 36:0:0:0: [sdb] No Caching mode page found
[2300997.840782] sd 36:0:0:0: [sdb] Assuming drive cache: write through
[2300997.865395]  sdb: sdb1 sdb2 sdb3 < sdb5 sdb6 sdb7 sdb8 > sdb4
[2300997.865913] sdb: p4 size 5567104 extends beyond EOD, truncated
[2300998.787584] EXT4-fs (sdb7): mounted filesystem with ordered data mode. Opts: (null)
[2300999.318201] EXT4-fs (sdb5): mounted filesystem with ordered data mode. Opts: (null)
[2300999.614547] EXT4-fs (sdb6): recovery complete
[2300999.633537] EXT4-fs (sdb6): mounted filesystem with ordered data mode. Opts: (null)
[2301000.040913] EXT4-fs (sdb4): recovery complete
[2301000.043322] EXT4-fs (sdb4): mounted filesystem with ordered data mode. Opts: (null)
fedevel@ubuntu:~/android$  

In our case, the card is under /dev/sdb.

Before you go further, be sure the sd card ( /dev/sdb ) is not mounted otherwise the fsl-sdcard-partition script may fail to create a proper Android SD card.

fedevel@ubuntu:~/android$ mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
vmware-vmblock on /run/vmblock-fuse type fuse.vmware-vmblock (rw,nosuid,nodev,default_permissions,allow_other)
gvfs-fuse-daemon on /home/fedevel/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=fedevel)
/dev/sdb7 on /media/vender type ext4 (rw,nosuid,nodev,uhelper=udisks)
/dev/sdb5 on /media/57f8f4bc-abf4-655f-bf67-946fc0f9f25b type ext4 (rw,nosuid,nodev,uhelper=udisks)
/dev/sdb6 on /media/cache type ext4 (rw,nosuid,nodev,uhelper=udisks)
/dev/sdb4 on /media/data type ext4 (rw,nosuid,nodev,uhelper=udisks)
fedevel@ubuntu:~/android$ sudo umount /media/vender/
fedevel@ubuntu:~/android$ sudo umount /media/57f8f4bc-abf4-655f-bf67-946fc0f9f25b/
fedevel@ubuntu:~/android$ sudo umount /media/cache/
fedevel@ubuntu:~/android$ sudo umount /media/data/
fedevel@ubuntu:~/android$ 

The safest way to continue is to use fdisk and delete all the partitions on your SD card. The next steps will delete all the files from SD card:

fedevel@ubuntu:~/android$ sudo fdisk /dev/sdb

Command (m for help): p

Disk /dev/sdb: 3965 MB, 3965190144 bytes
122 heads, 62 sectors/track, 1023 cylinders, total 7744512 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1           15128       37819       11346   83  Linux
/dev/sdb2           37820       60511       11346   83  Linux
/dev/sdb3           60512     2276763     1108126    5  Extended
/dev/sdb4         2276764     7843867     2783552   83  Linux
/dev/sdb5           60513     1111907      525697+  83  Linux
/dev/sdb6         1111909     2163303      525697+  83  Linux
/dev/sdb7         2163305     2185995       11345+  83  Linux
/dev/sdb8         2185997     2208687       11345+  83  Linux

Command (m for help): d
Partition number (1-8): 8

Command (m for help): d
Partition number (1-7): 7

Command (m for help): d
Partition number (1-6): 6

Command (m for help): d
Partition number (1-5): 5

Command (m for help): d
Partition number (1-5): 4

Command (m for help): d
Partition number (1-5): 3

Command (m for help): d
Partition number (1-4): 2

Command (m for help): d
Selected partition 1

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
fedevel@ubuntu:~/android$

Now you can run the script:

sudo ./fsl-sdcard-partition.sh -f /dev/sdb

After it’s finished, remove the SD card from host and insert it into your iMX6 Rex Development Baseboard. Use the SD slot on the edge of the PCB. Power up the board, cancel booting process in uBoot and run the following command:

mw.l 0x020d8040 0x3040; mw.l 0x020d8044 0x10000000; reset

Cancel uBoot booting (e.g. press enter) and now …..

Booting Android to HDMI

If you would like to boot up to a HDMI Monitor, put these commands into the “second” u-Boot (the uBoot which comes up after the “mw.l 0x020d8040 0×3040; mw.l 0x020d8044 0×10000000; reset” command):

setenv machid 12a9
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
booti mmc1

Note: If you dont have a touchscreen and you need to see the mouse cursor, you may need to unplug and plug your USB mouse and you may need to press “Enter” (or just move a mouse) and cursor will come up on the HDMI monitor.

Booting Android to LVDS

If you would like to boot up to an LVDS Display, put these commands into the “second” u-Boot (the uBoot which comes up after the “mw.l 0x020d8040 0×3040; mw.l 0x020d8044 0×10000000; reset” command):

setenv machid 12a9
setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=ldb,LDB-ETV570,if=RGB666 vmalloc=400M fbmem=28M fbcon=28M androidboot.console=ttymxc0 androidboot.hardware=freescale
booti mmc1

Appendix: Booting iMX6 Rex Android – console log example

Here is an example how the Android booting process looks (notice the two uBoots, one from MAR 11 and second from DEC 06):

U-Boot 2009.08-dirty (Mar 11 2014 - 09:51:26)

CPU: Freescale i.MX6 family TO1.2 at 792 MHz
Thermal sensor with ratio = 186
Temperature:   23 C, calibration data 0x59950469
mx6q pll1: 792MHz
mx6q pll2: 528MHz
mx6q pll3: 480MHz
mx6q pll8: 50MHz
ipg clock     : 66000000Hz
ipg per clock : 66000000Hz
uart clock    : 80000000Hz
cspi clock    : 60000000Hz
ahb clock     : 132000000Hz
axi clock   : 264000000Hz
emi_slow clock: 132000000Hz
ddr clock     : 528000000Hz
usdhc1 clock  : 198000000Hz
usdhc2 clock  : 198000000Hz
usdhc3 clock  : 198000000Hz
usdhc4 clock  : 198000000Hz
nfc clock     : 24000000Hz
Board: i.MX6Q-REX: Variant: 0 Board: 0x63012 [POR ]
Boot Device: SPI NOR
I2C:   ready
DRAM:   2 GB
MMC:   FSL_USDHC: 0,FSL_USDHC: 1
JEDEC ID: 0xbf:0x25:0x4a
Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x27600978
SUCCESS

In:    serial
Out:   serial
Err:   serial
Net:   got MAC address from IIM: 00:0d:15:00:c5:12
FEC0 [PRIME]
Warning: FEC0 MAC addresses don't match:
Address in SROM is         00:0d:15:00:c5:12
Address in environment is  00:01:02:03:04:05

Hit any key to stop autoboot:  0
** Too many args (max. 16) **
mmc1 is current device
Loading file "uImage" from mmc device 1:1 (xxb1)
Failed to mount ext2 filesystem...
** Bad ext2 partition or disk - mmc 1:1 **
Wrong Image Format for bootm command
ERROR: can't get kernel image!
Rex U-Boot > mw.l 0x020d8040 0x3040; mw.l 0x020d8044 0x10000000; reset
resetting ...
Re

U-Boot 2009.08-dirty (Dec 06 2014 - 22:06:06)

CPU: Freescale i.MX6 family TO1.2 at 792 MHz
Thermal sensor with ratio = 186
Temperature:   28 C, calibration data 0x59950469
mx6q pll1: 792MHz
mx6q pll2: 528MHz
mx6q pll3: 480MHz
mx6q pll8: 50MHz
ipg clock     : 66000000Hz
ipg per clock : 66000000Hz
uart clock    : 80000000Hz
cspi clock    : 60000000Hz
ahb clock     : 132000000Hz
axi clock   : 264000000Hz
emi_slow clock: 132000000Hz
ddr clock     : 528000000Hz
usdhc1 clock  : 198000000Hz
usdhc2 clock  : 198000000Hz
usdhc3 clock  : 198000000Hz
usdhc4 clock  : 198000000Hz
nfc clock     : 24000000Hz
Board: i.MX6Q-REX: Variant: 0 Board: 0x63012 [WDOG ]
Boot Device: SPI NOR
I2C:   ready
DRAM:   2 GB
MMC:   FSL_USDHC: 0,FSL_USDHC: 1
JEDEC ID: 0xbf:0x25:0x4a
Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x27600978
SUCCESS

In:    serial
Out:   serial
Err:   serial
Net:   got MAC address from IIM: 00:0d:15:00:c5:12
FEC0 [PRIME]
Warning: FEC0 MAC addresses don't match:
Address in SROM is         00:0d:15:00:c5:12
Address in environment is  00:01:02:03:04:05

Hit any key to stop autoboot:  0
Rex U-Boot > setenv machid 12a9
Rex U-Boot > setenv bootargs console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
Rex U-Boot > booti mmc1
kernel   @ 10808000 (4844836)
ramdisk  @ 11800000 (542697)
kernel cmdline:
        use uboot command line:
        console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
        Using machid 0x12a9

Starting kernel ...

Initializing cgroup subsys cpu
Linux version 3.0.35-06522-g0a3529b-dirty (marek@jessie) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #6 SMP PREEMPT Thu Dec 11 00:12:50 CET 2014
CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d
CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache
Machine: Freescale i.MX 6Quad Rex Board
Ignoring unrecognised tag 0x54410008
Memory policy: ECC disabled, Data cache writealloc
CPU identified as i.MX6Q, silicon rev 1.2
PERCPU: Embedded 7 pages/cpu @c2892000 s6528 r8192 d13952 u32768
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 463616
Kernel command line: console=ttymxc0,115200 init=/init video=mxcfb0:dev=hdmi,1280x720M@60,if=RGB666 video=mxcfb1:off video=mxcfb2:off fbmem=28M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale
PID hash table entries: 2048 (order: 1, 8192 bytes)
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 767MB 820MB 240MB = 1827MB total
Memory: 1841864k/1841864k available, 255288k reserved, 1461248K highmem
Virtual kernel memory layout:
    vector  : 0xffff0000 - 0xffff1000   (   4 kB)
    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)
    DMA     : 0xfbe00000 - 0xffe00000   (  64 MB)
    vmalloc : 0xd9800000 - 0xf2000000   ( 392 MB)
    lowmem  : 0xc0000000 - 0xd9000000   ( 400 MB)
    pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)
    modules : 0xbf000000 - 0xbfe00000   (  14 MB)
      .init : 0xc0008000 - 0xc0048000   ( 256 kB)
      .text : 0xc0048000 - 0xc09125e8   (9002 kB)
      .data : 0xc0914000 - 0xc09afa68   ( 623 kB)
       .bss : 0xc09afa8c - 0xc0b385fc   (1571 kB)
Preemptible hierarchical RCU implementation.
NR_IRQS:624
MXC GPIO hardware
sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms
arm_max_freq=1GHz
MXC_Early serial console at MMIO 0x2020000 (options '115200')
bootconsole [ttymxc0] enabled
Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)
pid_max: default: 32768 minimum: 301
Security Framework initialized
SELinux:  Initializing.
Mount-cache hash table entries: 512
Initializing cgroup subsys debug
Initializing cgroup subsys cpuacct
Initializing cgroup subsys freezer
CPU: Testing write buffer coherency: ok
hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
CPU1: Booted secondary processor
CPU2: Booted secondary processor
CPU3: Booted secondary processor
Brought up 4 CPUs
SMP: Total of 4 processors activated (6324.22 BogoMIPS).
print_constraints: dummy:
NET: Registered protocol family 16
print_constraints: vddpu: 725 <--> 1300 mV at 700 mV fast normal
print_constraints: vddcore: 725 <--> 1300 mV at 1150 mV fast normal
print_constraints: vddsoc: 725 <--> 1300 mV at 1200 mV fast normal
print_constraints: vdd2p5: 2000 <--> 2775 mV at 2400 mV fast normal
print_constraints: vdd1p1: 800 <--> 1400 mV at 1100 mV fast normal
print_constraints: vdd3p0: 2625 <--> 3400 mV at 3000 mV fast normal
ram_console: got buffer at 3ff00000, size 100000
ram_console: uncorrectable error in header
ram_console: no valid data in buffer (sig = 0x29544299)
console [ram-1] enabled
No AHCI save PWR: PDDQ enabled
hw-breakpoint: found 6 breakpoint and 1 watchpoint registers.
hw-breakpoint: 1 breakpoint(s) reserved for watchpoint single-step.
hw-breakpoint: maximum watchpoint size is 4 bytes.
L310 cache controller enabled
l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL 0x32070000, Cache size: 1048576 B
bio: create slab <bio-0> at 0
mxs-dma mxs-dma-apbh: initialized
print_constraints: SGTL5000_VDDA: 3300 mV
print_constraints: SGTL5000_VDDIO: 3300 mV
print_constraints: SGTL5000_VDDD: 1800 mV
print_constraints: SD_VMMC: 3300 mV
vgaarb: loaded
SCSI subsystem initialized
spi_imx imx6q-ecspi.1: probed
spi_imx imx6q-ecspi.2: probed
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Freescale USB OTG Driver loaded, $Revision: 1.55 $
imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMAL mode: 1(0~1), 5B(4,5), 5F(6,7)
MIPI CSI2 driver module loaded
Advanced Linux Sound Architecture Driver Version 1.0.24.
Bluetooth: Core ver 2.16
NET: Registered protocol family 31
Bluetooth: HCI device and connection manager initialized
Bluetooth: HCI socket layer initialized
Bluetooth: L2CAP socket layer initialized
Bluetooth: SCO socket layer initialized
i2c-core: driver [max17135] using legacy suspend method
i2c-core: driver [max17135] using legacy resume method
Switching to clocksource mxc_timer1
NET: Registered protocol family 2
IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
TCP established hash table entries: 65536 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 7, 786432 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
UDP hash table entries: 256 (order: 1, 8192 bytes)
UDP-Lite hash table entries: 256 (order: 1, 8192 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
PCI: CLS 0 bytes, default 32
Unpacking initramfs...
Freeing initrd memory: 528K
PMU: registered new PMU device of type 0
Static Power Management for Freescale i.MX6
wait mode is enabled for i.MX6
cpaddr = d9880000 suspend_iram_base=d9918000
PM driver module loaded
iMX6 PCIe PCIe RC mode imx_pcie_pltfm_probe entering.
PCIE: imx_pcie_pltfm_probe start link up.
link up failed, DB_R0:0x00ea3500, DB_R1:0x08200000!
IMX PCIe port: link down with power supply 1!
IMX usb wakeup probe
the wakeup pdata is 0xd62d21e0
add wake up source irq 75
IMX usb wakeup probe
the wakeup pdata is 0xd66ece60
cpu regulator mode:ldo_enable
i.MXC CPU frequency driver
audit: initializing netlink socket (disabled)
type=2000 audit(1.730:1): initialized
highmem bounce pool size: 64 pages
ashmem: initialized
NTFS driver 2.1.30 [Flags: R/O].
JFFS2 version 2.2. (NAND) © 2001-2006 Red Hat, Inc.
fuse init (API version 7.16)
msgmni has been set to 744
SELinux:  Registering netfilter hooks
NET: Registered protocol family 38
cryptodev: driver loaded.
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
MIPI DSI driver module loaded
mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver hdmi
mxc_hdmi mxc_hdmi: Detected HDMI controller 0x13:0xa:0xa0:0xc1
fbcvt: 1280x720@60: CVT Name - .921M9
imx-ipuv3 imx-ipuv3.0: IPU DMFC DP HIGH RESOLUTION: 1(0,1), 5B(2~5), 5F(6,7)
mxc_sdc_fb mxc_sdc_fb.1: Can't get fb option for mxcfb1!
mxc_sdc_fb mxc_sdc_fb.2: Can't get fb option for mxcfb2!
imx-sdma imx-sdma: loaded firmware 1.1
imx-sdma imx-sdma: initialized
fbcvt: 1280x720@60: CVT Name - .921M9
Serial: IMX driver
imx-uart.0: ttymxc0 at MMIO 0x2020000 (irq = 58) is a IMX
console [ttymxc0] enabled, bootconsole disabled
console [ttymxc0] enabled, bootconsole disabled
imx-uart.1: ttymxc1 at MMIO 0x21e8000 (irq = 59) is a IMX
loop: module loaded
m25p80 spi2.0: found sst25vf032b, expected sst25vf016b
m25p80 spi2.0: sst25vf032b (4096 Kbytes)
Creating 2 MTD partitions on "m25p80":
0x000000000000-0x000000100000 : "bootloader"
0x000000100000-0x000000400000 : "kernel"
GPMI NAND driver registered. (IMX)
vcan: Virtual CAN interface driver
CAN device driver interface
flexcan netdevice driver
FEC Ethernet Driver
fec_enet_mii_bus: probed
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
PPP MPPE Compression module registered
NET: Registered protocol family 24
tun: Universal TUN/TAP device driver, 1.6
tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
fsl-ehci fsl-ehci.0: irq 75, io base 0x02184000
fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
add wake up source irq 72
fsl-ehci fsl-ehci.1: Freescale On-Chip EHCI Host Controller
fsl-ehci fsl-ehci.1: new USB bus registered, assigned bus number 2
fsl-ehci fsl-ehci.1: irq 72, io base 0x02184200
fsl-ehci fsl-ehci.1: USB 2.0 started, EHCI 1.00
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
usbserial: USB Serial Driver core
USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems
USB Serial support registered for Qualcomm USB modem
usbcore: registered new interface driver qcserial
ARC USBOTG Device Controller driver (1 August 2005)
android_usb gadget: Mass Storage Function, version: 2009/09/11
android_usb gadget: Number of LUNs=1
 lun0: LUN: removable file: (no medium)
Gadget Android: controller 'fsl-usb2-udc' not recognized
android_usb gadget: android_usb ready
Suspend udc for OTG auto detect
fsl-usb2-udc: bind to driver android_usb
mousedev: PS/2 mouse device common for all mice
input: gpio-keys as /devices/platform/gpio-keys/input/input0
input: tsc2007 as /devices/virtual/input/input1
i2c-core: driver [isl29023] using legacy suspend method
i2c-core: driver [isl29023] using legacy resume method
using rtc device, snvs_rtc, for alarms
snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as rtc0
i2c /dev entries driver
Linux video capture interface: v2.00
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video16
mxc_v4l2_output mxc_v4l2_output.0: V4L2 device registered as video17
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v1.1.0)
i2c-core: driver [mag3110] using legacy suspend method
i2c-core: driver [mag3110] using legacy resume method
imx2-wdt imx2-wdt.0: IMX2+ Watchdog Timer enabled. timeout=60s (nowayout=1)
device-mapper: uevent: version 1.0.3
device-mapper: ioctl: 4.20.0-ioctl (2011-02-02) initialised: dm-devel@redhat.com
Bluetooth: Virtual HCI driver ver 1.3
Bluetooth: HCI UART driver ver 2.2
Bluetooth: HCIATH3K protocol initialized
Bluetooth: Generic Bluetooth USB driver ver 0.6
usbcore: registered new interface driver btusb
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
mmc0: SDHCI controller on platform [sdhci-esdhc-imx.2] using DMA
mmc1: SDHCI controller on platform [sdhci-esdhc-imx.1] using DMA
mxc_vdoa mxc_vdoa: i.MX Video Data Order Adapter(VDOA) driver probed
VPU initialized
mxc_asrc registered
Galcore version 4.6.9.9754
Thermal calibration data is 0x59950469
Thermal sensor with ratio = 186
Anatop Thermal registered as thermal_zone0
anatop_thermal_probe: default cooling device is cpufreq!
Registered led device: usr-def-red-led
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
usb 2-1: new low speed USB device number 2 using fsl-ehci
logger: created 256K log 'log_main'
logger: created 256K log 'log_events'
logger: created 256K log 'log_radio'
logger: created 256K log 'log_system'
usbcore: registered new interface driver snd-usb-audio
mxc_hdmi_soc mxc_hdmi_soc.0: MXC HDMI Audio
Cirrus Logic CS42888 ALSA SoC Codec Driver
i2c-core: driver [cs42888] using legacy suspend method
i2c-core: driver [cs42888] using legacy resume method
mmc0: new SDHC card at address e624
mmcblk0: mmc0:e624 SU04G 3.69 GiB
sgtl5000 0-000a: sgtl5000 revision 17
print_constraints: 0-000a: 850 <--> 1600 mV at 1200 mV normal
 mmcblk0: p1 p2 p3 < p5 p6 p7 p8 > p4
mmcblk0: p4 size 5567104 extends beyond EOD, truncated
asoc: sgtl5000 <-> imx-ssi.1 mapping ok
imx_3stack asoc driver
asoc: mxc-hdmi-soc <-> imx-hdmi-soc-dai.0 mapping ok
ALSA device list:
  #0: sgtl5000-audio
  #1: imx-hdmi-soc
oprofile: using arm/armv7-ca9
u32 classifier
    Actions configured
Netfilter messages via NETLINK v0.30.
nf_conntrack version 0.5.0 (16384 buckets, 65536 max)
ctnetlink v0.93: registering with nfnetlink.
NF_TPROXY: Transparent proxy support initialized, version 4.1.0
NF_TPROXY: Copyright (c) 2006-2007 BalaBit IT Ltd.
xt_time: kernel timezone is -0000
ip_tables: (C) 2000-2006 Netfilter Core Team
arp_tables: (C) 2002 David S. Miller
TCP cubic registered
Initializing XFRM netlink socket
NET: Registered protocol family 10
Mobile IPv6
ip6_tables: (C) 2000-2006 Netfilter Core Team
NET: Registered protocol family 17
NET: Registered protocol family 15
can: controller area network core (rev 20090105 abi 8)
NET: Registered protocol family 29
can: raw protocol (rev 20090105)
can: broadcast manager protocol (rev 20090105 t)
Bluetooth: RFCOMM TTY layer initialized
Bluetooth: RFCOMM socket layer initialized
Bluetooth: RFCOMM ver 1.11
Bluetooth: BNEP (Ethernet Emulation) ver 1.3
Bluetooth: BNEP filters: protocol multicast
Bluetooth: HIDP (Human Interface Emulation) ver 1.2
lib80211: common routines for IEEE802.11 drivers
lib80211_crypt: registered algorithm 'NULL'
lib80211_crypt: registered algorithm 'WEP'
lib80211_crypt: registered algorithm 'CCMP'
lib80211_crypt: registered algorithm 'TKIP'
VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
Bus freq driver module loaded
Bus freq driver Enabled
mxc_dvfs_core_probe
DVFS driver module loaded
snvs_rtc snvs_rtc.0: setting system clock to 1970-01-01 00:00:00 UTC (0)
Freeing init memory: 256K
healthd: BatteryPresentPath not found
healthd: BatteryCapacityPath not found
init: using deprecated syntax for specifying property 'ro.serialno', use ${name} instead
init: property 'ro.serialno' doesn't exist while expanding '$ro.serialno'
init: cannot expand '$ro.serialno' while writing to '/sys/class/android_usb/android0/iSerial'
init: using deprecated syntax for specifying property 'ro.product.manufacturer', use ${name} instead
init: using deprecated syntax for specifying property 'ro.product.model', use ${name} instead
healthd: BatteryVoltagePath not found
healthd: BatteryTemperaturePath not found
healthd: BatteryTechnologyPath not found
binder: 2188:2188 transaction failed 29189, size 0-0
init: property 'sys.powerctl' doesn't exist while expanding '${sys.powerctl}'
init: powerctl: cannot expand '${sys.powerctl}'
init: property 'sys.sysctl.extra_free_kbytes' doesn't exist while expanding '${sys.sysctl.extra_free_kbytes}'
init: cannot expand '${sys.sysctl.extra_free_kbytes}' while writing to '/proc/sys/vm/extra_free_kbytes'
android_usb: already disabled
mtp_bind_config
SELinux: initialized (dev fuse, type fuse), uses genfs_contexts
init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery'
root@rex_6dq:/ # SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs
usb 2-1: device descriptor read/64, error -110
warning: `zygote' uses 32-bit capabilities (legacy support in use)
request_suspend_state: wakeup (3->0) at 29873480672 (1970-01-02 00:00:08.341148667 UTC)
cpufreq_interactive_input_connect: connect to tsc2007
eth0: Freescale FEC PHY driver [Micrel KSZ9021 Gigabit PHY] (mii_bus:phy_addr=1:03, irq=-1)
ADDRCONF(NETDEV_UP): eth0: link is not ready
acc_open
acc_release
usb 2-1: device descriptor read/64, error -110
usb 2-1: new low speed USB device number 3 using fsl-ehci
init: sys_prop: permission denied uid:1003  name:service.bootanim.exit
usb 2-1: device descriptor read/64, error -110
usb 2-1: device descriptor read/64, error -110
usb 2-1: new low speed USB device number 4 using fsl-ehci

root@rex_6dq:/ #