i.MX Processors Knowledge Base

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX Processors Knowledge Base

Discussions

Sort by:
Hi all, I'm trying to port Android JB to a custom board based on imx6q. I'm not able to get the launcher. And even the display is shifting to right. The kernel i've tested with linux where the display is proper. Below is log. In the log Marked are the issues I'm facing. Any advice is helpful. I'm in very critical stage. Please help me to resolve this. I'm the source from android_jb4.2.2_1.0.0-ga_source bundle package. Uncompressing Linux... done, booting the kernel. Initializing cgroup subsys cpu Linux version 3.0.35-gcbaa4e0-dirty (rangam@PHYTECIndia) (gcc version 4.4.1 (Sourcery G++ Lite 2009q3-67) ) #11 SMP PREEMPT Fri Jul 26 16:57:13 IST 2013 CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine: Phytec Memory policy: ECC disabled, Data cache writealloc CPU identified as i.MX6Q, silicon rev 1.2 PERCPU: Embedded 7 pages/cpu @c13ec000 s6592 r8192 d13888 u32768 Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 215040 Kernel command line: console=ttymxc3,115200 androidboot.hardware=freescale androidboot.console=ttymxc3  init=/init vmalloc=256M video=mxcfb1:dev=ldb,Primeview-PM070WL4,bpp =16 fbmem=10M vt.global_cursor_default=0 consoleblank=0 board_mx6q_phyflex.csi0=none board_mx6q_phyflex.csi1=none video=mxcfb1:off video=mxcfb2:off ip=none root=/dev/mmcbl k0p2 rootfstype=ext4 noinitrd rootwait mtdparts=n25q128:512k(barebox)ro,128k(bareboxenv),2M(splash),-(kernel);gpmi-nand:512k(barebox)ro,128k(bareboxenv),2M(splash),8M(kern el),-(root) PID hash table entries: 4096 (order: 2, 16384 bytes) Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) Memory: 592MB 256MB = 848MB total Memory: 847036k/847036k available, 201540k reserved, 311296K highmem Virtual kernel memory layout:     vector  : 0xffff0000 - 0xffff1000   (   4 kB)     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)     DMA     : 0xfbe00000 - 0xffe00000   (  64 MB)     vmalloc : 0xe2800000 - 0xf2000000   ( 248 MB)     lowmem  : 0xc0000000 - 0xe2000000   ( 544 MB)     pkmap   : 0xbfe00000 - 0xc0000000   (   2 MB)     modules : 0xbf000000 - 0xbfe00000   (  14 MB)       .init : 0xc0008000 - 0xc0047000   ( 252 kB)       .text : 0xc0047000 - 0xc09dbebc   (9812 kB)       .data : 0xc09dc000 - 0xc0a59f18   ( 504 kB)        .bss : 0xc0a59f3c - 0xc0be2d40   (1572 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 0x21f0000 (options '115200') bootconsole [ttymxc3] enabled Console: colour dummy device 80x30 Calibrating delay loop... 789.70 BogoMIPS (lpj=3948544) pid_max: default: 32768 minimum: 301 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 (3158.83 BogoMIPS). devtmpfs: initialized print_constraints: dummy: NET: Registered protocol family 16 print_constraints: vddpu: 725 <--> 1300 mV at 1100 mV fast normal print_constraints: vddcore: 725 <--> 1300 mV at 1100 mV fast normal print_constraints: vddsoc: 725 <--> 1300 mV at 1100 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 imx_add_mxc_pwm:pdata=  (null) imx_add_mxc_pwm:pdata=  (null) imx_add_mxc_pwm:pdata=  (null) imx_add_mxc_pwm:pdata=  (null) 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 0x02070000, Cache size: 1048576 B bio: create slab <bio-0> at 0 mxs-dma mxs-dma-apbh: initialized print_constraints: vmmc: 3300 mV print_constraints: IOVDD: 3300 mV print_constraints: DVDD: 1800 mV print_constraints: AVDD: 3300 mV print_constraints: DRVDD: 3300 mV vgaarb: loaded i2c-core: driver [da9063] using legacy suspend method i2c-core: driver [da9063] using legacy resume method SCSI subsystem initialized 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 $ i2c-gpio i2c-gpio.3: using pins 109 (SDA) and 108 (SCL) print_constraints: VDDCORE: 730 <--> 1280 mV at 1300 mV at 2000 mA normal print_constraints: VDDSOC: 730 <--> 1280 mV at 1300 mV at 500 mA normal print_constraints: VDD_DDR3: 1500 mV at 2000 mA print_constraints: VDD_3V3: 3300 mV at 1500 mA print_constraints: VDD_BUCKMEM: 3300 mV at 1500 mA print_constraints: VDD_ETH: 1200 mV at 3000 mA print_constraints: VDD_ETH_IO: 3300 mV print_constraints: VDD_MX6_SNVS: 3300 mV print_constraints: VDD_3V3_PMIC_IO: 3300 mV print_constraints: VDD_SD0: 3300 mV print_constraints: VDD_SD1: 3300 mV print_constraints: VDD_MX6_HIGH: 3000 mV da9063 0-0058: Device detected DA9063 max7300: probe of 0-0040 failed with error -5 stmpe 1-0041: stmpe811 detected, chip id: 0x811 stmpe 2-0041: failed to read regs 0x0: -5 stmpe: probe of 2-0041 failed with error -5 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) 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 cfg80211: Calling CRDA to update world regulatory domain Switching to clocksource mxc_timer1 NET: Registered protocol family 2 IP route cache hash table entries: 32768 (order: 5, 131072 bytes) TCP established hash table entries: 131072 (order: 8, 1048576 bytes) TCP bind hash table entries: 65536 (order: 7, 786432 bytes) TCP: Hash tables configured (established 131072 bind 65536) TCP reno registered UDP hash table entries: 512 (order: 2, 16384 bytes) UDP-Lite hash table entries: 512 (order: 2, 16384 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. Static Power Management for Freescale i.MX6 wait mode is enabled for i.MX6 cpaddr = e2880000 suspend_iram_base=e291c000 PM driver module loaded link up failed, DB_R0:0x00913b00, DB_R1:0x08200000! IMX PCIe port: link down with power supply 0! IMX usb wakeup probe add wake up source irq 75 IMX usb wakeup probe cpu regulator mode:ldo_bypass _regulator_get: get() with no identifier mx6_cpu_regulator_init: failed to get pu regulator i.MXC CPU frequency driver 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 1046 NET: Registered protocol family 38 cryptodev: driver loaded. io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) mxc_sdc_fb mxc_sdc_fb.0: register mxc display driver ldb _regulator_get: get() with no identifier ldb_clk to di clk: ldb_di0_clk -> ipu1_di0_clk mxc_sdc_fb mxc_sdc_fb.1: mxcfb1 is turned off! imx-sdma imx-sdma: loaded firmware 1.1 imx-sdma imx-sdma: initialized Serial: IMX driver imx-uart.2: ttymxc2 at MMIO 0x21ec000 (irq = 60) is a IMX imx-uart.3: ttymxc3 at MMIO 0x21f0000 (irq = 61) is a IMX console [ttymxc3] enabled, bootconsole disabled console [ttymxc3] enabled, bootconsole disabled loop: module loaded at24 0-0050: 4096 byte 24c32 EEPROM, writable, 8 bytes/write at24 2-0052: 512 byte 24c04 EEPROM, writable, 16 bytes/write No sata disk. m25p80 spi2.0: unrecognized id n25q128 m25p80 spi2.0: unrecognized JEDEC id 20ba18 GPIO NAND driver, �© 2004 Simtec Electronics NAND device: Manufacturer ID: 0xec, Chip ID: 0xd3 (Samsung NAND 1GiB 3,3V 8-bit) 5 cmdlinepart partitions found on MTD device gpmi-nand Creating 5 MTD partitions on "gpmi-nand": 0x000000000000-0x000000080000 : "barebox" 0x000000080000-0x0000000a0000 : "bareboxenv" 0x0000000a0000-0x0000002a0000 : "splash" 0x0000002a0000-0x000000aa0000 : "kernel" 0x000000aa0000-0x000040000000 : "root" GPMI NAND driver registered. (IMX) vcan: Virtual CAN interface driver CAN device driver interface flexcan netdevice driver flexcan imx6q-flexcan.0: device registered (reg_base=e29b0000, irq=142) 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 PPTP driver version 0.8.5 tun: Universal TUN/TAP device driver, 1.6 tun: (C) 1999-2004 Max Krasnyansky <[email protected]> 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 usb usb1: New USB device found, idVendor=1d6b, idProduct=0002 usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 usb usb1: Product: Freescale On-Chip EHCI Host Controller usb usb1: Manufacturer: Linux 3.0.35-gcbaa4e0-dirty ehci_hcd usb usb1: SerialNumber: fsl-ehci.0 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 usb usb2: New USB device found, idVendor=1d6b, idProduct=0002 usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1 usb usb2: Product: Freescale On-Chip EHCI Host Controller usb usb2: Manufacturer: Linux 3.0.35-gcbaa4e0-dirty ehci_hcd usb usb2: SerialNumber: fsl-ehci.1 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. 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: stmpe-ts as /devices/virtual/input/input0 i2c-core: driver [isl29023] using legacy suspend method i2c-core: driver [isl29023] using legacy resume method using rtc device, da9063-rtc, for alarms da9063-rtc da9063-rtc: rtc core: registered da9063-rtc as rtc0 da9063-rtc da9063-rtc: Failed to request ALARM IRQ. rtc-pcf8563 1-0051: chip found, driver version 0.4.3 rtc-pcf8563 1-0051: rtc core: registered rtc-pcf8563 as rtc1 snvs_rtc snvs_rtc.0: rtc core: registered snvs_rtc as rtc2 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) Driver for 1-wire Dallas network protocol. 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) Bluetooth: HCI UART driver ver 2.2 Bluetooth: HCILL protocol initialized sdhci: Secure Digital Host Controller Interface driver sdhci: Copyright(c) Pierre Ossman mmc0: SDHCI controller on platform [sdhci-esdhc-imx.2] using DMA w1_master_driver w1 bus master: Family 43 for 43.000000436e56.c7 is not registered. mmc1: SDHCI controller on platform [sdhci-esdhc-imx.1] using DMA VPU initialized mxc_asrc registered revserved_memory_account:viv_gpu registerd Thermal calibration data is 0x5914c97d Thermal sensor with ratio = 185 w1_master_driver w1 bus master: Family 43 for 43.0000003be6e7.b6 is not registered. Anatop Thermal registered as thermal_zone0 anatop_thermal_probe: default cooling device is cpufreq! HDMI CEC initialized leds-pca953x 1-0062: setting platform data usbcore: registered new interface driver usbhid usbhid: USB HID core driver usb 2-1: new high 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 imx-hdmi-soc-dai imx-hdmi-soc-dai.0: Failed: Load HDMI-video first. tlv320aic3x-codec 1-0018: asoc: failed to add kcontrol Left Line1R Mux tlv320aic3x-codec 1-0018: asoc: failed to add kcontrol Left Line1L Mux asoc: tlv320aic3x-hifi <-> imx-ssi.1 mapping ok Initialize HDMI-audio failed. Load HDMI-video first! ALSA device list:   #0: imx_tlv320aic3007-audio oprofile: using arm/armv7-ca9 GACT probability NOT on Mirror/redirect action on u32 classifier     Actions configured Netfilter messages via NETLINK v0.30. nf_conntrack version 0.5.0 (13234 buckets, 52936 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 IPv4 over IPv4 tunneling driver GRE over IPv4 demultiplexor driver ip_tables: (C) 2000-2006 Netfilter Core Team arp_tables: (C) 2002 David S. Miller TCP cubic registered NET: Registered protocol family 10 Mobile IPv6 ip6_tables: (C) 2000-2006 Netfilter Core Team IPv6 over IPv4 tunneling driver NET: Registered protocol family 17 mmc0: new SD card at address e624 NET: Registered protocol family 15 can: controller area network core (rev 20090105 abi 😎 NET: Registered protocol family 29 mmcblk0: mmc0:e624 SU02G 1.84 GiB mmcblk0: p1 p2 p3 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 L2TP core driver, V2.0 PPPoL2TP kernel driver, V2.0 L2TP IP encapsulation support (L2TPv3) L2TP netlink interface L2TP ethernet pseudowire support (L2TPv3) lib80211: common routines for IEEE802.11 drivers 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 usb 2-1: New USB device found, idVendor=0451, idProduct=8042 usb 2-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 hub 2-1:1.0: USB hub found hub 2-1:1.0: 4 ports detected DVFS driver module loaded regulator_init_complete: VDD_MX6_HIGH: incomplete constraints, leaving on regulator_init_complete: VDD_SD1: incomplete constraints, leaving on regulator_init_complete: VDD_SD0: incomplete constraints, leaving on regulator_init_complete: VDD_3V3_PMIC_IO: incomplete constraints, leaving on regulator_init_complete: VDD_MX6_SNVS: incomplete constraints, leaving on regulator_init_complete: VDD_ETH_IO: incomplete constraints, leaving on regulator_init_complete: VDD_ETH: incomplete constraints, leaving on regulator_init_complete: VDD_3V3: incomplete constraints, leaving on regulator_init_complete: VDD_DDR3: incomplete constraints, leaving on regulator_init_complete: VDDSOC: incomplete constraints, leaving on regulator_init_complete: VDDCORE: incomplete constraints, leaving on regulator_init_complete: DRVDD: incomplete constraints, leaving on regulator_init_complete: AVDD: incomplete constraints, leaving on regulator_init_complete: DVDD: incomplete constraints, leaving on regulator_init_complete: IOVDD: incomplete constraints, leaving on da9063-rtc da9063-rtc: setting system clock to 2000-01-01 00:01:34 UTC (946684894) EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) VFS: Mounted root (ext4 filesystem) on device 179:2. devtmpfs: mounted Freeing init memory: 252K init (1): /proc/1/oom_adj is deprecated, please use /proc/1/oom_score_adj instead. init: cannot open '/initlogo.rle' EXT4-fs (mmcblk0p2): re-mounted. Opts: (null) init: Unable to open persistent property directory /data/property errno: 2 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 init: using deprecated syntax for specifying property 'ro.serialno', use ${name} instead init: cannot find '/system/etc/install-recovery.sh', disabling 'flash_recovery' android_usb: already disabled android_usb: already disabled mtp_bind_config root@android:/ # request_suspend_state: wakeup (3->0) at 8290682004 (2000-01-01 00:01:39.585311336 UTC) init: untracked pid 2494 exited request_suspend_state: wakeup (0->0) at 8890367671 (2000-01-01 00:01:40.184997336 UTC) init: untracked pid 2543 exited root@android:/ # root@android:/ # root@android:/ # root@android:/ # root@android:/ # root@android:/ # lrequest_suspend_state: wakeup (0->0) at 14500371003 (2000-01-01 00:01:45.795000669 UTC) init: untracked pid 2551 exited root@android:/ # logcat                                                       --------- beginning of /dev/log/main I/installd( 2495): installd firing up E/cutils  ( 2495): Failed to read /data/.layout_version: No such file or directory E/installd( 2495): Could not create directories; exiting. --------- beginning of /dev/log/system I/Vold    ( 2489): Vold 2.1 (the revenge) firing up D/Vold    ( 2489): Volume udisk state changing -1 (Initializing) -> 0 (No-Media) D/Vold    ( 2489): Volume extsd state changing -1 (Initializing) -> 0 (No-Media) D/Vold    ( 2489): Volume sdcard state changing -1 (Initializing) -> 0 (No-Media) D/Vold    ( 2489): Volume sdcard state changing 0 (No-Media) -> 2 (Pending) D/Vold    ( 2489): Volume sdcard state changing 2 (Pending) -> 1 (Idle-Unmounted) I/SurfaceFlinger( 2491): SurfaceFlinger is starting I/SurfaceFlinger( 2491): SurfaceFlinger's main thread ready to run. Initializing graphics H/W... D/libEGL  ( 2491): loaded /system/lib/egl/libEGL_VIVANTE.so D/libEGL  ( 2491): loaded /system/lib/egl/libGLESv1_CM_VIVANTE.so D/libEGL  ( 2491): loaded /system/lib/egl/libGLESv2_VIVANTE.so W/imx6.gralloc( 2491): using (fd=15) W/imx6.gralloc( 2491): id           = DISP3 BG W/imx6.gralloc( 2491): xres         = 800 px W/imx6.gralloc( 2491): yres         = 480 px W/imx6.gralloc( 2491): xres_virtual = 800 px W/imx6.gralloc( 2491): yres_virtual = 1536 px W/imx6.gralloc( 2491): bpp          = 16 W/imx6.gralloc( 2491): r            = 11:5 W/imx6.gralloc( 2491): g            =  5:6 W/imx6.gralloc( 2491): b            =  0:5 W/imx6.gralloc( 2491): width        = 127 mm (160.000000 dpi) W/imx6.gralloc( 2491): height       = 76 mm (160.421051 dpi) W/imx6.gralloc( 2491): refresh rate = 35.70 Hz I/FslHwcomposer( 2491): fb0 is ldb I/FslHwcomposer( 2491):  device I/FslHwcomposer( 2491): fb1 is overlay device W/FslHwcomposer( 2491): open /sys/class/graphics/fb2 failed W/FslHwcomposer( 2491): open /sys/class/graphics/fb3 failed W/FslHwcomposer( 2491): open /sys/class/graphics/fb4 failed W/FslHwcomposer( 2491): open /sys/class/graphics/fb5 failed I/FslHwcomposer( 2491): hwcomposer: open framebuffer fb0 I/v_hwc   ( 2491): Detected display /dev/graphics/fb0 I/v_hwc   ( 2491): xres         = 800 px I/v_hwc   ( 2491): yres         = 480 px I/v_hwc   ( 2491): xres_virtual = 800 px I/v_hwc   ( 2491): yres_virtual = 1536 px I/v_hwc   ( 2491): width        = -1 mm (0.0 dpi) I/v_hwc   ( 2491): height       = -1 mm (0.0 dpi) I/v_hwc   ( 2491): refresh rate = 35.0 Hz E/v_hwc   ( 2491): open /dev/graphics/fb0 failed I/v_hwc   ( 2491): Vivante HWComposer v2.4 I/v_hwc   ( 2491): Device:               0x40039008 I/v_hwc   ( 2491): Separated 2D:         YES I/v_hwc   ( 2491): 2D PE20:              YES I/v_hwc   ( 2491): Multi-source blit:    NO I/v_hwc   ( 2491): Multi-source blit Ex: NO I/v_hwc   ( 2491): OPF/YUV blit/Tiling : NO I/v_hwc   ( 2491): Filter stretch      : NO I/FslHwcomposer( 2491): hwc_device_open,367 I/SurfaceFlinger( 2491): Using composer version 1.1 W/SurfaceFlinger( 2491): no suitable EGLConfig found, trying without EGL_FRAMEBUFFER_TARGET_ANDROID E/Trace   ( 2491): error opening trace file: No such file or directory (2) E/SurfaceFlinger( 2491): HWComposer: framebufferTarget is null E/SurfaceFlinger( 2491): HWComposer: framebufferTarget is null E/SurfaceFlinger( 2491): HWComposer: framebufferTarget is null E/SurfaceFlinger( 2491): HWComposer: framebufferTarget is null I/SurfaceFlinger( 2491): EGL informations: I/SurfaceFlinger( 2491): vendor    : Android I/SurfaceFlinger( 2491): version   : 1.4 Android META-EGL I/SurfaceFlinger( 2491): extensions: EGL_KHR_image EGL_KHR_image_base EGL_KHR_image_pixmap EGL_KHR_gl_texture_2D_image EGL_KHR_gl_renderbuffer_image EGL_KHR_fence_sync EGL _ANDROID_image_native_buffer I/SurfaceFlinger( 2491): Client API: OpenGL_ES I/SurfaceFlinger( 2491): EGLSurface: 8-8-8-8, config=0x4b7d5138 I/SurfaceFlinger( 2491): OpenGL ES informations: I/SurfaceFlinger( 2491): vendor    : Vivante Corporation I/SurfaceFlinger( 2491): renderer  : GC2000 Graphics Engine I/SurfaceFlinger( 2491): version   : OpenGL ES-CM 1.1 I/SurfaceFlinger( 2491): extensions: GL_EXT_debug_marker GL_OES_blend_equation_separate GL_OES_blend_func_separate GL_OES_blend_subtract GL_OES_byte_coordinates GL_OES_com pressed_ETC1_RGB8_texture GL_OES_compressed_paletted_texture GL_OES_draw_texture GL_OES_extended_matrix_palette GL_OES_fixed_point GL_OES_framebuffer_object GL_OES_matrix_ get GL_OES_matrix_palette GL_OES_point_size_array GL_OES_point_sprite GL_OES_query_matrix GL_OES_read_format GL_OES_single_precision GL_OES_stencil_wrap GL_OES_texture_cub e_map GL_OES_texture_mirrored_repeat GL_OES_EGL_image GL_OES_depth24 GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_mapbuffer GL_OES_rgb8_rgba8 GL_OES_stencil1 GL_OES_stencil4 GL_OES_stencil8 GL_OES_texture_npot GL_OES_vertex_half_float GL_OES_packed_depth_stencil GL_EXT_texture_format_BGRA8888 GL_IMG_read_format GL_IMG_user_clip _plane GL_APPLE_texture_2D_limited_npot GL_EXT_texture_lod_bias GL_EXT_blend_minmax GL_EXT_read_format_bgra GL_EXT_multi_draw_arrays GL_OES_EGL_sync GL_APPLE_texture_forma t_BGRA8888 GL_APPLE_te I/SurfaceFlinger( 2491): GL_MAX_TEXTURE_SIZE = 8192 I/SurfaceFlinger( 2491): GL_MAX_VIEWPORT_DIMS = 8192 x 8192 D/AndroidRuntime( 2492): D/AndroidRuntime( 2492): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<< D/AndroidRuntime( 2492): CheckJNI is OFF I/AndroidRuntime( 2492): JNI options: '-Xjniopts:warnonly' D/SurfaceFlinger( 2491): Screen acquired, type=0 flinger=0x404f0318 D/libEGL  ( 2531): loaded /system/lib/egl/libEGL_VIVANTE.so D/libEGL  ( 2531): loaded /system/lib/egl/libGLESv1_CM_VIVANTE.so D/libEGL  ( 2531): loaded /system/lib/egl/libGLESv2_VIVANTE.so E/Trace   ( 2531): error opening trace file: No such file or directory (2) E/BufferQueue( 2491): [BootAnimation] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count I/mediaserver( 2494): ServiceManager: 0x40a56ef8 I/AudioFlinger( 2494): Using default 3000 mSec as standby time. I/CameraService( 2494): CameraService started (pid=2494) I/v_hwc   ( 2491): Display(0x4010c008) detected: format=306 800x480 I/v_hwc   ( 2491): Display buffer(0x40050de0) detected: physical=0x2f800000 I/v_hwc   ( 2491): Display buffer(0x40050e08) detected: physical=0x2f8bb800 I/FslCameraHAL( 2494): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2494): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2494): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/v_hwc   ( 2491): Display buffer(0x400d57a8) detected: physical=0x2f977000 I/AudioPolicyManagerBase( 2494): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2494): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2494): out rate 44100 W/audio_hw_primary( 2494): in rate 44100, channels 1 format 0 I/AudioFlinger( 2494): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2494): open output stream devices 2, format 1, channels 3, sample_rate 48000, flag 2 W/audio_hw_primary( 2494): opened out stream...1086925552 I/AudioFlinger( 2494): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2494): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2494): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional D/dalvikvm( 2492): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2492): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2492): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2492): Added shared lib libnativehelper.so 0x0 I/SamplingProfilerIntegration( 2492): Profiling disabled. I/Zygote  ( 2492): Preloading classes... D/dalvikvm( 2492): GC_EXPLICIT freed 36K, 9% free 419K/460K, paused 1ms+0ms, total 3ms W/Environment( 2492): EXTERNAL_STORAGE undefined; falling back to default W/dalvikvm( 2492): Exception Ljava/lang/NullPointerException; thrown while initializing Landroid/os/Debug; D/AndroidRuntime( 2492): Shutting down VM W/dalvikvm( 2492): threadid=1: thread exiting with uncaught exception (group=0x4143c930) I/installd( 2542): installd firing up E/cutils  ( 2542): Failed to read /data/.layout_version: No such file or directory E/installd( 2542): Could not create directories; exiting. I/ServiceManager( 2488): service 'media.camera' died I/ServiceManager( 2488): service 'media.audio_flinger' died I/ServiceManager( 2488): service 'media.player' died D/AndroidRuntime( 2544): D/AndroidRuntime( 2544): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<< D/AndroidRuntime( 2544): CheckJNI is OFF I/AndroidRuntime( 2544): JNI options: '-Xjniopts:warnonly' D/dalvikvm( 2544): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2544): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2544): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2544): Added shared lib libnativehelper.so 0x0 I/mediaserver( 2543): ServiceManager: 0x40a68ef8 I/AudioFlinger( 2543): Using default 3000 mSec as standby time. I/CameraService( 2543): CameraService started (pid=2543) I/FslCameraHAL( 2543): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2543): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2543): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/AudioPolicyManagerBase( 2543): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2543): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2543): out rate 44100 W/audio_hw_primary( 2543): in rate 44100, channels 1 format 0 I/AudioFlinger( 2543): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2543): open output stream devices 2, format 1, channels 3, sample_rate 48000, flag 2 W/audio_hw_primary( 2543): opened out stream...1086774000 I/AudioFlinger( 2543): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2543): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2543): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional I/SamplingProfilerIntegration( 2544): Profiling disabled. I/Zygote  ( 2544): Preloading classes... D/dalvikvm( 2544): GC_EXPLICIT freed 36K, 9% free 419K/460K, paused 1ms+0ms, total 3ms W/Environment( 2544): EXTERNAL_STORAGE undefined; falling back to default W/dalvikvm( 2544): Exception Ljava/lang/NullPointerException; thrown while initializing Landroid/os/Debug; D/AndroidRuntime( 2544): Shutting down VM W/dalvikvm( 2544): threadid=1: thread exiting with uncaught exception (group=0x40b1a930) I/ServiceManager( 2488): service 'media.camera' died I/ServiceManager( 2488): service 'media.audio_flinger' died I/ServiceManager( 2488): service 'media.player' died I/mediaserver( 2551): ServiceManager: 0x41f7b000 I/AudioFlinger( 2551): Using default 3000 mSec as standby time. I/CameraService( 2551): CameraService started (pid=2551) I/FslCameraHAL( 2551): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2551): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2551): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/AudioPolicyManagerBase( 2551): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2551): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2551): out rate 44100 W/audio_hw_primary( 2551): in rate 44100, channels 1 format 0 I/AudioFlinger( 2551): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2551): open output stream devices 2, format 1, channels 3, sample_rate 48000, flag 2 W/audio_hw_primary( 2551): opened out stream...1106785632 I/AudioFlinger( 2551): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2551): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2551): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional I/installd( 2562): installd firing up E/cutils  ( 2562): Failed to read /data/.layout_version: No such file or directory E/installd( 2562): Could not create directories; exiting. D/AndroidRuntime( 2561): D/AndroidRuntime( 2561): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<< D/AndroidRuntime( 2561): CheckJNI is OFF I/AndroidRuntime( 2561): JNI options: '-Xjniopts:warnonly' D/dalvikvm( 2561): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2561): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2561): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2561): Added shared lib libnativehelper.so 0x0 I/SamplingProfilerIntegration( 2561): Profiling disabled. I/Zygote  ( 2561): Preloading classes... D/dalvikvm( 2561): GC_EXPLICIT freed 36K, 9% free 419K/460K, paused 0ms+1ms, total 3ms W/Environment( 2561): EXTERNAL_STORAGE undefined; falling back to default W/dalvikvm( 2561): Exception Ljava/lang/NullPointerException; thrown while initializing Landroid/os/Debug; D/AndroidRuntime( 2561): Shutting down VM W/dalvikvm( 2561): threadid=1: thread exiting with uncaught exception (group=0x4200b930) I/ServiceManager( 2488): service 'media.audio_flinger' died I/ServiceManager( 2488): service 'media.player' died I/ServiceManager( 2488): service 'media.camera' died I/mediaserver( 2566): ServiceManager: 0x417df000 I/AudioFlinger( 2566): Using default 3000 mSec as standby time. I/CameraService( 2566): CameraService started (pid=2566) I/FslCameraHAL( 2566): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2566): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2566): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/AudioPolicyManagerBase( 2566): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2566): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2566): out rate 44100 W/audio_hw_primary( 2566): in rate 44100, channels 1 format 0 I/AudioFlinger( 2566): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2566): open output stream drequest_suspend_state: wakeup (0->0) at 19200353004 (2000-01-01 00:01:50.494982670 UTC) evices 2, format 1, channels 3, sinit: untracked pid 2566 exited ample_rate 48000, flag 2 W/audio_hw_primary( 2566): opened out stream...1098806624 I/AudioFlinger( 2566): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2566): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2566): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional I/v_hwc   ( 2491): vsync thread exit: callback procs not registered. I/installd( 2572): installd firing up E/cutils  ( 2572): Failed to read /data/.layout_version: No such file or directory E/installd( 2572): Could not create directories; exiting. D/AndroidRuntime( 2571): D/AndroidRuntime( 2571): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<< D/AndroidRuntime( 2571): CheckJNI is OFF I/AndroidRuntime( 2571): JNI options: '-Xjniopts:warnonly' D/dalvikvm( 2571): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2571): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2571): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2571): Added shared lib libnativehelper.so 0x0 I/SamplingProfilerIntegration( 2571): Profiling disabled. I/Zygote  ( 2571): Preloading classes... D/dalvikvm( 2571): GC_EXPLICIT freed 36K, 9% free 419K/460K, paused 0ms+0ms, total 2ms W/Environment( 2571): EXTERNAL_STORAGE undefined; falling back to default W/dalvikvm( 2571): Exception Ljava/lang/NullPointerException; thrown while initializing Landroid/os/Debug; D/AndroidRuntime( 2571): Shutting down VM W/dalvikvm( 2571): threadid=1: thread exiting with uncaught exception (group=0x412e5930) I/ServiceManager( 2488): service 'media.audio_flinger' died I/ServiceManager( 2488): service 'media.player' died I/ServiceManager( 2488): service 'media.camera' died I/mediaserver( 2576): ServiceManager: 0x41724000 I/AudioFlinger( 2576): Using default 3000 mSec as standby time. I/CameraService( 2576): CameraService started (pid=2576) I/FslCameraHAL( 2576): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2576): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2576): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/AudioPolicyManagerBase( 2576): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2576): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2576): out rate 44100 W/audio_hw_primary( 2576): in rate 44100, channels 1 format 0 I/AudioFlinger( 2576): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2576): open output stream devices 2, format 1, channels 3, sample_rate 48000, flag 2 W/audio_hw_primary( 2576): opened out stream...1098040672 I/AudioFlinger( 2576): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2576): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2576): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional I/installd( 2581): installd firing up E/cutils  ( 2581): Failed to read /data/.layout_version: No such file or directory E/installd( 2581): Could not create directories; exiting. D/AndroidRuntime( 2580): D/AndroidRuntime( 2580): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<< D/AndroidRuntime( 2580): CheckJNI is OFF I/AndroidRuntime( 2580): JNI options: '-Xjniopts:warnonly' D/dalvikvm( 2580): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2580): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2580): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2580): Added shared lib libnativehelper.so 0x0 I/SamplingProfilerIntegration( 2580): Profiling disabled. I/Zygote  ( 2580): Preloading classes... D/dalvikvm( 2580): GC_EXPLICIT freed 36K, 9% free 419K/460K, paused 0ms+0ms, total 3ms W/Environment( 2580): EXTERNAL_STORAGE undefined; falling back to default W/dalvikvm( 2580): Exception Ljava/lang/NullPointerException; thrown while initializing Landroid/os/Debug; D/AndroidRuntime( 2580): Shutting down VM W/dalvikvm( 2580): threadid=1: thread exiting with uncaught exception (group=0x40e62930) request_suspend_state: wakeup (0->0) at 23810412672 (2000-01-01 00:01:55.105042004 UTC) I/ServiceManager( 2488): service init: untracked pid 2576 exited 'media.audio_flinger' died I/ServiceManager( 2488): service 'media.player' died I/ServiceManager( 2488): service 'media.camera' died I/mediaserver( 2585): ServiceManager: 0x40bcdfb0 I/AudioFlinger( 2585): Using default 3000 mSec as standby time. I/CameraService( 2585): CameraService started (pid=2585) I/FslCameraHAL( 2585): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2585): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2585): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/AudioPolicyManagerBase( 2585): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2585): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2585): out rate 44100 W/audio_hw_primary( 2585): in rate 44100, channels 1 format 0 I/AudioFlinger( 2585): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2585): open output stream devices 2, format 1, channels 3, sample_rate 48000, flag 2 W/audio_hw_primary( 2585): opened out stream...1074431624 I/AudioFlinger( 2585): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2585): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2585): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional I/installd( 2590): installd firing up E/cutils  ( 2590): Failed to read /data/.layout_version: No such file or directory E/installd( 2590): Could not create directories; exiting. D/AndroidRuntime( 2589): D/AndroidRuntime( 2589): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<< D/AndroidRuntime( 2589): CheckJNI is OFF I/AndroidRuntime( 2589): JNI options: '-Xjniopts:warnonly' D/dalvikvm( 2589): Trying to load lib libjavacore.so 0x0 D/dalvikvm( 2589): Added shared lib libjavacore.so 0x0 D/dalvikvm( 2589): Trying to load lib libnativehelper.so 0x0 D/dalvikvm( 2589): Added shared lib libnativehelper.so 0x0 I/SamplingProfilerIntegration( 2589): Profiling disabled. I/Zygote  ( 2589): Preloading classes... D/dalvikvm( 2589): GC_EXPLICIT freed 36K, 9% free 419K/460K, paused 0ms+1ms, total 3ms W/Environment( 2589): EXTERNAL_STORAGE undefined; falling back to default W/dalvikvm( 2589): Exception Ljava/lang/NullPointerException; thrown while initializing Landroid/os/Debug; D/AndroidRuntime( 2589): Shutting down VM W/dalvikvm( 2589): threadid=1: thread exiting with uncaught exception (group=0x40ef1930) request_suspend_state: wakeup (0->0) at 29440367339 (2000-01-01 00:02:00.734997005 UTC) init: untracked pid 2585 exited I/ServiceManager( 2488): service 'media.audio_flinger' died I/ServiceManager( 2488): service 'media.player' died I/ServiceManager( 2488): service 'media.camera' died I/mediaserver( 2594): ServiceManager: 0x40b80fb0 I/AudioFlinger( 2594): Using default 3000 mSec as standby time. I/CameraService( 2594): CameraService started (pid=2594) I/FslCameraHAL( 2594): Face Back Camera is ov5642, orient is 0 I/FslCameraHAL( 2594): Face Front Camera is 0, orient is 0 I/FslCameraHAL( 2594): Camera ID 0: name ov5642, Facing 0, orientation 0, dev path I/AudioPolicyManagerBase( 2594): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf W/audio_hw_primary( 2594): card 0, id imxtlv320aic300 ,driver imx_tlv320aic30, name imx_tlv320aic3007-audio W/audio_hw_primary( 2594): out rate 44100 W/audio_hw_primary( 2594): in rate 44100, channels 1 format 0 I/AudioFlinger( 2594): loadHwModule() Loaded primary audio interface from Freescale i.MX Audio HW HAL (audio) handle 1 W/audio_hw_primary( 2594): open output stream devices 2, format 1, channels 3, sample_rate 48000, flag 2 W/audio_hw_primary( 2594): opened out stream...1074105088 I/AudioFlinger( 2594): HAL output buffer size 192 frames, normal mix buffer size 768 frames I/AudioMixer( 2594): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project E/MonoPipe( 2594): Failed to fetch local time frequency when constructing a MonoPipe (res = -32).  getNextWriteTimestamp calls will be non-functional The above issue is resolved now i'm able to get the home screen, but the display is divided in to 2, the actual left half shifted to right and actual right half shifted to left. and even the display color changed to dark yellow and the image latency is too low. I'll update with the images(screenshots) soon. This document was generated from the following discussion: help in porting Android Jb to imx6q custom board
View full article
When using Gigabit Ethernet on boards i.MX running Windows 10 IoT Core users may experience network unstability and low latency using build W1809_1_1_0_imx-iotcore. This was fixed by increasing the size of Rx/Tx buffer in ethernet driver. Fix will be part of the next release of BSP, to apply fix to current version a patch was created. To apply patch, copy content of zip archive to appropriate location in folder structure and rebuild BSP.
View full article
Hello! Here's some CODE!!! #include <iostream> #include <stdio.h> #include <assert.h> #include <string.h> #include <fcntl.h> #include <malloc.h> #include <math.h> #include <stdlib.h> //#define EGL_USE_GLES2 #include <GLES2/gl2.h> #include <EGL/egl.h> #include <GLES2/gl2ext.h> #include <EGL/eglext.h> #include <termios.h> #include <unistd.h> #include <fcntl.h> #ifdef EGL_USE_X11 #include <X11/X.h> #include <X11/Xlib.h> #endif EGLDisplay egldisplay; EGLConfig eglconfig; EGLSurface eglsurface; EGLContext eglcontext; EGLNativeWindowType eglNativeWindow; EGLNativeDisplayType eglNativeDisplayType; EGLNativeDisplayType fsl_getNativeDisplay() {   EGLNativeDisplayType eglNativeDisplayType = NULL; #if (defined EGL_USE_X11)   eglNativeDisplayType = XOpenDisplay(NULL);   assert(eglNativeDisplayType != NULL); #elif (defined EGL_API_FB)   eglNativeDisplayType = fbGetDisplayByIndex(0); //Pass the argument as required to show the framebuffer #else   display = EGL_DEFAULT_DISPLAY; #endif   return eglNativeDisplayType; } EGLNativeWindowType fsl_createwindow(EGLDisplay egldisplay, EGLNativeDisplayType eglNativeDisplayType) {   EGLNativeWindowType native_window = (EGLNativeWindowType)0; #if (defined EGL_USE_X11)   Window window, rootwindow;   int screen = DefaultScreen(eglNativeDisplayType);   rootwindow = RootWindow(eglNativeDisplayType,screen);   window = XCreateSimpleWindow(eglNativeDisplayType, rootwindow, 0, 0, 400, 533, 0, 0, WhitePixel (eglNativeDisplayType, screen));   XMapWindow(eglNativeDisplayType, window);   native_window = window; #else   const char *vendor = eglQueryString(egldisplay, EGL_VENDOR);   if (strstr(vendor, "Imagination Technologies"))   native_window = (EGLNativeWindowType)0;   else if (strstr(vendor, "AMD"))   native_window = (EGLNativeWindowType)  open("/dev/fb0", O_RDWR);   else if (strstr(vendor, "Vivante")) //NEEDS FIX - functs don't exist on other platforms   { #if (defined EGL_API_FB)   native_window = fbCreateWindow(eglNativeDisplayType, 0, 0, 0, 0); #endif   }   else   {   printf("Unknown vendor [%s]\n", vendor);   return 0;   } #endif   return native_window; } void fsl_destroywindow(EGLNativeWindowType eglNativeWindowType, EGLNativeDisplayType eglNativeDisplayType) {   (void) eglNativeWindowType; #if (defined EGL_USE_X11)   //close x display   XCloseDisplay(eglNativeDisplayType); #endif } void GLInit (void) {   static const EGLint s_configAttribs[] =   {   EGL_RED_SIZE, 5,   EGL_GREEN_SIZE, 6,   EGL_BLUE_SIZE, 5,   EGL_ALPHA_SIZE, 0,   EGL_SAMPLES, 0,   EGL_NONE   };   EGLint numconfigs;   printf("1");   eglNativeDisplayType = fsl_getNativeDisplay();   printf("2");   egldisplay = eglGetDisplay(eglNativeDisplayType);   printf("3");   eglInitialize(egldisplay, NULL, NULL);   printf("4");   assert(eglGetError() == EGL_SUCCESS);   printf("5");   eglBindAPI(EGL_OPENGL_ES_API);   printf("6");   eglChooseConfig(egldisplay, s_configAttribs, &eglconfig, 1, &numconfigs);   assert(eglGetError() == EGL_SUCCESS);   assert(numconfigs == 1);   printf("7");   eglNativeWindow = fsl_createwindow(egldisplay, eglNativeDisplayType);   assert(eglNativeWindow);   printf("8");   eglsurface = eglCreateWindowSurface(egldisplay, eglconfig, eglNativeWindow, NULL);   assert(eglGetError() == EGL_SUCCESS);   printf("9");   EGLint ContextAttribList[] = { EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE };   eglcontext = eglCreateContext( egldisplay, eglconfig, EGL_NO_CONTEXT, ContextAttribList );   assert(eglGetError() == EGL_SUCCESS);   printf("10");   eglMakeCurrent(egldisplay, eglsurface, eglsurface, eglcontext);   assert(eglGetError() == EGL_SUCCESS); } void GLEnd (void) {   printf("Cleaning up...\n");   eglMakeCurrent(egldisplay, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT);   assert(eglGetError() == EGL_SUCCESS);   eglDestroyContext(egldisplay, eglcontext);   eglDestroySurface(egldisplay, eglsurface);   fsl_destroywindow(eglNativeWindow, eglNativeDisplayType);   eglTerminate(egldisplay);   assert(eglGetError() == EGL_SUCCESS);   eglReleaseThread(); } int main (int argc, char **argv) {   GLInit();   for( int i = 0; i < 100000; ++i)   {   glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);     // Clear The Screen And The Depth Buffer   glClearColor (.0f, .0f, 1.0f, 1.0f);   eglSwapBuffers (egldisplay, eglsurface);   }   GLEnd(); } Above code is stitched together from samples from GPU SDK. I've built an image using Yocto (dylan branch) and build the meta-toolchain-qt (and qte). Successfully managed to build above code ONLY FOR X11. Issues i am facing: 1) if build for X11 and run app on the board, window shows, but it stays white, when it should be BLUE...doesn't update no matter what color i glClear to. 2) when compiling with FB, fbCreateWindow and etc don't get recognized, i.e. undefined reference to `fbCreateWindow' .... WHAT header contains these functions???? 3) if even the basic samples don't work, how the hell is anybody supposed to build a GL application on this board?? --- more rhetorical than a real question, just frustrated here... what did i do wrong? 4) please show me a working tutorial or some code on how to get this EGL context initialized...i'm running at wit's end here...
View full article
Tool: VMware Workstation Player Linux Distribution : Ubuntu 16.04 1. Create the VM in VMware Workstation. 2. Select the .iso file to install the Ubuntu 16.04 in the VM. 3. In "Specify Disk Capacity", I recommend the disk size is 200GB. 4. Then click "Finish" to create the VM. 5. If you have local mirror sources, change the source in /etc/apt/source.list. This will speed up a lot when you download the Linux packages and software. 6. Type these two commands to update the Ubuntu system. - sudo apt-get update - sudo apt-get upgrade 7. Install Yocto Project host packages $ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev $ sudo apt-get install libsdl1.2-dev xterm sed cvs subversion coreutils texi2html docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff curl lzop asciidoc u-boot-tools 8.Install the repo a. Create a bin folder in the home directory. $ mkdir ~/bin (this step may not be needed if the bin folder already exists) $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo b. Add the following line to the .bashrc file to ensure that the ~/bin folder is in your PATH variable. export PATH=~/bin:$PATH If you cannot download the repo from google, please try this one: Git Repo | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror  9. Yocto project setup $ mkdir imx-yocto-bsp $ cd imx-yocto-bsp $ repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-sumo -m imx-4.14.98-2.0.0_ga.xml $ repo sync 10. Building an image The syntax for the fsl-setup-release.sh script is shown below. $ DISTRO=<distro name> MACHINE=<machine name> source fsl-setup-release.sh -b <build dir> $ DISTRO=fsl-imx-xwayland MACHINE=imx8qxpmek source fsl-setup-release.sh -b build-xwayland $ bitbake fsl-image-qt5-validation-imx or $ bitbake core-image-full-cmdline (smaller size of rootfs) (for more examples, please refer to the i.MX_Yocto_Project_User's_Guide.pdf) 11. U-boot and Kernel Source code in Yocto u-boot : imx-yocto-bsp/build-xwayland/tmp/work/<board_name>/u-boot-imx kernel : imx-yocto-bsp/build-xwayland/tmp/work/<board_name>/linux-imx 12. Deploy folder of the images imx-yocto-bsp/build-xwayland/tmp/deploy/images/<board_name> Some useful commands for your information: 1. Kernel Menuconfig $ bitbake linux-imx -c menuconfig 2. Rebuild the u-boot and kernel source code $ bitbake u-boot-imx -c compile -f $ bitbake linux-imx -c compile -f 3. Rebuild the whole project to generate the images to deploy folder again for example, if you build the fsl-image-qt5-validation-imx before , then type this: $ bitbake fsl-image-qt5-validation-imx -f Reference: (1) Download the BSP and the Documentation   :  i.MX Software | NXP 
View full article
In the old Android release R10.3.x for i.MX5x, I had followed the user guide instructions to install the USB driver and am able to setup the ADB connection successfully. Unfortunately, for the same PC, the ADB fails to detect my i.MX6SL EVK which is using R13.5. Updating the Android SDK tools cannot help. The reason is the new Android device is using a different USB VID from the old release. So, to solve this problem, we need to update the ADB configuration to scan for the new vendor ID. Below are the steps to update the ADB configuration for Windows PC. These steps (and the steps for Linux PC as well) can also be found in the R10,3.x user guide. 1. Run the SDK's tools to generate an ADB configure file: C:\Program Files\Android\android-sdk\tools> android.bat update adb 2. Modify the adb usb configure file to add the new vendor id 0x18d1. File: X:\Profile\<your account>\.android\adb_usb.ini # ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT. # USE 'android update adb' TO GENERATE. # 1 USB VENDOR ID PER LINE. 0x15a2 0x18d1 3. Unpack the Freescale Android USB win driver "android_usb_fsl.zip" in your Android BSP release package. If you can't find this file in your current package, please get the R10.3.x release for i.MX5x and unpack it. 4. File "tetherxp.inf" in the unpacked "android_usb_fsl" may not be the updated one if the "android_usb_fsl.zip" is extracted from an old release. So, please overwrite the file "tetherxp.inf" in unpacked "android_usb_fsl.zip" by the new "tetherxp.inf" in your current Android BSP release. 5. Enable the "USB debugging" option on the i.MX6 device System settings -> Developer options -> USB debugging 6. Connect the Android Device into PC, uninstall your old driver named "Android Phone" in the device manager, then re-install driver by scanning and locating .inf file under the directory you unpack the android_usb_fsl.zip manually. 7. Restart the ADB server C:\Program Files\Android\android-sdk\platform-tools> adb kill-server C:\Program Files\Android\android-sdk\platform-tools> adb start-server 8. Finally, test your ADB connection C:\Program Files\Android\android-sdk\platform-tools> adb devices List of devices attached 0123456789ABCDEF     device Congratulations! Your ADB is now working. If you have additional information about this topic, please feel free to comment. This document was generated from the following discussion: i.MX6: Android connect to ADB
View full article
On the build folder, type bitbake -g <image> && cat pn-depends.dot | grep -v -e '-native' | grep -v digraph | grep -v -e '-image' | awk '{print $1}' | sort | uniq where <image> is the image name (e.g. core-image-minimal). In case you want to know if a certain <package> is included on an image, just grep the output bitbake -g <image> && cat pn-depends.dot | grep -v -e '-native' | grep -v digraph | grep -v -e '-image' | awk '{print $1}' | sort | uniq | grep <package>
View full article
Some processor’s GPIO settings on the i.MX Pins Tool version 7 may not show allow to select direction and just show an option “Input/Output” as shown. This will be fixed, but the settings can be changed on the local processor data as a workaround. For more information and documentation for the Pins Tool for i.MX please visit its home page on the link below: https://www.nxp.com/design/designs/pins-tool-for-i-mx-application-processors:PINS-TOOL-IMX   First, find where the Pins Tool data package is stored. To do this open the Pins Tool and click Help > About. On the About screen click the Details button. Take also note of the name of the package that needs to be fixed.   Go to the location where the data package is stored and find the processor data. The file that would need to be updated is signal_configuration.xml    Find the GPIO pin data and change the directions from the string ““inOut”to the string “in out”. Then save this file.    Close and reopen the Pins Tool. The direction on the updated package should now show the options Input and Output.  
View full article
Check new updated version for with Morty here Step 1 : Get iMX Yocto AVS setup environment Review the steps under Chapter 3 of the i.MX_Yocto_Project_User'sGuide.pdf on the L4.X LINUX_DOCS to prepare your host machine. Including at least the following essential Yocto packages $ sudo apt-get install gawk wget git-core diffstat unzip texinfo \   gcc-multilib build-essential chrpath socat libsdl1.2-dev u-boot-tools Install the i.MX NXP AVS repo Create/Move to a directory where you want to install the AVS yocto build enviroment. Let's call this as <yocto_dir> $ cd <yocto_dir> $ repo init -u https://source.codeaurora.org/external/imxsupport/meta-avs-demos -b master -m imx7d-pico-avs-sdk_4.1.15-1.0.0.xml Download the AVS BSP build environment: $ repo sync Step 2: Setup yocto for Alexa_SDK image with AVS-SETUP-DEMO script: Run the avs-setup-demo script as follows to setup your environment for the imx7d-pico board: $ MACHINE=imx7d-pico DISTRO=fsl-imx-x11 source avs-setup-demo.sh -b <build_sdk> Where <build_sdk> is the name you will give to your build folder. After acepting the EULA the script will prompt if you want to enable: Sound Card selection The following Sound Cards are supported on the build: SGTL (In-board Audio Codec for PicoPi) 2-Mic Conexant The script will prompt if you are going to use the Conexant Card. If not then SGTL will be assumed as your selection Are you going to use Conexant Sound Card [Y/N]? Install Alexa SDK Next option is to select if you want to pre-install the AVS SDK software on the image. Do you want to build/include the AVS_SDK package on this image(Y/N)? If you select YES, then your image will contain the AVS SDK ready to use (after authentication). Note this AVS_SDK will not have WakeWord detection support, but it can be added on runtime. If your selection was NO, then you can always manually fetch and build the AVS_SDK on runtime. All the packages dependencies will be already there, so only fetching the AVS_SDK source code and building it is required. Finish avs-image configuration At the end you will see a text according with the configuration you select for your image build. Next is an example for a Preinstalled AVS_SDK with Conxant Sound Card support and WiFi/BT not enabled. ==========================================================   AVS configuration is now ready at conf/local.conf             - Sound Card = Conexant                                     - AVS_SDK pre-installed                                       You are ready to bitbake your AVS demo image now:               bitbake avs-image                                        ========================================================== Step 3: Build the AVS image Go to your <build_sdk> directory and start the build of the avs-image There are 2 options Regular Build: $ cd <yocto_dir>/<build_sdk> $ bitbake avs-image With QT5 support included: $ cd <yocto_dir>/<build_sdk> $ bitbake avs-image-qt5 The image with QT5 is useful if you want to add some GUI for example to render DisplayCards. Step 4 : Deploying the built images to SD/MMC card to boot on target board. After a build has succesfully completed, the created image resides at <build_sdk>/tmp/deploy/images/imx7d-pico/ In this directory, you will find the imx7d-pico-avs.sdcard image or imx7d-pico-avs-qt5.sdcard, depending on the build you chose on Step3. To Flash the .sdcard image into the eMMC device of your PicoPi board follow the next steps: Download the bootbomb flasher Follow the instruction on Section 4. Board Reflashing of the Quick Start Guide for AVS kit to setup your board on flashing mode. Copy the built SDCARD file $ sudo dd if=imx7d-pico-avs.sdcard of=/dev/sd bs=1M && sync $ sync Properly eject the pico-imx7d board: $ sudo eject /dev/sd NXP Documentation Refer to the Quick Start Quide for AVS SDK to fully setup your PicoPi board with Synaptics 2Mic and PicoPi i.mx7D For a more comprehensive understanding of Yocto, its features and setup; more image build and deployment options and customization, please take a look at the i.MX_Yocto_Project_User's_Guide.pdf document from the Linux documents bundle mentioned at the beginning of this document. For a more detailed description of the Linux BSP, u-boot use and configuration, please take a look at the i.MX_Linux_User's_Guide.pdf document from the Linux documents bundle mentioned at the beginning of this document.
View full article
The Linux L4.9.11_1.0.0 RFP(GA) for i.MX6 release files are now available on www.nxp.com    Files available: # Name Description 1 L4.9.11_1.0.0-ga_images_MX6QPDLSOLOX.tar.gz i.MX 6QuadPlus, i.MX 6Quad, i.MX 6DualPlus, i.MX 6Dual, i.MX 6DualLite, i.MX 6Solo, i.MX 6Solox Linux Binary Demo Files 2 L4.9.11_1.0.0-ga_images_MX6SLEVK.tar.gz i.MX 6Sololite EVK Linux Binary Demo Files 3 L4.9.11_1.0.0-ga_images_MX6UL7D.tar.gz i.MX 6UltraLite EVK, 7Dual SABRESD, 6ULL EVK Linux Binary Demo Files 4 L4.9.11_1.0.0-ga_images_MX6SLLEVK.tar.gz i.MX 6SLL EVK Linux Binary Demo Files 5 L4.9.11_1.0.0-ga_images_MX7ULPEVK.tar.gz i.MX 7ULP EVK Linux Binary Demo Files  6 L4.9.11_1.0.0-ga_mfg-tools.tar.gz i.MX Manufacturing Toolkit for Linux L4.9.11_1.0.0 BSP 7 L4.9.11_1.0.0-ga_gpu-tools.tar.gz L4.9.11_1.0.0 i.MX VivanteVTK file 8 bcmdhd-1.141.100.6.tar.gz The Broadcom firmware package for i.MX Linux L4.9.11_1.0.0 BSP. 9 imx-aacpcodec-4.2.1.tar.gz Linux AAC Plus Codec for L4.9.11_1.0.0 10 fsl-yocto-L4.9.11_1.0.0.tar.gz L4.9.11_1.0.0 for Linux BSP Documentation. Includes Release Notes, User Guide.   Target boards: i.MX 6QuadPlus SABRE-SD Board and Platform i.MX 6QuadPlus SABRE-AI Board i.MX 6Quad SABRE-SD Board and Platform i.MX 6DualLite SABRE-SD Board i.MX 6Quad SABRE-AI Board i.MX 6DualLite SABRE-AI Board i.MX 6SoloLite EVK Board i.MX 6SoloX SABRE-SD Board i.MX 6SoloX SABRE-AI Board i.MX 7Dual SABRE-SD Board i.MX 6UltraLite EVK Board i.MX 6ULL EVK Board i.MX 6SLL EVK Board i.MX 7ULP EVK Board (Beta Quality)   What’s New/Features: Please consult the Release Notes.   Known issues For known issues and more details please consult the Release Notes.   More information on changes, see: README: https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp/tree/README?h=imx-morty ChangeLog: https://source.codeaurora.org/external/imx/fsl-arm-yocto-bsp/tree/ChangeLog?h=imx-morty
View full article
This documents describes how to add the NFC support to i.MX8M mini evk running Android Pie. Hardware setup: The i.MX8M mini evk (see i.MX 8M Mini Evaluation Kit | NXP) featuring Raspberry Pi compliant connector, the OM5578/RPI PN7150 demo kit can be used to perform this porting (see NFC Development Kits for Arduino and more|NXP). However a small modification must be done because some of the signals required by PN7150 are not mapped to i.MX8M mini expansion connector pins. OM5578 IRQ signal must be mapped to Raspberry Pi connector pin #19 and OM5578 VEN signal must be mapped to Raspberry Pi connector pin #21. See below a picture of the modification: Then, the two boards can fit together as shown in the picture below: Quick start using demo image: The demo image including support for PN7150, is based on Android P9.0.0 Pie (P9.0.0_1.0.0, 4.14 kernel) i.MX software release (see i.MX Software | NXP). Related documentation can be downloaded from here: https://www.nxp.com/docs/en/supporting-information/android_p9.0.0_1.0.0-ga_docs.zip. Just flash the demo image (downloaded from here:https://www.nxp.com/lgfiles/updates/NFC/ANDROID_P9-0-0_PN7150_IMAGE_8MMEVK.zip) following guidelines from i.MX_Android_Quick_Start document (part of Android P9.0.0_1.0.0 Documentation package mentioned above). The NFC support is then included in the device settings, as shown in below screenshot of the device: Approaching the NFC tag, provided as reference in the OM5578 demo kit, to the NFC Antenna will trigger a sound notification: Unfortunately the Android demo image doesn't embed a web browser, so it won't be automatically open when the NFC tag content (an URL to the demo kit web page) is read. Otherwise (if a web browser is installed) you could see such page opening on the device: Adding PN7150 support to imx-android-pie release: If you wish to add PN7150 support to your imx-android-pie environment, just apply the patches (imx-p9.0.0_1.0.0-ga_pn7150_patches.tar.gz file attached) from the ${MY_ANDROID} source code root folder (refer to i.MX_Android_User_Guide document part of Android P9.0.0_1.0.0 Documentation package mentioned above).  $ patch -p1 -d device/fsl/ <device_fsl.patch  $ patch -p1 -d packages/apps/Nfc <packages_apps_Nfc.patch  $ patch -p1 -d hardware/nxp/nfc <hardware_nxp_nfc.patch  $ patch -p1 -d vendor/nxp <vendor_nxp.patch  $ patch -p1 -d vendor/nxp-opensource/kernel_imx/ <vendor_nxp-opensource_kernel_imx.patch When building, the PN7150 support will then be included to the android image, as shown in the demo image described above. Reference: This porting have been done (demo image and patches creation) following guidelines provided in AN11690_NXP-NCI_Android_Porting_Guidelines document.
View full article
This doc show: on i.MX8QXP MEK board, configure ov5640 sensor(parallel interface) output 5MP(2592x1944) RAW(Bayer) data at 15fps, and Parallel Capture Subsystem and Image Sensor Interface capture RAW RGB data, and i.MX8QXP GPU debayer RAW data then display image. HW: i.MX8QXP MEK board, MEK base board (to place the parallel camera), ov5640 sensor. SW: Linux 4.14.98_2.0.0 BSP, and patches in this doc.   Configure at camera sensor side A Bayer filter is a color filter array (CFA) for arranging RGB color filters on a square grid of photosensors. The filter pattern is 50% green, 25% red and 25% blue, hence is also called BGGR, RGBG ,GRGB, or RGGB. The ov5640 has an image array capable of operating at up to 15 fps in 5 megapixel (2592x1944) resolution. OV5640 support output formats: RAW(Bayer), RGB565/555/444,CCIR656, YUV422/420, YCbCr422, and compression. To make ov5640 output 5MP RAW data at 15fps, check my kernel patch imx8-ov5640-raw-capture-driver-4.14.98_2.0.0.diff which apply on i.MX Linux 4.14.98_2.0.0 BSP kernel code. Parallel interface ov5640, use ov5640_raw_setting[] array of drivers/media/platform/imx8/ov5640_v3.c. This register setting is come from ov5640 software application note and data sheet. Configure at i.MX8QXP side The Parallel Capture Subsystem consists of the Parallel Capture Interface (BT 656) and associated peripherals. It interfaces to the Parallel CSI sensor. This allows for up to 24 RGB data bits in parallel or for RGB components on consecutive clocks (up to 10-bit color depth). The formats supported are RGB, RAW and YUV 422. Below is Parallel Capture Subsystem diagram: For RAW format data, CSI_CTRL_REG of Parallel Capture Subsystem need configured as my patch, otherwise found cannot get correct data.   The multiple input sources (MIPI CSI, Parallel Capture) captures the pixel data and feeds it to the ISI. The ISI is responsible for capturing and pre-processing the pixel data from multiple input sources and storing them into the memory. Below is ISI diagram: For RAW format data, it should be bypass any processing pipeline of ISI, just use ISI to save it to memory.   Capture test code To capture the RAW data and save it to file, check my patch imx8_ov5640_raw_captupre_test_4.14.98_2.0.0_ga.diff which apply on i.MX Linux 4.14.98_2.0.0 BSP unit test code. Note the usage is: ./imx8_cap.out -of -cam 1 -fr 15 -fmt BA81 -ow 2592 -oh 1944 -num 100   Display RAW data The RAW data cannot be displayed directly, debayer process is needed to get complete red, green, blue color for each pixel. The debayer process if run on CPU, will cost much CPU time. To save CPU time, debayer could done by GPU. The method is, captured RAW data upload to GPU as texture , then GPU will do the debayer, then full color of each pixel will be got, then display it. To upload RAW camera data to GPU with zero memory copy, i will use i.MX8QXP GPU extension GL_VIV_direct_texture. It create a texture with direct access support. API glTexDirectVIVMap,  which support mapping a user space memory or a physical address into the texture surface. The API glTexDirectVIVMap need logic and physical address of data buffer, so i will allocate data buffer from g2d lib, it is dma-buffer also get logic/physical address of buffer, then queue it as DMABUF to v4l2 capture driver, after dequeue got RAW camera data, pass it to GPU for debayer. GPU side, I will use OpenGL shader code from "Efficient, High-Quality Bayer Demosaic Filtering on GPUs". Check my patch imx8_debayer-gpusdk-5.3.0.diff which apply on i.MX GPU SDK 5.3.0 code. Note, here i only do is debayer, no extra process.   Known issue One thing is ov5640 output 5MP at 15fps, compare with output 5MP at 5fps, there are more noise of camera data at 15fps case. My debug found is, this noise seems come from ov5640 itself.   Reference: a>https://www.nxp.com/webapp/Download?colCode=IMX8DQXPRM b>https://www.nxp.com/webapp/Download?colCode=L4.14.98_2.0.0_MX8QXP&appType=license c>https://github.com/NXPmicro/gtec-demo-framework d>ov5640 data sheet e>ov5640 software application note f>Efficient, High-Quality Bayer Demosaic Filtering on GPUs https://www.semanticscholar.org/paper/Efficient%2C-High-Quality-Bayer-Demosaic-Filtering-on-McGuire/088a2f47b7ab99c78d41623bdfaf4acdb02358fb
View full article
The HSM Coding-Signing is new. When we follow the instructions in Code-Signing Tool User’s Guide , still has something to overcome, most of them are related to the OS. Actually, Code-Signing Tool User’s Guide  can not give detail every “obvious” step. The purpose of this document is to share the experiences on my system. Hope those experience can give you some clues on your system.     25JUL2024 - add pkcs11 proxy                         HSM Code-Signing Journey_25JUL2024.pdf                          HSM Code-Signing Journey_25JUL2024.txt  
View full article
  Some customers want to expose their i3c device on the /dev, In order to develop their i3c APP or operation the i3c device like I2C. But in our default BSP code, we do not support this feature for I3C device, This article will introduce how to make the i3c device expose to the user space. Board : i.MX 93 EVK BSP Version : lf-6.1.55-2.2.0 I3C device : LSM6DSOXTR Step 1 : Rework the i.MX93 EVK Board, Install the R1010.  pengyong_zhang_0-1716793370445.png     Step 2 : Apply the add_i3c_device_to_dev.patch file to the linux kernel code              Command : git apply add_i3c_device_to_dev.patch Step 3 : Re-compile the kernel Image file.              Command : make imx_v8_defconfig                                  make Step 4 : Boot your board with "imx93-11x11-evk-i3c.dtb" file and see if you can see the I3C device on the /dev directory. Result : We can see the i3c device is appeared in /dev directory, The i2c-8 is an i2c device mounted to the i3c bus. The i3c is backward compatible with i2c device. It will simulate the I2C signal loading i2c device.               pengyong_zhang_1-1716793370452.png   PS : You can also use the i2ctool detect i2c-8 device. As shown in the following picture: pengyong_zhang_2-1716793370465.png   Note : If you need the patch file, Please contact me any time for free.
View full article
This article is rather short that only mentions the script that is needed to make an iMX93EVK act as a USB mass storage device so that whenever you connect your iMX device to a windows/linux system via USB, it should get enumerated something like a usb drive.  The storage that is used in this example is mmc so the expectation is that you have inserted a mmc card in the slot. Below is the script:- #!/bin/sh   # This composite gadget include function: # - MASS STORAGE     # # Exit status is 0 for PASS, nonzero for FAIL # STATUS=0   # Check if there is udc available, if not, return fail UDC_DIR=/sys/class/udc if test "$(ls -A "$UDC_DIR")"; then echo "The available udc:" for entry in "$UDC_DIR"/* do echo "$entry" done else STATUS=1 echo "No udc available!" exit $STATUS; fi   id=1; udc_name=ci_hdrc.0 #back_file=/dev/mmcblk1 back_file=/tmp/lun0.img   mkdir /sys/kernel/config/usb_gadget/g$id cd /sys/kernel/config/usb_gadget/g$id   # Use NXP VID, i.MX8QXP PID echo 0x1fc9 > idVendor echo 0x12cf > idProduct   mkdir strings/0x409 echo 123456ABCDEF > strings/0x409/serialnumber echo NXP > strings/0x409/manufacturer echo "NXP iMX USB Composite Gadget" > strings/0x409/product   mkdir configs/c.1 mkdir configs/c.1/strings/0x409   echo 5 > configs/c.1/MaxPower echo 0xc0 > configs/c.1/bmAttributes   mkdir functions/mass_storage.1 echo $back_file > functions/mass_storage.1/lun.0/file ln -s functions/mass_storage.1 configs/c.1/   echo $udc_name > UDC First execute the script. After that insert the g_mass_storage module in the kernel by executing :- modprobe g_mass_storage file=/dev/mmcblk1 removable=1 In the dmesg output, you will see something like below:-   gauravsharma7_0-1714041731840.png After that you can connect a C type USB cable to the USB1 port of imx93evk and the other end to any USB ports of a laptop. The moment it is connected, you would be able to see a USB drive similar to what you get when we connect a pen-drive. 
View full article
Information about the transition from the NXP Demo Experience to GoPoint for i.MX Application Processors.
View full article
i.MX93 DDR stress test tool is different with previous i.MX tool. This Chinese article describe how to debug i.MX93 DDR and introduce DDR config tool usage.
View full article
  Introduction   Prior to 6.1.22_2.0.0 BSP release, Bluetooth interface are based on the tty line discipline framework, so we need to use hciattach tool to enable it in the user space. From 6.1.22_2.0.0 BSP, the nxp bluetooth driver no longer needs the help of the userspace hciattach tool, and the tty port bound by bluetooth also won't be exported to the user space, so you cannot find the corresponding tty device anymore. So, you won't see the (/dev/ttymxcX), for the Bluetooth interface. All jobs has been done in the new NXP Bluetooth driver. New Method   The new NXP Bluetooth UART Driver is based on a server driver for the NXP BT serial protocol, which can enable the built-in Bluetooth device inside an NXP BT chip. This driver has a Power Save feature that will put the chip into a sleep state whenever there is no activity for 2000ms and will be woken up when any activity is to be initiated over UART.  Device Tree support The new BT framework requires adding a "bluetooth" sub node with a device compatibility string to the attached UART node in the dts file &uart1 { bluetooth { compatibility = "nxp,88w8987-bt"; fw-init-baudrate = <3000000>; #Optional. Default is considered 115200 if this parameter not defined. }; };   Note: The parameter ‘compatibility = “nxp,88w8987-bt”’ will use for 88W8987, IW416, 88Q9098, IW612 chipsets and need to change for 88W8997 with parameter ‘compatibility = “nxp,88w8997-bt”’.   Note: ’fw-init-baudrate’ parameter depends on the module vendor. The Murata and Azuere wifi modules support in BSP release uses the default value -- 115200. We strongly recommend looking at the module vendor-specific baud rate parameter. Note: For the old 88Q9098 Murata 1XL module that uses the 3Mbps by default, please add the fw-init-baudrate = <3000000> property in dts files to make it work. Enable Guide   Use wifi interface to load combo (wifi & bt) firmware and enable BT Need to load wifi driver first, then load the BT driver, otherwise, BT driver suspend/resume test will fail. This is a HW limitation, since NXP wifi and BT module use the same power control pin(W_DISABLE1#), if we don't load the wifi driver, SDIO bus will power down the wifi chip during suspend resume, which may cause the BT chip also been powered down and cannot work after resume back. So we need to load the wifi driver to make sure SDIO bus won't power down the BT chip to make sure BT functions can work during suspend resume. modprobe moal mod_para=nxp/wifi_mod_para.conf modprobe btnxpuart or insmod mlan.ko insmod moal.ko mod_para=nxp/wifi_mod_para.conf insmod btnxpuart btnxpuart.png   Unload UART Driver modprobe moal Make sure run hciconfig hci0 up or hciconfig hci0 reset or bluetootctl power on before unload btnxpuart driver. If we don't open hci0 interface, the driver cannot send change to 115200 baud rate command to BT chip, which causes the host and BT chip baud rate mismatch, the host still uses 115200bps talk to the BT chip which now use 3Mbps, it cannot work anymore. So we need to make sure open the hci0 interface before unload btnxpuart driver.   mod_para=nxp/wifi_mod_para.conf modprobe btnxpuart sleep 3 hciconfig hci0 up #Note: Need to up hci interface before unload the BT module hcitool -i hci0 cmd 3F 23 02 00 00 modprobe -r btnxpuart modprobe -r moal sleep 3​ For better reference: Please find the I.MX 8MQ Linux getting started user guide, UM11483, Chapter "7.1 Bring-up using NXP Bluetooth UART driver"  Bluetooth Deep Sleep Feature App Note AN13920, Chapter 6 Load NXP UART driver module NOTE: Please do not run the power save feature for Murata IW612 2EL Module Regards, Mario
View full article
Environment BSP: L6.1.22_2.0.0​ Platform: i.MX93 Links:  https://github.com/NXP/swupdate-scripts https://github.com/nxp-imx-support/meta-swupdate-imx   The AN13872 provides us the swupdate yocto layer, swupdate-scripts and test steps, but there is still much to add. The purpose of this knowledge base is to provide customized advice. 1.How to port meta-swupdate-imx to any yocto version you want? As meta-swupdate-imx only provide kirkstone version, we can upgrade or degrade it based on this version. We will take L6.1.22_2.0.0​ porting steps as an example. 1.1 Download Yocto layer  cd imx-yocto-bsp/sources git clone https://github.com/sbabic/meta-swupdate.git -b mickledore git clone https://github.com/nxp-imx-support/meta-swupdate-imx.git 1.2 Modify  Yocto layer  imx-yocto-bsp/sources/meta-swupdate-imx/conf/layer.conf Zhiming_Liu_0-1691565490091.png   You can find swupdate version in imx-yocto-bsp/sources/meta-swupdate/recipes-support/swupdate/ Zhiming_Liu_1-1691565520029.png 1.3 Handle patches in meta-swupdate-imx/recipes-bsp/u-boot/files/ About patchs in sources/meta-swupdate-imx/recipes-bsp/u-boot/files/ and imx-yocto-bsp/sources/meta-swupdate-imx/recipes-support/swupdate/files/, you need use devtool to unpack uboot and swupdate into workspace and add changes manunally for development. CONFIG_ENV_OFFSET_REDUND=CONFIG_ENV_OFFSET+CONFIG_ENV_SIZE Zhiming_Liu_2-1691565664319.png   sources/meta-swupdate-imx/recipes-bsp/u-boot/u-boot-imx_%.bbappend Zhiming_Liu_3-1691565694894.png 2.How to flash base image? Use uuu or dd command, just like common imx-image-xxx 3.swupdate-scripts porting suggestions 3.1 Partition table You can modify partition table refer the size of images. For different soc, the first offset is different. If you are porting i.MX8MP based on iMX8MM, the offset should be 32K. Zhiming_Liu_4-1691565894626.png   3.2 Some errors 3.2.1 This error indicates that you need enlarge size of rootfs. e2fsck 1.45.5 (07-Jan-2020) The filesystem size (according to the superblock) is 887599 blocks The physical size of the device is 768000 blocks Either the superblock or the partition table is likely to be corrupt! Abort<y>?    3.2.2 You need upgrade e2fsck verison. e2fsck 1.46.5 (30-Dec-2021) /home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_assembling/slota/core-image-base-imx93-11x11-lpddr4x- evk.ext4 has unsupported feature(s): FEATURE_C12 e2fsck: Get a newer version of e2fsck! /home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_assembling/slota/core-image-base-imx93-11x11-lpddr4x- evk.ext4: ********** WARNING: Filesystem still has errors ********** resize2fs 1.46.5 (30-Dec-2021) resize2fs: Filesystem has unsupported feature(s) (/home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_ass  solution: wget https://mirrors.edge.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/v1.47.0/e2fsprogs-1.47.0.tar.xz tar -xf e2fsprogs-1.47.0.tar.xz cd e2fsprogs-1.47.0/ ./configure make -j16 sudo make install   3.2.3 mtools /home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_assembling/../utils/utils.sh: line 58: mdir: command not found /home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_assembling/../utils/utils.sh: line 66: mcopy: command not found /home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_assembling/../utils/utils.sh: line 66: mcopy: command not found /home/nxf65025/imx-yocto-bsp/swupdate-scripts/base_image_assembling/../utils/utils.sh: line 68: mdir: command not found solution: sudo apt-get install mtools
View full article
i.MX8 VPU hardware decoder support below video codec: H.265 HEVC Main Profile 4Kp60 Level 5.1 H.264 AVC Constrained Baseline, Main and High profile H.264 MVC WMV9 / VC-1 Simple, Main and Advanced Profile MPEG 1 and 2 Main Profile at High Level AVS Jizhun Profile (JP) MJPEG4.2 ASP, H.263, Sorenson Spark Divx 3.11, with Global Motion Compensation (GMC) ON2/Google VP6/VP8 RealVideo 8/9/10 JPEG and MJPEG A/B Baseline   i.MX8 VPU Linux driver is implemented based on V4L2 standard. Chromium beside software video decoding, it also support hardware video decoder(VideoDecodeAccelerator),  there are some kind of VideoDecodeAccelerator, one of them is V4L2VDA. Please note V4L2VDA is using V4l2 api, so it is possible that change V4L2VDA to enable Chromium hardware video playback on i.MX8.   This doc share patch to add chromium video decode accelerate by using i.MX8QM/i.MX8QXP VPU. It will support chromium H.264, H.265, VP8 hardware video decode. H.264 and H.265 need use mp4 container. VP8 use webm container.   HW: i.MX8QM/i.MX8QXP MEK board, 1080P HDMI display, mouse, keyboard SW: i.MX8 5.10.72_2.2.2 yocto bsp release(which included chromium 91.0), and patch in this doc   Patch description: imx8-5.10.72-vpudrv-update.diff, update i.MX8  5.10.72_2.2.2 kernel vpu driver to https://source.codeaurora.org/external/imx/linux-imx/commit/drivers/mxc/vpu_malone?h=lf-5.15.y&id=fa7c67e2c9ed4fb8392fa258f931d6996339a17a chromium-ozone-wayland_91.0.4472.114.bb.diff, change meta-browser/meta-chromium/recipes-browser/chromium/chromium-ozone-wayland_91.0.4472.114.bb for adding some compile flags, etc. 5.10.72-merge.patch, this patch change chromium source code to add video decode accelerate by using i.MX8 VPU.   Build steps: 1>Download i.MX8 5.10.72_2.2.2 yocto release from nxp.com 2>apply chromium-ozone-wayland_91.0.4472.114.bb.diff to change meta-browser/meta-chromium/recipes-browser/chromium/chromium-ozone-wayland_91.0.4472.114.bb 3>put 5.10.72-merge.patch to folder path_of_yocto-5.10.72-2.2.2/sources/meta-browser/meta-chromium/recipes-browser/chromium/files/ 3>apply imx8-5.10.72-vpudrv-update.diff to i.MX8 5.10.72_2.2.2 kernel 4>under the yocto image build folder, add "CORE_IMAGE_EXTRA_INSTALL += "chromium-ozone-wayland" to file path_of_yocto-5.10.72-2.2.2/folder-of-bld/conf/local.conf 5>run bitbake to build rootfs image   Test steps: After system boot up, put some video clip under /home/root/video then run below cmd (do not run chromium without any parameter, as that will start chromium with some other setting, you can check /usr/lib/chromium/chromium-wrapper) "/usr/lib/chromium/chromium-bin   --no-sandbox --ozone-platform=wayland --enable-features=VaapiVideoDecoder  --enable-accelerated-video-decode   --enable-clear-hevc-for-testing --ignore-gpu-blacklist --window-size=1920,1180  /home/root/video" then use mouse to click video clip and will start playback.   Reference: https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-processors:IMX8-SERIES https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applications-processors:IMXLINUX https://www.chromium.org/audio-video/#:~:text=codec%20and%20container%20support https://github.com/igel-oss/meta-browser-hwdecode/blob/master/recipes-chromium/chromium/files/0001-Add-support-for-V4L2VDA-on-Linux.patch      
View full article
This is a detailed programming aid for the registers associated with i.MX 8MNano (m815S) DDR initialization.  For more details, refer to the main mScale DDR tools page: https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8M-Family-DDR-Tool-Release/ta-p/1104467 Please note that this page is only intended to store the RPA spreadsheets. For questions, please create a new community thread.
View full article