One thing I haven't mentioned is that on my Nitrogen6_lite Boundary Devices board, I have actually had it running at 1080p30 and 720p60 using the LTIB image. Here is the link where I got the image from:
http://boundarydevices.com/ltib-on-i-mx6-without-x/
| gplay /nfs/sample720p60_40Mbps.mp4 | | [60fps] |
echo "S:1920x1080p-60" > /sys/class/graphics/fb0/mode
| gplay /nfs/sample1080p30_40Mbps.mp4 | | [30fps] |
There are some strange differences between this image and my own. For LTIB, here is some interesting info:
[kernel boot messages]
Memory: 384MB = 384MB total
Memory: 381008k/381008k available, 143280k reserved, 0K highmem
Linux version 3.0.35-2026-geaaf30e-02079-g2a4aa352 (ericn@ericsam) (gcc version 4.6.2 20110630 (prerelease) (Freescale MAD -- Linaro 2011.07 -- Built at 2011/08/10 09:20) ) #4 SMP PREEMPT Tue Dec 18 08:40:53 MST 2012
CPU identified as i.MX6DL/SOLO, silicon rev 1.1
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
DMA : 0xf4600000 - 0xffe00000 ( 184 MB)
vmalloc : 0xa0800000 - 0xf2000000 (1304 MB)
lowmem : 0x80000000 - 0xa0000000 ( 512 MB)
pkmap : 0x7fe00000 - 0x80000000 ( 2 MB)
modules : 0x7f000000 - 0x7fe00000 ( 14 MB)
.init : 0x80008000 - 0x80038000 ( 192 kB)
.text : 0x80038000 - 0x806d81b0 (6785 kB)
.data : 0x806da000 - 0x8072eb20 ( 339 kB)
.bss : 0x8072eb44 - 0x8077a9a0 ( 304 kB)
root@freescale ~$ cat /proc/cpuinfo
Processor : ARMv7 Processor rev 10 (v7l)
processor : 0
BogoMIPS : 1988.28
Features : swp half thumb fastmult vfp edsp neon vfpv3
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10
Hardware : Freescale i.MX 6Quad Sabre-Lite Board
Revision : 61011
Serial : 0000000000000000
root@freescale ~$ cat /proc/meminfo
MemTotal: 381200 kB
MemFree: 358960 kB
...
VmallocTotal: 1335296 kB
VmallocUsed: 2964 kB
VmallocChunk: 1331744 kB
Our kernel parameters are all the same and I have CONFIG_HIGHMEM enabled in my kernel config. For my own board I have this:
[kernel boot messages]
Memory: 512MB = 512MB total
Memory: 237596k/237596k available, 286692k reserved, 0K highmem
Linux version 3.10.17 (ralphc@waldorf) (gcc version 4.8.1 (Sourcery CodeBench Lite 2013.11-33) ) #4 SMP Fri Nov 7 11:44:20 GMT 2014
CPU identified as i.MX6DL, silicon rev 1.1
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xe0800000 - 0xff000000 ( 488 MB) ***LTIB is 1304MB***
lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.text : 0xc0008000 - 0xc0790f9c (7716 kB)
.init : 0xc0791000 - 0xc18e6200 (17749 kB)
.data : 0xc18e8000 - 0xc1924b60 ( 243 kB)
.bss : 0xc1924b60 - 0xc1983dbc ( 381 kB)
root@freescale ~$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 10 (v7l)
BogoMIPS : 790.52
Features : swp half thumb fastmult vfp edsp neon vfpv3 tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x2
CPU part : 0xc09
CPU revision : 10
Hardware : Freescale i.MX6 Quad/DualLite (Device Tree)
Revision : 61011
Serial : 0000000000000000
# cat /proc/meminfo
MemTotal: 510728 kB
MemFree: 342616 kB
...
VmallocTotal: 499712 kB
VmallocUsed: 7212 kB
VmallocChunk: 316008 kB
I notice that I have no DMA (2MB) or pkmap allocated on mine (184MB) compared to the LTIB board. Also, the LTIB image has more vmalloc memory than there even is on the board!!! (I only have 512MB according to the datasheet). Could the memory allocation setup be the cause of my problems? There is one other difference and that is in the vpu.imx gstreamer component that is used for decoding mp4 is version 3.0.2 for the LTIB board and 3.0.11 for my board.
Ralph