Difference between revisions of "RK3399"

From Rockchip open source Document
Jump to: navigation, search
Line 109: Line 109:
 
For Firefly-RK3399 board:
 
For Firefly-RK3399 board:
 
<div style="background:#eee;border:1px solid #ccc;padding:5px 10px;">make ARCH=arm64 rockchip_linux_defconfig && make ARCH=arm64 rk3399-firefly-mini-linux.img -j12&nbsp;</div>
 
<div style="background:#eee;border:1px solid #ccc;padding:5px 10px;">make ARCH=arm64 rockchip_linux_defconfig && make ARCH=arm64 rk3399-firefly-mini-linux.img -j12&nbsp;</div>
 +
  
 
=== Building uboot ===
 
=== Building uboot ===
  
 
For RK3399 optimized SDK (rkproduct uboot)
 
For RK3399 optimized SDK (rkproduct uboot)
<pre>CROSS_COMPILE=aarch64-linux-gnu- make rk3399_linux_defconfig all</pre>
+
<pre>cd u-boot && make rk3399_linux_defconfig && make ARCHV=aarch64 -j12 && cd ..
 +
</pre>
  
 
=== Building rootfs ===
 
=== Building rootfs ===

Revision as of 07:40, 9 March 2017

Rockchip RK3399 SoC integrates dual-core Cortex-A72 and quad-core Cortex-A53 with separate NEON coprocessor, and with ARM Mali-T864 GPU.

RTENOTITLE

Overview

RK3399 is a low power, high performance processor for computing, personal mobile internet devices and other smart device applications. Based on Big.Little architecture, it integrates dual-core Cortex-A72 and quad-core Cortex-A53 with separate NEON coprocessor.
Many embedded powerful hardware engines provide optimized performance for high-end application. RK3399 supports multi-format video decoders including H.264/H.265/VP9 up to4Kx2K@60fps, especially, H.264/H.265 decoders support 10bits coding, and also supports H.264/MVC/VP8 encoders by 1080p@30fps, high-quality JPEG encoder/decoder, and special image preprocessor and postprocessor.
Embedded 3D GPU makes RK3399 completely compatible with OpenGL ES1.1/2.0/3.0/3.1, OpenCL and DirectX 11.1. Special 2D hardware engine with MMU will maximize display performance and provide very smooth operation.
RK3399 has high-performance dual channel external memory interface (DDR3/DDR3L/LPDDR3/LPDDR4) capable of sustaining demanding memory bandwidths, also provides a complete set of peripheral interface to support very flexible applications.

SoC Features

  • CPU:
    • Big.Little architecture: Dual Cortex-A72 + Quad Cortex-A53, 64-bit CPU
    • Frequency is over 1.8GHz (Big cluster)
  • GPU:
    •  Mali-T864 GPU, OpenGL ES1.1/2.0/3.0/3.1, OpenCL, DX11
    • Supports AFBC (ARM Frame Buffer Compression)
  • Display:
    • Dual VOP: one supports 4096x2160 with AFBC supported;The other supports 2560x1600
    • Dual channel MIPI-DSI (4 lanes per channel)
    • eDP 1.3 (4 lanes with 10.8Gbps) to support display, with PSR
    • HDMI 2.0 for 4K 60Hz with HDCP 1.4/2.2
    • DisplayPort 1.2 (4 lanes, up to 4K 60Hz)
    • Supports Rec.2020 and conversion to Rec.709
  • Camera:
    •  Dual mipi CSI,dual ISP,Maximum input resolution of 13M pixels
  • Memory:
    • Dual channels 64-bit DRAM controller
    • Support DDR3/DDR3L, LPDDR3, LPDDR4
  • Connectivity:
    • PCIe 2.1 (4 full-duplex lanes with 20Gbps)
    • Embedded low power MCU for other application
    • 8 channels I2S supports 8 channels RX or 8 channels TX
RTENOTITLE

Documentation

  1. Rockchip_RK3399_Datasheet_V1.6-20170301
  2. RK3399_Linux_Debian_System_Development_Guide
  3. RK_DDR_Support_List_Ver2.24

Software

Borad configuration

board kernel uboot dts
rk3399-excavator rockchip_linux_defconfig rk3399_linux_defconfig rk3399-sapphire-excavator-linux.dts

Chip configuration

chip Kernel eMMC index Kernel SD index Uboot eMMC index Uboot SD index Baud speed
RK3399 1 0 0 1 1500000

How to get the sources

The rockchip linux SDK source tree is located in multi Git repository hosted by Github. The SDK uses repo to sync down source code. Beside the generic community Linux support, we have chip optimized Linux SDK and it's also opensource and can get source from github.

RK3399 optimized Debian & Buildroot

repo init -u https://github.com/rockchip-linux/manifests https://github.com/rockchip-linux/manifests -m rk3399.xml
repo sync

How to build the sources

Build Environment

You need a 64-bit Ubuntu. Note: old versions Ubuntu maybe have compatibility issues.
Use below commands to install Ubuntu packages:


$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip tar curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 cmake tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 lzop
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gn
u/libGL.so

Install ARM cross-compile tool chain and compile kernel relative software package: 

$ sudo apt-get install gcc-arm-linux-gnueabihf gcc-aarch64-linux-gnu device-tree-compiler lzop libncurses5-dev libssl1.0.0 libssl-dev

Building kernel & resource

For RK3399 Excavator-sapphire board:

make ARCH=arm64 rockchip_linux_defconfig && make ARCH=arm64 rk3399-sapphire-excavator-linux.img -j12

For Firefly-RK3399 board:

make ARCH=arm64 rockchip_linux_defconfig && make ARCH=arm64 rk3399-firefly-mini-linux.img -j12 


Building uboot

For RK3399 optimized SDK (rkproduct uboot)

cd u-boot && make rk3399_linux_defconfig && make ARCHV=aarch64 -j12 && cd ..

Building rootfs

Debian

you could refer to RK3399 Linux Debian System Development Guide from Rockchip to build rootfs yourselves.

Buildroot

you could refer to RK3399 Linux Buildroot System Development Guide from Rockchip to build rootfs yourselves.


Devices

Rockchip: Excavator_sapphire_board

Firefly: Firefly-RK3399

If you need the rk3399-excavator board, please communicate through the following contact information.

Telephone: 4007700590     Email: service@rock-chips.com

See also

RK3288

RK3328

Owners of the SoC on IRC

Commuity Support

References

Exteneral Links