RK3328: new device

This commit is contained in:
Jonas Karlman 2018-02-11 23:00:03 +01:00
parent 4abbfa0d50
commit 5d232f6ee9
13 changed files with 45 additions and 4954 deletions

View File

@ -29,7 +29,7 @@ PKG_SECTION="multimedia"
PKG_SHORTDESC="rkmpp: Rockchip Media Process Platform (MPP) module"
PKG_LONGDESC="rkmpp: Rockchip Media Process Platform (MPP) module"
if [ "$UBOOT_SYSTEM" = "rk3328" -o "$UBOOT_SYSTEM" = "rk3399" ]; then
if [ "$DEVICE" = "RK3328" -o "$DEVICE" = "RK3399" ]; then
PKG_ENABLE_VP9D="ON"
else
PKG_ENABLE_VP9D="OFF"

View File

@ -4,11 +4,15 @@ This project is for Rockchip SoC devices
## Devices
**RK3288**
* [ASUS Tinker Board](devices/TinkerBoard)
* [PINE64 ROCK64](devices/ROCK64)
* [mqmaker MiQi](devices/MiQi)
* [Popcorn Hour RockBox](devices/RockBox)
* [Firefly ROC-RK3328-CC](devices/Renegade)
**RK3328**
* [PINE64 ROCK64](devices/RK3328)
* [Popcorn Hour RockBox](devices/RK3328)
* [Popcorn Hour Transformer](devices/RK3328)
* [Firefly ROC-RK3328-CC](devices/RK3328)
**My single-board computer is not listed, will it be added in the future?**<br />
If your single-board computer uses a current generation SoC listed on http://opensource.rock-chips.com/wiki_Main_Page the odds are in your favor.

View File

@ -17,8 +17,13 @@
################################################################################
PKG_RKBIN="$(get_build_dir rkbin)"
PKG_SOC=$UBOOT_SYSTEM
case "$UBOOT_SYSTEM" in
if [ "$DEVICE" = "RK3328" -o "$DEVICE" = "RK3399" ]; then
PKG_SOC="${DEVICE/RK/rk}"
fi
case "$PKG_SOC" in
rk3036)
PKG_DATAFILE="spl/u-boot-spl-nodtb.bin"
PKG_LOADER="u-boot-dtb.bin"
@ -40,7 +45,7 @@ case "$UBOOT_SYSTEM" in
esac
if [ -n "$PKG_DATAFILE" -a -n "$PKG_LOADER" ]; then
tools/mkimage -n $UBOOT_SYSTEM -T rksd -d "$PKG_DATAFILE" idbloader.img
tools/mkimage -n $PKG_SOC -T rksd -d "$PKG_DATAFILE" idbloader.img
cat "$PKG_LOADER" >> idbloader.img
cp -av idbloader.img $INSTALL/usr/share/bootloader
fi

View File

@ -0,0 +1,17 @@
# RK3328
This is a SoC device for RK3328
**Build**
* `PROJECT=Rockchip DEVICE=RK3328 ARCH=arm UBOOT_SYSTEM=box make image`
* `PROJECT=Rockchip DEVICE=RK3328 ARCH=arm UBOOT_SYSTEM=box-plus make image`
* `PROJECT=Rockchip DEVICE=RK3328 ARCH=arm UBOOT_SYSTEM=roc-cc make image`
* `PROJECT=Rockchip DEVICE=RK3328 ARCH=arm UBOOT_SYSTEM=rock64 make image`
* `PROJECT=Rockchip DEVICE=RK3328 ARCH=arm UBOOT_SYSTEM=rockbox make image`
**How to use on an Android device**
- Flash image to a sd-card
- Insert sd-card into the device
- Plug in power and LibreELEC should boot instead of Android
- Remove sd-card from device to boot into Android

View File

@ -21,14 +21,16 @@
;;
esac
# Configuration for u-boot
UBOOT_SYSTEM="rk3328"
# Kernel target
KERNEL_TARGET="Image"
# Additional kernel make parameters (for example to specify the u-boot loadaddress)
KERNEL_MAKE_EXTRACMD="rockchip/rk3328-rockbox.dtb"
KERNEL_MAKE_EXTRACMD=""
KERNEL_MAKE_EXTRACMD+=" rockchip/rk3328-box.dtb"
KERNEL_MAKE_EXTRACMD+=" rockchip/rk3328-box-plus.dtb"
KERNEL_MAKE_EXTRACMD+=" rockchip/rk3328-roc-cc.dtb"
KERNEL_MAKE_EXTRACMD+=" rockchip/rk3328-rock64.dtb"
KERNEL_MAKE_EXTRACMD+=" rockchip/rk3328-rockbox.dtb"
# Mali GPU family
MALI_FAMILY="450"

View File

@ -1,47 +0,0 @@
# PINE64 ROCK64
This is an experimental project for the PINE64 ROCK64
**Progress**
* [x] LEDs
* [x] IR
* [x] CEC
* [ ] Audio
* [x] HDMI Stereo L-PCM
* [x] HDMI Multi-channel L-PCM
* [x] ACODEC A/V jack + I2S DAC
* [x] Split into two devices (A/V jack and I2S DAC)
* [x] SPDIF
* [ ] HDMI NL-PCM (AC3/E-AC3/DTS)
* [ ] HDMI HBR (TrueHD/DTS-HD)
* [ ] Video
* [x] Software decoding
* [ ] Hardware decoding
* [x] h264 / hevc / vp8 / vp9
* [ ] mpeg4 / mpeg2
* [ ] HDMI Video Format
* [x] RGB 4:4:4 Limited Range
* [ ] RGB 4:4:4 Full Range
* [ ] YCbCr 4:4:4
* [ ] YCbCr 4:2:0
* [ ] HDR10 / HLG
**Known Issues/Limitations**
* Video output is RGB 4:4:4 8-bit limited range
* Video aspect ratio / zoom is not working for all modes
* 4K resolution is limited to 30hz
**Serial Console**
* UART2 on Pi-2 Bus pin 8/10 with baud rate 1500000
**Build**
* `PROJECT=Rockchip DEVICE=ROCK64 ARCH=aarch64 make image`
* `PROJECT=Rockchip DEVICE=ROCK64 ARCH=arm make image`
## Links
* Community Forum: https://forum.pine64.org/forumdisplay.php?fid=85

View File

@ -1,40 +0,0 @@
################################################################################
# setup device defaults
################################################################################
# The TARGET_CPU variable controls which processor should be targeted for
# generated code.
case $TARGET_ARCH in
aarch64)
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc+crypto"
TARGET_FEATURES="64bit neon"
;;
arm)
TARGET_KERNEL_ARCH="arm64"
TARGET_PATCH_ARCH="aarch64"
TARGET_FLOAT="hard"
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc"
TARGET_FPU="crypto-neon-fp-armv8"
TARGET_FEATURES="32bit neon"
;;
esac
# Configuration for u-boot
UBOOT_SYSTEM="rk3328"
# Kernel target
KERNEL_TARGET="Image"
# Additional kernel make parameters (for example to specify the u-boot loadaddress)
KERNEL_MAKE_EXTRACMD="rockchip/rk3328-rock64.dtb"
# Mali GPU family
MALI_FAMILY="450"
# kernel image name
KERNEL_NAME="Image"
# kernel serial console
EXTRA_CMDLINE="console=uart8250,mmio32,0xff130000 console=tty0"

View File

@ -1,40 +0,0 @@
################################################################################
# setup device defaults
################################################################################
# The TARGET_CPU variable controls which processor should be targeted for
# generated code.
case $TARGET_ARCH in
aarch64)
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc+crypto"
TARGET_FEATURES="64bit neon"
;;
arm)
TARGET_KERNEL_ARCH="arm64"
TARGET_PATCH_ARCH="aarch64"
TARGET_FLOAT="hard"
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc"
TARGET_FPU="crypto-neon-fp-armv8"
TARGET_FEATURES="32bit neon"
;;
esac
# Configuration for u-boot
UBOOT_SYSTEM="rk3328"
# Kernel target
KERNEL_TARGET="Image"
# Additional kernel make parameters (for example to specify the u-boot loadaddress)
KERNEL_MAKE_EXTRACMD="rockchip/rk3328-roc-cc.dtb"
# Mali GPU family
MALI_FAMILY="450"
# kernel image name
KERNEL_NAME="Image"
# kernel serial console
EXTRA_CMDLINE="console=uart8250,mmio32,0xff130000 console=tty0"

View File

@ -1,44 +0,0 @@
# Popcorn Hour RockBox
This is an experimental project for the Popcorn Hour RockBox Basic
**Progress**
* [x] LEDs
* [x] IR
* [x] CEC
* [ ] Audio
* [x] HDMI Stereo L-PCM
* [x] HDMI Multi-channel L-PCM
* [x] SPDIF
* [ ] HDMI NL-PCM (AC3/E-AC3/DTS)
* [ ] HDMI HBR (TrueHD/DTS-HD)
* [ ] Video
* [x] Software decoding
* [ ] Hardware decoding
* [x] h264 / hevc / vp8 / vp9
* [ ] mpeg4 / mpeg2
* [ ] HDMI Video Format
* [x] RGB 4:4:4 Limited Range
* [ ] RGB 4:4:4 Full Range
* [ ] YCbCr 4:4:4
* [ ] YCbCr 4:2:0
* [ ] HDR10 / HLG
* [x] WiFi
**Known Issues/Limitations**
* Video output is RGB 4:4:4 8-bit limited range
* Video aspect ratio / zoom is not working for all modes
* 4K resolution is limited to 30hz
**Build**
* `PROJECT=Rockchip DEVICE=RockBox ARCH=aarch64 make image`
* `PROJECT=Rockchip DEVICE=RockBox ARCH=arm make image`
**How to use**
- Flash image to a sd-card
- Insert sd-card into the device
- Plug in power and LibreELEC should boot instead of Android
- Remove sd-card from device to boot into Android

View File

@ -11,9 +11,13 @@ devices = {
'Rockchip' : {
'MiQi' : { 'rk3288' : { 'dtb' : 'rk3288-miqi.dtb', 'config' : 'miqi-rk3288_config' }, },
'Renegade' : { 'rk3328' : { 'dtb' : 'rk3328-roc-cc.dtb', 'config' : 'evb-rk3328_defconfig' }, },
'ROCK64' : { 'rk3328' : { 'dtb' : 'rk3328-rock64.dtb', 'config' : 'evb-rk3328_defconfig' }, },
'RockBox' : { 'rk3328' : { 'dtb' : 'rk3328-rockbox.dtb', 'config' : 'evb-rk3328_defconfig' }, },
'RK3328' : {
'box' : { 'dtb' : 'rk3328-box.dtb', 'config' : 'evb-rk3328_defconfig' },
'box-plus' : { 'dtb' : 'rk3328-box-plus.dtb', 'config' : 'evb-rk3328_defconfig' },
'roc-cc' : { 'dtb' : 'rk3328-roc-cc.dtb', 'config' : 'evb-rk3328_defconfig' },
'rock64' : { 'dtb' : 'rk3328-rock64.dtb', 'config' : 'evb-rk3328_defconfig' },
'rockbox' : { 'dtb' : 'rk3328-rockbox.dtb', 'config' : 'evb-rk3328_defconfig' },
},
'TinkerBoard' : { 'rk3288' : { 'dtb' : 'rk3288-miniarm.dtb', 'config' : 'tinker-rk3288_config' }, },
},
}