NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
DRA7xx GLSDK 7.01.00.03 Data Sheet
Contents
- 1 Read This First
- 2 U-Boot Overview
- 3 Linux Kernel
- 4 Linux Kernel Drivers
- 4.1 Device Driver List
- 4.2 ALSA SoC Audio Driver
- 4.3 Ethernet Driver
- 4.4 OMAPDRM/OMAPDSS (Display Subsystem Driver)
- 4.5 QSPI Driver
- 4.6 MMC/SD Driver
- 4.7 UART Driver
- 4.8 I2C Driver
- 4.9 VIP Driver
- 4.10 VPE Driver
- 4.11 USB Driver
- 4.12 SATA Driver
- 4.13 Power Management
- 5 Filesystem
- 6 Multimedia
- 7 Graphics
Read This First [edit]
All performance numbers provided in this document are gathered using DRA75x Evaluation Module with A15 running at 1500Mhz and DDR3 configured at 532MHz and DRA72x Evaluation module with A15 running at 1000Mhz and DDR3 configured at 666Mhz
About This Manual [edit]
This document provides a feature overview and performance data for each of the device drivers which are part of the GLSDK 7.01.00.03 Release package. This document should be used in conjunction with the release notes provided with the GLSDK package for information on specific issues present with drivers included in a particular release.
U-Boot Overview [edit]
Boot Modes Supported [edit]
Green colored box in the table below means that the particular boot mode is supported on the device in the release.
Boot Mode | DRA7xx Evaluation Module (EVM) |
---|---|
QSPI Flash | Yes |
MMC/SD | Yes |
eMMC Boot | Yes |
UART Boot | No |
NOR Flash | No |
EMAC Boot | No |
USB Boot | No |
Note: These are supported boot modes in GLSDK software, the actual hardware may support many more boot modes than shown here. Please refer to hardware documentation for list of all supported boot modes.
U-Boot Features Supported [edit]
U-Boot is the defacto bootloader for Linux kernel on ARM. The following features of U-Boot are supported in this release.
Feature | DRA7xx (Evaluation Module) |
---|---|
UART | Yes |
Ethernet Download (TFTP) | Yes |
MMC/SD | Yes |
QSPI Flash | Yes |
eMMC | Yes |
Memory Section Details[edit]
Memory Section | Size( in bytes) |
---|---|
.text | 50292 |
.rodata | 21183 |
.data | 2144 |
.bss | 196924 |
- MMC/SD bootmode u-boot 1st Stage (MLO) size: 74364 bytes
Memory Section | Size( in bytes) |
---|---|
.text | 249956 |
.rodata | 23130 |
.data | 9518 |
.bss | 8709408 |
- MMC/SD bootmode u-boot 2nd Stage (u-boot.img) size: 365664 bytes
Linux Kernel [edit]
Kernel Virtual Memory Layout (DRA75x) [edit]
The default DRA7xx kernel configuration, uses following Virtual Memory laout:
[ 0.000000] Memory: 1354144K/1566720K available (6583K kernel code, 686K rwdata, 2404K rodata, 372K init, 266K bss, 212576K reserved, 792576K highmem) [ 0.000000] Virtual kernel memory layout: [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB) [ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) [ 0.000000] vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) [ 0.000000] lowmem : 0xc0000000 - 0xef800000 ( 760 MB) [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB) [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB) [ 0.000000] .text : 0xc0008000 - 0xc08cf0cc (8989 kB) [ 0.000000] .init : 0xc08d0000 - 0xc092d1c0 ( 373 kB) [ 0.000000] .data : 0xc092e000 - 0xc09d9860 ( 687 kB) [ 0.000000] .bss : 0xc09d986c - 0xc0a1c314 ( 267 kB)
Kernel Virtual Memory Layout (DRA72x) [edit]
The default DRA7xx kernel configuration, uses following Virtual Memory laout:
[ 0.000000] Memory: 841488K/1041408K available (6495K kernel code, 410K rwdata, 2500K rodata, 312K init, 268K bss, 199920K reserved, 267264K highmem) [ 0.000000] Virtual kernel memory layout: [ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB) [ 0.000000] fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) [ 0.000000] vmalloc : 0xf0000000 - 0xff000000 ( 240 MB) [ 0.000000] lowmem : 0xc0000000 - 0xef800000 ( 760 MB) [ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB) [ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB) [ 0.000000] .text : 0xc0008000 - 0xc08d10c4 (8997 kB) [ 0.000000] .init : 0xc08d2000 - 0xc09201c0 ( 313 kB) [ 0.000000] .data : 0xc0922000 - 0xc0988820 ( 411 kB) [ 0.000000] .bss : 0xc098882c - 0xc09cb8bc ( 269 kB)
Boot-time Measurement [edit]
Boot-time measurement was done using Grabserial tool(http://elinux.org/Grabserial). U-Boot environment variable bootargs is set to 'elevator=noop console=ttyO0,115200n8 root=/dev/mmcblk1p2 rw rootwait fixrtc omapdrm.num_crtc=2 consoleblank=0 cma=64M rootfstype=ext4'
. In general kernel boot-up time alone is ~15 secs. The following table summarizes the boot-up cycle of different stages in QSPI boot mode.
Module | Stages | Time (sec) |
---|---|---|
UBoot | 0.394 | |
Kernel init | 4.33 | |
Kernel init fs | 10.5 | |
Total Boot-time | 15.2 |
We have not benchmarked the boot times on DRA72x for this release of GLSDK.
Module | Stages | Time (sec) |
---|---|---|
UBoot | ||
Kernel init | ||
Kernel init fs | ||
Total Boot-time |
Carveout size and location [edit]
Below table lists the size and memory of areas that are set aside from the Linux memory map for use by remotecores. This information is taken from $GLSDK/board-support/linux/arch/arm/boot/dts/dra7-evm.dts
.
Remotecore | Start Address | Carveout size(MB) |
---|---|---|
IPU2 | 0x95800000 | 56 |
DSP1 | 0x99000000 | 64 |
IPU1 | 0x9d000000 | 32 |
DSP2 | 0x9f000000 | 8 |
There is also an additional carveout set aside for use by the CMEM allocator. This memory region can be used to transfer data between remotecores and MPU without doing a data copy. This information is taken from $GLSDK/board-support/linux/arch/arm/boot/dts/dra7xx-jamr3.dtsi
.
Purpose | Start Address | Carveout size(MB) |
---|---|---|
CMEM | 0x95400000 | 4 |
Linux Kernel Drivers [edit]
This section provides brief overview of the device drivers supported in the Linux Kernel of the GLSDK release package.
Device Driver List [edit]
The following table list the various device drivers supported and the device they are supported on. On detailed information on specific features or limitations of a pariticular driver, refer to the chapter catering to that driver in this document.
Peripheral | Description | Linux driver type | DMA usage |
---|---|---|---|
Audio (McASP) | Audio Record and Playback | ALSA SoC | sDMA / eDMA |
Ethernet | Ethernet Network driver | Netdev | Internal DMA |
USB1 DWC3(DRD)-SS/HS/FS/LS | DWC3 Device & xhci host controller driver | USB HCD/DCD | USB Internal DMA |
USB2 DWC3(DRD)-HS/FS/LS | DWC3 Device & xhci host controller driver | USB HCD/DCD | USB Internal DMA |
QSPI Flash/Controller Driver | Flash storage system | MTD Block | Not Supported |
eMMC/SD/MMC | Interface to MultiMedia Secure Digital cards | Block | SDMA |
UART | Serial Communication Interface | Character | Supported |
I2C | Inter-IC Communication | Character | Not Supported |
DSS | Display Subsystem driver | Platform driver | Internal DMA |
VIP | Video IP driver | V4L2 Capture | VPDMA |
VPE | Video Processing Engine driver | V4L2 Mem to Mem | VPDMA |
CPUFreq | Supports multiple SoC operating levels for MPU(OPPs) | NA | None |
RTC | Realtime clock | Character | None |
ALSA SoC Audio Driver [edit]
This section an overview of the ALSA SoC audio driver features along with the throughput and CPU load numbers.
Introduction [edit]
DRA7xx Audio driver complies to the Advanced Linux Sound Architecture (ALSA) System on Chip (SoC) framework (ASoC).
The ASoC framework splits an embedded audio system into three components:
- Codec driver: The codec driver is generic and hardware independent code that configures the audio codec to provide audio capture and playback. It should contain no code that is specific to the target platform or machine.
- Platform driver: The platform driver can be divided into audio DMA and SoC Digital Audio Interface (DAI) configuration and control. The platform driver only targets the SoC CPU and must have no board specific code.
- Machine driver: The ASoC machine (or board) driver is the code that glues together the platform and codec drivers. It can contain codec and platform specific code. It registers the audio subsystem with the kernel as a platform device.
Driver Features [edit]
The driver supports the following features:
- Supports AIC3106 audio codec in ALSA SoC framework.
- Sample rate support - 44.1kHz for both capture and playback.
- Supports audio in stereo mode
- Supports simultaneous playback and record (full-duplex mode).
- Supports mixer interface for the audio codec
Features Not Supported [edit]
- OSS based applications, which use ALSA-OSS emulation layer, are not supported.
- Synthesizer and midi interfaces are not supported.
Constraints [edit]
Supported System Calls [edit]
Refer ALSA project - the C library reference [1] for API calls.
Performance and Benchmarks [edit]
- Access type - RW_INTERLEAVED
- Channels - 2
- Format - S16_LE
- Period size - 64
Sampling Rate (in Hz) | ||||
---|---|---|---|---|
DRA75X | DRA72X | |||
Throughput(bits/sec) | CPU Load (in %) | Throughput(bits/sec) | CPU Load (in %) | |
44100 | 1,172,936.00 | 0.34 | 706,163.00 | 0.70 |
Sampling Rate (in Hz) | ||||
---|---|---|---|---|
DRA75X | DRA72X | |||
Throughput(bits/sec) | CPU Load (in %) | Throughput(bits/sec) | CPU Load (in %) | |
44100 | 1,365,132.00 | 0.35 | 707,713.00 | 0.69 |
Ethernet Driver [edit]
This section provides an overview of the Ethernet driver features along with throughput and CPU load numbers. Ethernet driver follows standard Linux network interface architecture.
Introduction [edit]
The Ethernet driver supports the Linux netdev interface.
Driver Features [edit]
The driver supports the following features:
- 10/100/1000 Mbps mode of operation.
- Auto negotiation.
- Full duplex and half duplex mode of operation.
- Linux NAPI support
- Support for MII and RGMII interfaces to PHY
- Operation of both external ports as independent network interfaces
* Enable CONFIG_ETHERNET through menuconfig (Menu Config->Device Drivers->Network device support & Menu config-> Networking support)
Features Not Supported [edit]
N/A
Supported System Calls [edit]
Supports the socket() and related system calls in accordance with Linux architecture.
Performance and Benchmarks [edit]
Setup : Device under test connected to Linux PC through gigabit switch.
DRA75x running @1.5Ghz and DRA72x running @1Ghz
TCP Performance [edit]
TCP Window Size(in KBytes) | ||||||||
---|---|---|---|---|---|---|---|---|
DRA75X | DRA72X | |||||||
Without Interrupt Pacing | With Interrupt Pacing | Without Interrupt Pacing | With Interrupt Pacing | |||||
Throughput Mbps | cpu load (%) | Throughput Mbps | cpu load (%) | Throughput Mbps | cpu load (%) | Throughput Mbps | cpu load (%) | |
8 | 435 | 70 | 155 | 17 | - | - | - | - |
16 | 631 | 85 | 338 | 38 | - | - | - | - |
32 | 770 | 87 | 544 | 46 | - | - | - | - |
64 | 954 | 99 | 644 | 52 | - | - | - | - |
128 | 998 | 100 | 794 | 76 | - | - | - | - |
256 | 998 | 100 | 1021 | 85 | - | - | - | - |
Note:Throughput reported is cumulative throughput of Tx+Rx collected from concurrent bi-directional test
The performance numbers were captured using the iperf tool. Usage details are mentioned below:
- iperf version 2.0.5
- On PC Host invoke iperf in the server mode.
iperf -s
- On the DUT iperf is invoked in client mode (bi-directional traffic for 60 seconds).
iperf -c <server ip> -w <window size> -d -t 60
- Interrupt pacing feature enabled with pacing interval set to 250usecs.
ethtool -C eth0 rx-usecs 250
- DUT is connected to a gigabit network.
UDP Performance [edit]
For UDP transmit performance, the iperf server instance is started on the PC and client is
started from the DUT. Interrupt pacing for 250usecs interval was enabled
Bandwidth limit on send(MBits/sec) | Bandwidth measured by server (MBits/sec) | Jitter (milliseconds) | Lost Datagrams (%) | CPU Load (with interrupt pacing, in %) |
---|---|---|---|---|
301 | 301 | 0.022 | 0 | 24 |
499 | 499 | 0.022 | 0 | 38 |
698 | 698 | 0.041 | 0 | 44 |
758 | 758 | 0.023 | 0.006 | 47 |
Bandwidth limit on send(MBits/sec) | Bandwidth measured by server (MBits/sec) | Jitter (milliseconds) | Lost Datagrams (%) | CPU Load (with interrupt pacing, in %) |
---|---|---|---|---|
295 | - | - | - | - |
466 | - | - | - | - |
607 | - | - | - | - |
648 | - | - | - | - |
For UDP receive performance, the iperf client instance is started on the PC and server is
started on the DUT. Interrupt pacing for 250usecs interval was enabled.
Bandwidth limit on send(MBits/sec) | Bandwidth measured by server (MBits/sec) | Jitter (milliseconds) | Lost Datagrams (%) | CPU Load (with interrupt pacing, in %) |
---|---|---|---|---|
301 | 302 | 0.048 | 0.022 | 10 |
511 | 509 | 0.026 | 0.42 | 19 |
734 | 721 | 0.016 | 1.7 | 23 |
811 | 774 | 0.012 | 4.6 | 27 |
Bandwidth limit on send(MBits/sec) | Bandwidth measured by server (MBits/sec) | Jitter (milliseconds) | Lost Datagrams (%) | CPU Load (with interrupt pacing, in %) |
---|---|---|---|---|
302 | - | - | - | - |
511 | - | - | - | - |
732 | - | - | - | - |
810 | - | - | - | - |
- iperf version 2.0.5
- For receive performance, on DUT, invoke iperf in server mode.
iperf -s -u
- For transmit performance, on DUT, invoke iperf in client mode.
iperf -c <server ip> -b <bandwidth limit> -f M -t 60
OMAPDRM/OMAPDSS (Display Subsystem Driver) [edit]
Introduction [edit]
The OMAPDRM internally uses OMAPDSS driver interface for configuration of panel drivers and the encoder interface(DPI/HDMI).
Menuconfig Option[edit]
Enable CONFIG_DRM_OMAP through (Menuconfig->Device Drivers->Graphics support)
Enable CONFIG_OMAP2_DSS_DRA7XX_DPI, CONFIG_OMAP5_DSS_HDMI, CONFIG_OMAP5_DSS_HDMI_DDC through (Menuconfig->Device Drivers->Graphics support->OMAP2+ Display Subsystem support)
Enable CONFIG_PANEL_TFCS9700 through (Menuconfig->Device Drivers->Graphics support->OMAP2+ Display Subsystem support->OMAP2/3 Display Device Drivers)
Source Location[edit]
- omapdss
drivers/video/fbdev/omap2/dss/
- display drivers
drivers/video/fbdev/omap2/displays-new
- omapdrm
drivers/gpu/drm/omapdrm/
Driver Features [edit]
OMAPDRM Display controller (DISPC)[edit]
DRM Plane Features:
- One Graphics (GFX) and Three Video pipelines (VID1, VID2, and VID3)
- Z-order, Alpha blending (Global, pre-multipled), Scaler and CSC
DRM CRTC Features:
- One TV and three LCD Overlay Managers
- Supports 1080p at 60Hz for all CRTCs
OMAPDRM Interfaces[edit]
HDMI Interface
- HDMI protocol engine
- HDMI 1.4 support
RGB Interface
- Supports 24bit LCD Fixed Resolution Panels
Features Not Supported [edit]
- Rotation/Tiler 2D
- Default BG color, Transparency and color Keys
Constraints [edit]
- Number of CRTCs must be passed either through bootargs or kernel config, which limits number of free DRM planes.
Supported System Calls [edit]
All libdrm APIs are supported.
QSPI Driver [edit]
Introduction [edit]
This chapter describes the QSPI platform driver & flash driver features and performance numbers (throughput and CPU load).
QSPI Platform driver feature [edit]
QSPI is a serial driver. Supports 4-Pin single read, 4-Pin single write & 6-Pin quad read. It implements only SPI_CORE mode & no support for memory mapped interface. Clock phase & polarity configured to mode-3 & functional clock programmed at 48MHz. There is no support for DMA data transfer.
The pointer to TI qspi hardware driver is drivers/spi/spi-ti-qspi.c
* Enable CONFIG_SPI_TI_QSPI through menuconfig (Menuconfig->Device Drivers->SPI support->DRA7xxx QSPI controller support)
QSPI Flash driver feature [edit]
Spansioin S25FL256S serial flash used on DRA7xx evm. The property of the flash are
- 256 Mbits (32 Mbytes)
- 256 or 512 Byte Page Programming buffer options
- 64KB erase sector size
- Normal, Fast, Dual & Quad
Linux mtd m25p80 used as serial flash device driver for s25FL256S. The driver layer exports API for device info read, sector erase, chip erase, data read & write. It creates the device node for user space access (example, /dev/mtd0)
The pointer to mtd m25p80 flash device driver is drivers/mtd/devices/m25p80.c
* Enable CONFIG_MTD_M25P80 through menuconfig (Menuconfig->Device Drivers->Memory Technology Device(MTD) support ->Self-contained MTD device drivers->Support most SPI Flash chips)
JFFS2 Filesystem Support [edit]
QSPI flash driver is mtd based block driver. Support to mount JFFS2 filesystem on /dev/mtd0. Validated to mount JFFS2 filesystem & performed basic file IO operations.
There is an exception on remounting the filesystem. It is known limitation in this release.
Erase the flash to mount JFFS2 filesystem $flash_eraseall -j /dev/mtd0
Mount the serial flash $mount -t jffs2 /dev/mtdblock01 /mnt/nor
Create a new file $echo NewFileCreated > /mnt/nor/testfile.txt
Read the file $cat /mnt/nor/testfile.txt
Delete the file $rm /mnt/nor/testfile.txt
Performance Benchmark [edit]
Not available for this release.
MMC/SD Driver [edit]
This chapter provides details on MMC/SD driver along with throughput and CPU load numbers.
Introduction [edit]
The MMC controller provides an interface to external MMC cards that follow the MMC specification v4.0. The MMC driver is implemented as a block driver. Block device nodes(such as /dev/mmcblockp1, /dev/mmcblockp2) are created for user space access.
Driver Features [edit]
The driver supports the following features:
- MMC/SD native protocol command/response set
- Single/multiple block data transfers
- Linux file system and generic MMC layer abstract details of block devices (MMC)
- High-speed (SDv1.1) and High Capacity (SDv2.0) cards
- Support for 4 bit modes
- Support for card detect and Write protect features
- DMA and polled mode for data transfer operations
Features Not Supported [edit]
- SPI mode of operation
- PIO mode of operation
- Write protection is not supported on the J6 EVM
Constraints [edit]
- MMC/SD cards should not be removed when the card is mounted. If done so, data integrity cannot be guaranteed.
Supported System Calls [edit]
open(),close(),read(),write()
Performance and Benchmarks [edit]
IMPORTANT
The performance numbers can be severely affected if the media is mounted in sync mode. Hot plug scripts in the filesystem mount removable media in sync mode to ensure data integrity. For performance sensitive applications, umount the auto-mounted filesystem and re-mount in async mode.
- Note: On DRA75x, UHS mode is not supported hence the card is used in high speed mode. which is why the throughput numbers on DRA72x are greater than that of DRA75x.
EXT2 file system [edit]
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 11.80 | 2.71 | - | - |
262144 | 11.52 | 2.65 | - | - |
1048576 | 10.45 | 2.4 | - | - |
5242880 | 11.17 | 2.93 | - | - |
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 39.07 | 0.77 | - | - |
262144 | 21.62 | 4.44 | - | - |
1048576 | 38.8 | 3.02 | - | - |
5242880 | 38.68 | 3.80 | - | - |
The performance numbers were captured using the following:
- SD Card Sandisk Ultra 16G Class 10 [UHS-1] SDHC card
- File System: ext2
- Partition was mounted with async option
VFAT file system [edit]
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 11.32 | 3.95 | - | - |
262144 | 11.2 | 4.12 | - | - |
1048576 | 11.57 | 3.93 | - | - |
5242880 | 11.53 | 4.02 | - | - |
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 36.25 | 4.18 | - | - |
262144 | 36.70 | 2.87 | - | - |
1048576 | 36.73 | 4.41 | - | - |
5242880 | 36.69 | 3.4 | - | - |
EMMC Performance and Benchmarks [edit]
IMPORTANT
The performance numbers can be severely affected if the media is mounted in sync mode. Hot plug scripts in the filesystem mount removable media in sync mode to ensure data integrity. For performance sensitive applications, umount the auto-mounted filesystem and re-mount in async mode.
VFAT file system [edit]
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 10.3 | 3.74 | - | - |
262144 | 10.68 | 4.12 | - | - |
1048576 | 10.68 | 3.59 | - | - |
5242880 | 10.69 | 3.78 | - | - |
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 67.91 | 7.24 | - | - |
262144 | 68.13 | 5.07 | - | - |
1048576 | 68.11 | 7.89 | - | - |
5242880 | 67.51 | 10 | - | - |
The performance numbers were captured using the following:
- File System: ext4
- Partition was mounted with async option
EXT4 file system [edit]
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 11.34 | 3.27 | - | - |
262144 | 11.33 | 2.83 | - | - |
1048576 | 11.36 | 2.78 | - | - |
5242880 | 11.37 | 2.84 | - | - |
Platform | DRA75x | DRA72x | ||
Buffer Size (in Bytes) | Transfer Rate (in MBytes/sec) | CPU Load (in %) | Transfer Rate (in MBytes/sec) | CPU Load (in %) |
102400 | 62.92 | 6.06 | - | - |
262144 | 62.66 | 6.36 | - | - |
1048576 | 70.39 | 6.78 | - | - |
5242880 | 62.89 | 6.13 | - | - |
The performance numbers were captured using the following:
- File System: vfat
- Partition was mounted with async option
UART Driver [edit]
This chapter provides details on UART driver.
Introduction [edit]
The UART driver is implemented as a serial driver, and can be accessed from user space as /dev/ttyOX(X=0-5)
Features Not Supported [edit]
- Hardware Flow Control due to board limitation
- UART DMA mode not supported
Supported System Calls [edit]
open(),close(),read(),write(),ioctl()
Supported IOCTLs [edit]
Constant | Description |
---|---|
TIOCGSERIAL | Gets device parameters from the UART (example, port type, port num, baud rate, base divisor, and so on. |
TIOCSSERIAL | Sets UART device parameters (example, port type, port num, baud rate, base divisor, and so on) |
Performance and Benchmarks [edit]
Performance and Benchmarks not available in this release.
I2C Driver [edit]
This chapter provides details on I2C driver.
Introduction [edit]
The I2C peripheral is compliant with the Philips Semiconductor I2C-bus specification version 2.1. The I2C driver is implemented as a serial driver. The I2C driver can be accessed from the user space as /dev/i2c/0.
Driver Features [edit]
The driver supports the following features:
- 7-bit addressing mode
- Fast mode
- Interrupt mode
Features Not Supported [edit]
- 7-bit and 10-bit addressing combined format is not supported
- DMA mode is not supported
Supported System Calls [edit]
open(),close(),read(),write(),ioctl()
Supported IOCTLs [edit]
Constant | Description |
---|---|
I2C_SLAVE_FORCE | Changes slave address. Slave address is 7 or 10 bits. This changes the address, even if it is already considered. |
I2C_FUNCS | Gets the adapter functionality |
I2C_RDWR | Combined R/W transfer (one stop only) |
Performance and Benchmarks [edit]
Performance and Benchmarks not available in this release.
VIP Driver[edit]
Introduction [edit]
The Video Input Port (VIP) is a V4L2 based video capture driver.
Driver Features [edit]
- V4L2 Single planar ioctls supported.
- Supports MMAP and DMABUF buffering methods
- Multi instance capture support
- Simultaneous capture from multiple ports
- Configurable video interfaces via endpoint nodes in DT
- Supports descrete/embedded sync, 8/16/24 bit bus, YUYV and RGB format cameras
- Capture upto 60 fields/frames per second
- Selection of muxed cameras through device tree
- Multi channel CVBS camera capture
Features Not Supported [edit]
Following features are not supported at this point of time.
- Inline Color Space Conversion support
- Inline Scaling support.
- Multi planar buffer support
- Runtime selection of cameras
- Media controller framework
Constraints [edit]
- TI evm has a conflict between I2C signals and HDMI DDC.
Therefore, the sensor drivers which are controlled via I2C won't work when these pins are in HDMI DDC mode
Supported System Calls [edit]
- Standard V4L2 Capture ioctls
- No custom ioctls needed
Performance Benchmarks [edit]
The following performance benchmarks were measured on DRA7xx
- IRQ latency
- The average IRQ latency of the interrupts to the VIP driver is measured as the time difference between a VPDMA list post and VIP ISR callback
- A zero sized list post would generate IRQ immediately
- When measured across 1002 samples, the average interrupt latency is 15.94 us
- Peak IRQ latency is 138 us
- For all the following latencies, IRQ latency is not considered
- Capture latency
- average capture latency is the time taken by the driver to make the buffer available for the userspace
- It is calculated as the time difference between the IRQ and the time where DQBUF ioctl returns
- This would vary based on the size of the captured buffer
- Capture display latency
- Average capture display latency is the time difference between the time a buffer was captured and the time when it was given for display
- This is the total latency between end of the capture frame and start of display frame
Following table shows latencies for different capture sizes
Capture size | Capture latency (J6) | Capture Display latency (J6) | Capture latency (J6Eco) | Capture Display latency (J6Eco) |
---|---|---|---|---|
720x240 60fps (Analog decoder TVP5158) | 129us | 253us | - | - |
1280x720 30fps (Digital OV camera) | 146us | 274us | - | - |
- multi instance capture latency
- Following table shows latencies for for multi instance capture scenario
- Here, five different VIP ports are used to capture from LVDS cameras
- All the captures are at 1280x720 YUYV format at 30fps
Capture thread | Average capture latency |
---|---|
LVDS cam1 | 180us |
LVDS cam2 | 302us |
LVDS cam3 | 225us |
LVDS cam4 | 208us |
LVDS cam5 | 204us |
VPE Driver[edit]
Introduction [edit]
Video processing Engine(VPE) is a V4L2 Mem to Mem driver. It supports video operations such as scaling, colour space conversion and deinterlacing.
Driver Features [edit]
Video processing Engine(VPE) supports following formats for scaling, csc and deinterlacing:
- Supported Input formats: NV12, YUYV, UYVY
- Supported Output formats: NV12, YUYV, UYVY, RGB24, BGR24, ARGB24, ABGR24
- Inline Scaling supports
- Horizontal up-scaling up to 8x and Downscaling up to 4x using Pre-decimation filter.
- Vertical up-scaling up to 8x and Polyphase down-scaling up to 4x followed by RAV scaling.
- V4L2 M2M Multiplanar ioctl() supported.
- Multiple V4L2 device context supported.
Features Not Supported [edit]
- Following formats are not supported : YUV444, YVYU, VYUY, NV16, NV61, NV21, 16bit and Lower RGB formats are not supported.
- Passing of custom scaler and CSC coeffficients through user spcase are not supported.
- Only Linear scaling is supported without peaking and trimming.
- Deinterlacer does not support film mode detection.
Constraints [edit]
- VPE functional clock is restricted to 266Mhz due to HW constraints.
Supported System Calls [edit]
- Standard v4l2 m2m ioctls
Performance benchmarks [edit]
- Frames per second (FPS)
- FPS is the total number of frames processed by VPE per second
- FPS for a mem2mem device like VPE depends on the size of the data that is being processed.
- As VPE performs deinterlacing, scaling, color space conversion on the fly, FPS value for any of these combination should be same.
- Following tables shows the fps values for multiple operations measured when VPE is running at 266Mhz
Operation | Time for 1000 frames | Frames per second | Hardware utilization |
---|---|---|---|
DEI 1920 540 yuyv to 1920 1080 yuyv 1 | 7.94 s | 125.94 | 98.17% |
SC 1280 720 yuyv to 1920 1080 yuyv 0 | 7.89 s | 126.74 | 98.80% |
CSC 1920 1080 yuyv to 1920 1080 rgb24 0 | 7.91 s | 126.42 | 98.55% |
CSC + SC 320 240 yuyv to 640 480 nv12 0 | 1.20 s | 833.33 | 96.24% |
DEI + SC 720 240 nv12 to 1280 720 yuyv 1 | 3.55 s | 281.69 | 97.59% |
DEI + CSC 720 240 yuyv to 720 480 yuyv 1 | 1.36 s | 735.29 | 95.53% |
Operation | Time for 1000 frames | Frames per second | Hardware utilization |
---|---|---|---|
DEI 1920 540 yuyv to 1920 1080 yuyv 1 | - | - | - |
SC 1280 720 yuyv to 1920 1080 yuyv 0 | - | - | - |
CSC 1920 1080 yuyv to 1920 1080 rgb24 0 | - | - | - |
CSC 320 240 yuyv to 640 480 nv12 0 | - | - | - |
720 240 nv12 to 1280 720 yuyv 1 | - | - | - |
SC 720 240 yuyv to 720 480 yuyv 1 | - | - | - |
USB Driver [edit]
This section gives an overview of the USB DWC3(XHCI) controller driver features supported/not supported, constraints and performance numbers.
DWC3(XHCI) USB controller[edit]
The DWC3 (XHCI) based controller supports following features
- USB1: SuperSpeed (SS) USB 3.0 Dual-Role-Device (DRD) subsystem with integrated SS (USB3.0) PHY and HS/FS (USB2.0) PHY
- USB2: High-Speed (HS) USB 2.0 Dual-Role-Device (DRD) subsystem with integrated HS/FS PHY
Features Not Supported [edit]
- OTG support (HNP/SRP)
Features Supported [edit]
- USB Host mode.
- USB Peripheral mode
- USB DRD mode (Dual Role Device)
USB Configuration [edit]
For USB configuration selection please refer to USB General Guide Linux
Driver Features [edit]
The driver supports the following features
DRD (Dual Role Device) support[edit]
The DRD (Dual role device) support enable the each instance of controller to configure either as "Host" or "Device" mode. Refer to User's Guide for more details how to configure the controller into DRD mode.
Host mode support[edit]
Host Mode Feature | Supported |
---|---|
HUB class support | Yes |
Human Interface Class (HID) | Yes |
Mass Storage Class (MSC) | Yes |
USB Video Class (UVC) | Yes |
USB Audio Class (UAC) | Yes |
USB Mass Storage Class Host Driver[edit]
Constraint [edit]
None
Supported System Calls[edit]
open(), close(), read(), write(), ioctl()
Supported IOCTLS [edit]
None
Performance Benchmarks [edit]
Setup : Western Digital Superspeed HDD (500GB) connected to usb1 or usb2 port. SS - SuperSpeed, HS - Highspeed
USB - ext2 File System Performance [edit]
Buffer Size (in KBytes) | ||||||||
---|---|---|---|---|---|---|---|---|
DRA75X | DRA72X | |||||||
USB1(SS) | USB2(HS) | USB1(SS) | USB2(HS) | |||||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 75.25 | 15.67 | 34.80 | 7.99 | - | - | - | - |
256 | 67.48 | 15.13 | 35.75 | 9.73 | - | - | - | - |
512 | 76.53 | 14.56 | 35.30 | 8.73 | - | - | - | - |
1024 | 73.82 | 13.70 | 34.59 | 10.14 | - | - | - | - |
5120 | 73.27 | 14.91 | 34.82 | 9.15 | - | - | - | - |
Buffer Size (in KBytes) | ||||||||
---|---|---|---|---|---|---|---|---|
DRA75X | DRA72X | |||||||
USB1(SS) | USB2(HS) | USB1(SS) | USB2(HS) | |||||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 99.71 | 13.57 | 39.77 | 4.44 | - | - | - | - |
256 | 102.51 | 12.04 | 38.56 | 7.92 | - | - | - | - |
512 | 101.93 | 11.23 | 38.67 | 5.05 | - | - | - | - |
1024 | 94.96 | 11.76 | 39.51 | 5.89 | - | - | - | - |
5120 | 100.31 | 13.85 | 39.46 | 4.02 | - | - | - | - |
USB - VFAT File System Performance [edit]
Buffer Size (in KBytes) | ||||||||
---|---|---|---|---|---|---|---|---|
DRA75X | DRA72X | |||||||
USB1(SS) | USB2(HS) | USB1(SS) | USB2(HS) | |||||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 49.52 | 20.64 | 26.04 | 10.49 | - | - | - | - |
256 | 50.47 | 21.00 | 26.81 | 12.03 | - | - | - | - |
512 | 51.13 | 21.41 | 26.10 | 11.55 | - | - | - | - |
1024 | 52.24 | 23.10 | 26.90 | 11.14 | - | - | - | - |
5120 | 49.56 | 22.46 | 26.43 | 10.75 | - | - | - | - |
Buffer Size (in KBytes) | ||||||||
---|---|---|---|---|---|---|---|---|
DRA75X | DRA72X | |||||||
USB1(SS) | USB2(HS) | USB1(SS) | USB2(HS) | |||||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 98.68 | 17.10 | 32.93 | 05.64 | - | - | - | - |
256 | 88.53 | 15.53 | 32.99 | 05.68 | - | - | - | - |
512 | 91.08 | 16.04 | 33.37 | 06.84 | - | - | - | - |
1024 | 92.00 | 15.46 | 32.54 | 04.89 | - | - | - | - |
5120 | 91.96 | 16.75 | 32.09 | 03.71 | - | - | - | - |
USB Peripheral mode Support [edit]
NCM Gadget Support [edit]
The NCM(Network control Model) gadget driver that is used to send standard Ethernet frames using USB. The driver will create an Ethernet device by the name usb0.
Driver Features [edit]
Supports default DMA mode.
Features Not Supported [edit]
None
Constraint [edit]
None
Supported System Calls [edit]
open(), close(), read(), write(), ioctl()
Supported IOCTLS [edit]
None
Performance Benchmarks [edit]
Performance benchmarks were collected using the Iperf tool and default options were used to collect the throughput numbers.
USB NCM Gadget Performance [edit]
Setup : EVM as client and Linux Host PC as server command at EVM: iperf -c <linux host ip_adr> -w <8|16|32|64|128>K -t 60 -d command at Host: iperf -s
TCP Window Size(in KBytes) | ||
---|---|---|
DRA75X | DRA72X | |
Mbps | Mbps | |
16 | 09.50 | - |
32 | 19.75 | - |
64 | 38.90 | - |
128 | 154.0 | - |
- DRA75X: The cpu load is 26% for 128K window size, for 16K, 32K, 64K the cpu load is 6%.
SATA Driver [edit]
The SATA controller compliance to Serial ATA Standard specification (revision 2.6) and Serial ATA Advanced Host Controller Interface Specification (AHCI) revision 1.1. The AHCI based SATA host controller supports both Gen1/2 speeds, 1.5-Gbps (SATA-1) and 3Gbps (SATA-2)
- Please refer Technical Reference Module for more information.
Registers as a SCSI controller with the Linux SCSI Subsystem. SATA devices get registered as SCSI devices and can be accessed as "/dev/sd{*}" devices.
The driver supports the following features:
1. SATA HDD
2. CD/DVD support
* Enable CONFIG_ISO9660_FS through menuconfig (Menuconfig->File Systems->CD-ROM/DVD Filesytem->"ISO 9660 CDROM file system support") * Enable CONFIG_BLK_DEV_SR through menuconfig (Menuconfig->Device Drivers->Scsi Device Support->"SCSI CD ROM support")
3. Port Multiplier support
* Enable CONFIG_SATA_PMP through menuconfig (Menuconfig->Device Drivers->Serial ATA and Paralle ATA drivers->SATA Port Multiplier support)
Features Not Supported [edit]
- None.
Constraints [edit]
Supported System Calls [edit]
All Linux ATA/SCSI system calls related to SATA
Supported IOCTLs [edit]
Supports IOCTLS available in Linux SCSI and ATA frameworks and which are applicable for SATA. Refer kernel source or documentation for details.
Performance and Benchmarks [edit]
- Western Digital 500GB (3Gbps)SATA (16M cache) HDD is used to measure the performance data
SATA - ext2 File System Performance [edit]
Buffer Size (in KBytes) | ||||
---|---|---|---|---|
DRA75X | DRA72X | |||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 94.76 | 10.59 | - | - |
256 | 92.25 | 10.43 | - | - |
512 | 93.38 | 10.72 | - | - |
1024 | 94.89 | 10.60 | - | - |
5120 | 94.70 | 10.48 | - | - |
Buffer Size (in KBytes) | ||||
---|---|---|---|---|
DRA75X | DRA72X | |||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 125.91 | 08.70 | - | - |
256 | 124.81 | 08.59 | - | - |
512 | 124.94 | 09.77 | - | - |
1024 | 126.09 | 09.77 | - | - |
5120 | 125.42 | 09.98 | - | - |
SATA - VFAT File System Performance [edit]
Buffer Size (in KBytes) | ||||
---|---|---|---|---|
DRA75X | DRA72X | |||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 68.43 | 23.38 | - | - |
256 | 68.66 | 23.94 | - | - |
512 | 68.11 | 23.74 | - | - |
1024 | 68.20 | 23.60 | - | - |
5120 | 68.67 | 23.73 | - | - |
Buffer Size (in KBytes) | ||||
---|---|---|---|---|
DRA75X | DRA72X | |||
MB/sec | cpu load (%) | MB/sec | cpu load (%) | |
100 | 126.85 | 10.52 | - | - |
256 | 125.46 | 10.74 | - | - |
512 | 126.60 | 11.50 | - | - |
1024 | 126.21 | 11.07 | - | - |
5120 | 126.85 | 11.68 | - | - |
Power Management [edit]
Introduction [edit]
DRA7xx provides a rich set of power management features. The features include Clock control at module level, multiple power and voltage domains etc. It also provides the typical power consumption observed for different scenarios.
IP | DRA75x Frequency (MHz) | DRA72x Frequency (MHz) |
---|---|---|
MPU | As per OPP (1000/1176/1500) | As per OPP (1000/1176/1500) |
IPU | 212.8 | 212.8 |
DSP | 700 | 700 |
IVA | 532 | 532 |
SGX | 425 | 425 |
L3 | 266 | 266 |
DDR | 532 | 666 |
MPU DVFS (CPUFreq) [edit]
CPU is not loaded evenly during execution. This provides an opportunity to save power by adjusting/scaling voltage and frequency based on the current cpu load.
A set of frequency and voltage is called an OPP (Operating performance Point) which are arraived at during silicon characterization and are guaranteed to be working combination for desired performance.
As per Data Manual, DRA7xx supports following OPP for MPU:
OPP_NOM, OPP_OD and OPP_HIGH
- In GLSDK Kernel, the supported OPPs are dynamically updated by reading device speed-grade register.If a device can't run at 1.5 GHz as per the efused speed grade then the OPP_HIGH will be removed from supported OPPs dynamically during kernel boot.
Note: On a few DRA72x samples the efused speed grade value is wrong and on such devices only OPP_NOM is supported.
Power Measurement[edit]
This section indicates the power measured for all power rails at OPP_NOM in different scenarios/use-cases.
Power measurements are done using FTDI (FT2232HL - I2C over USB) module on DRA75x EVM Rev E1 - ES 1.1.
Note:Following measurements are not applicable for DRA72x
1) At kernel Prompt - no application is running @ OPP_NOM
Device | Bus(V) | Sense Res(uV) | Current(mA) | Power(mW) |
VDD_DSPEVE | 1.05 | 114.25 | 114.25 | 119.1 |
VDD_MPU | 1.03 | 151.83 | 151.83 | 154.91 |
DDR_CPU | 1.35 | 1553.38 | 310.68 | 418.34 |
VDDA_1V8_PLL | 1.8 | 314.38 | 31.44 | 56.34 |
VDD_GPU | 0.98 | -0.92 | -0.46 | -0.45 |
VUSB_3V3 | 3.29 | 15.83 | 1.59 | 5.21 |
VDDS18V | 1.81 | 844.18 | 84.42 | 152.77 |
VDD_SHV | 3.27 | 25.43 | 25.43 | 83.02 |
CORE_VDD | 0.99 | 1085.35 | 542.68 | 536.68 |
VDD_IVA | 1.11 | 22.08 | 11.04 | 12.18 |
DDR_MEM | 1.35 | 696.88 | 139.38 | 187.93 |
VDDA_1V8_PHY | 1.8 | 1114.16 | 111.42 | 200.12 |
Total Power | 1926.15 mW |
2) Dual AV decode and dual display @ 1080p@30fps, at OPP_NOM (using Userspace governor)
Device | Bus(V) | Sense Res(uV) | Current(mA) | Power(mW) |
VDD_DSPEVE | 1.05 | 118.05 | 118.05 | 123.12 |
VDD_MPU | 1.03 | 459.35 | 459.35 | 470.44 |
DDR_CPU | 1.35 | 2184.53 | 436.91 | 587.91 |
VDDA_1V8_PLL | 1.8 | 341.48 | 34.15 | 61.19 |
VDD_GPU | 0.99 | 370.23 | 185.12 | 182.14 |
VUSB_3V3 | 3.29 | 16 | 1.61 | 5.27 |
VDDS18V | 1.82 | 1238.95 | 123.9 | 224.38 |
VDD_SHV | 3.27 | 42.8 | 42.8 | 139.68 |
CORE_VDD | 1 | 1314.75 | 657.38 | 651.8 |
VDD_IVA | 1.12 | 323.53 | 161.77 | 180.17 |
DDR_MEM | 1.36 | 2226 | 445.21 | 601.34 |
VDDA_1V8_PHY | 1.8 | 1117.16 | 111.72 | 200.64 |
Total Power | 3428.08 mW |
3) V4L2 capture and (loop-back) display display @ 1080p@30fps, at OPP_NOM (using Userspace governor)
Device | Bus(V) | Sense Res(uV) | Current(mA) | Power(mW) |
VDD_DSPEVE | 1.05 | 143.81 | 143.8 | 149.79 |
VDD_MPU | 1.02 | 181.28 | 181.28 | 183.19 |
DDR_CPU | 1.35 | 1353.05 | 270.62 | 364.1 |
VDDA_1V8_PLL | 1.8 | 323.75 | 32.38 | 58.05 |
VDD_GPU | 1.02 | 270.4 | 135.2 | 136.87 |
VUSB_3V3 | 3.3 | 13.6 | 1.37 | 4.48 |
VDDS18V | 1.81 | 1029.88 | 102.99 | 186.06 |
VDD_SHV | 3.27 | 69.2 | 69.2 | 225.62 |
CORE_VDD | 0.97 | 1105.48 | 552.74 | 531.92 |
VDD_IVA | 1.11 | 29.75 | 14.88 | 16.43 |
DDR_MEM | 1.35 | 678.3 | 135.67 | 182.4 |
VDDA_1V8_PHY | 1.79 | 1143.3 | 114.34 | 204.13 |
Total Power | 2243.04 mW |
Filesystem [edit]
The filesystem is built using the yocto build system. More information on the build system refer to Building_Yocto_Filesystem
System initialization | System V |
Compressed filesystem size | 347MB |
Uncompressed filesystem size | 1.1GB |
Multimedia [edit]
Introduction [edit]
Multimedia consist of hardware accelerated video decoder(IVAHD). IVAHD subsystem is used for video decoding/encoding through libdce interface.
Supported Codecs[edit]
MJPEG decoder - version 01.00.12.01
H264 decoder - version 02.00.17.01
MPEG4 decoder - version 01.00.15.01
VC1 decoder - version 01.00.02.00
MPEG2 decoder - version 01.00.14.01
MPEG4 Encoder - Version 01.00.02.01
H264 Encoder - Version 02.00.08.01
Supported Playback Application[edit]
GStreamer version 1.2 with following display sinks:
- waylandsink
- kmssink
Viddec3test: application that demonstrates viddec3 API usage for video decode and display (using KMS).
Features Not Supported [edit]
- viddec3test doesn't support mpeg1 video playback
- viddec3test doesn't support h264 level 5 streams
Constraints [edit]
- Dual decode with two h264 1080p streams with atleast one of them as level 5 stream is not supported
- Pipelines mentioned in http://processors.wiki.ti.com/index.php/DRA7xx_GLSDK_Software_Developers_Guide are only supported
Performance Benchmarks [edit]
Stream Resolution | J6 | J6Eco | Opp Frequency | ||
---|---|---|---|---|---|
IVAHD load | FPS | IVAHD load | FPS | ||
CIF | 43% | 226 | - | - | IVAHD at 532MHz IPU at 212MHz |
720p | 76% | 131 | - | - | |
1080p | 87% | 75 | - | - |
- Performance is calculated using the gstreamer video decoder application with the following command :
gst-launch-1.0 playbin uri=file://<Path to stream> video-sink="kmssink sync=false" audio-sink=fakesink flags=1
Graphics [edit]
SGX544-MP2 [edit]
Introduction [edit]
The SGX544-MP2 is a multicore (dual-core) evolution of the PowerVR® SGX544 GPU from Imagination Technologies. The 3D graphics processing unit (GPU) accelerates 3-dimensional (3D) graphics applications and 2-dimensional (2D) composition operations.
Driver Features [edit]
The following specifications are supported on the platform:
- OpenGL ES 1.0
- OpenGL ES 1.1
- OpenGL ES 2.0
- EGL 1.4
Features Not Supported [edit]
The following specifications are not supported on the platform:
- OpenVG
- OpenGL ES 3.0
Performance Benchmarks [edit]
The following performance benchmarks were measured on DRA7xx with 10" LCD as the only connected display and DRM/KMS as the display backend.
Benchmark | Test Number | ||
---|---|---|---|
FPS | |||
DRA75x | DRA72x | ||
GLBenchmark 2.1 Egypt Classic ETC1 - C16Z16 | 2000000 | 173 | - |
GLBenchmark 2.5 Egypt HD ETC1 - C24Z24MS4 | 2500003 | 35 | - |
GLBenchmark 2.5 Egypt HD ETC1 - C24Z16 Fixed timestep | 2500005 | 31 | - |
GLBenchmark 2.5 Egypt HD ETC1 - C24Z16 | 2501001 | 38 | - |
GLBenchmark 2.5 Egypt HD PVRTC4 - C24Z16 | 2501101 | 38 | - |
GLBenchmark 2.5 Egypt HD ETC1->565 - C24Z16 | 2501401 | 38 | - |
Benchmark | Test Number | ||
---|---|---|---|
Mtriangles/sec | |||
DRA75x | DRA72x | ||
Triangle throughput: Textured 888 - C24Z16 | 2500301 | 76.88 | - |
Triangle throughput: Textured 888 - C24Z16 Vertex lit | 2500401 | 63.99 | - |
Triangle throughput: Textured 888 - C24Z16 Fragment lit | 2500501 | 60.93 | - |
Benchmark | Test Number | ||||
---|---|---|---|---|---|
FPS | MTexels/sec | ||||
DRA75x | DRA72x | DRA75x | DRA72x | ||
Fill rate 888 - C24Z16 | 2500101 | 47 | - | 1160 | - |
Wayland [edit]
Introduction [edit]
Wayland is a protocol that specifies the communication between the display server (called Wayland compositor) and its clients. The Wayland protocol is essentially only about input handling and buffer management. The handling of the input hardware relies on evdev in Linux, and similar components in other operating systems. The initial implementation, chiefly libwayland-server, libwayland-client, libwayland-EGL and the reference implementation Weston are published under the MIT License.
It is widely regarded as a replacement for the X Window System.
The GLSDK 7.01.00.03 release supports Wayland/Weston version 1.6.0.
Wayland API documentation [edit]
The documentation from the Wayland project can be accessed here [[2]]
Default supported clients [edit]
The list of clients and instructions on running them can be referenced from DRA7xx_GLSDK_Software_Developers_Guide#Running_weston_clients
Performance Benchmarks [edit]
Performance benchmarks have not been run for this release.