All Projects → JeffyCN → meta-rockchip

JeffyCN / meta-rockchip

Licence: Unknown, MIT licenses found Licenses found Unknown LICENSE MIT COPYING.MIT
Yocto BSP layer for the Rockchip SOC boards

Programming Languages

c
50402 projects - #5 most used programming language
BitBake
79 projects
C++
36643 projects - #6 most used programming language
shell
77523 projects
pascal
1382 projects
NASL
115 projects
Makefile
30231 projects

Projects that are alternatives of or similar to meta-rockchip

linux
Linux kernel for Khadas VIMs & Edge
Stars: ✭ 102 (+251.72%)
Mutual labels:  rockchip, rk3399
khadas-openwrt
openwrt for Khadas boards
Stars: ✭ 25 (-13.79%)
Mutual labels:  rockchip, rk3399
meta-marsboard-bsp
Yocto BSP Layer for Embest Tech iMX6 MarS Board
Stars: ✭ 48 (+65.52%)
Mutual labels:  yocto
xrock
The low level tools for rockchip SOC with maskrom and loader mode support.
Stars: ✭ 48 (+65.52%)
Mutual labels:  rockchip
build-beikeyun
scripts for build beikeyun firmware
Stars: ✭ 81 (+179.31%)
Mutual labels:  rockchip
meta-quectel-community
Yocto Layer which provides basic support for Quectel wireless modules
Stars: ✭ 25 (-13.79%)
Mutual labels:  yocto
meta-iota
OpenEmbedded layer for the IOTA Distributed Ledger
Stars: ✭ 41 (+41.38%)
Mutual labels:  yocto
meta-openwrt
OE/Yocto metadata layer for OpenWRT
Stars: ✭ 75 (+158.62%)
Mutual labels:  yocto
meta-scipy
OpenEmbedded layer for scipy (ARCHIVED)
Stars: ✭ 20 (-31.03%)
Mutual labels:  yocto
microblx
microblx: real-time, embedded, reflective function blocks.
Stars: ✭ 37 (+27.59%)
Mutual labels:  yocto
AnberPorts
AnberPorts for Anbernic RG351P/M and RG351V running ArkOS, 351elec and The RA.
Stars: ✭ 86 (+196.55%)
Mutual labels:  rockchip
meta-pelux
PELUX is an open source, GENIVI compliant development platform that supports the Qt Automotive Suite
Stars: ✭ 34 (+17.24%)
Mutual labels:  yocto
yocto-tinkerboard
Yocto Sources for Tinkerboard
Stars: ✭ 23 (-20.69%)
Mutual labels:  yocto
nixos-on-arm
Cross Compiling NixOS to ARM as a replacement for Yocto
Stars: ✭ 129 (+344.83%)
Mutual labels:  yocto
pyrex
Seamless container setup for developing with OpenEmbedded/Yocto Project
Stars: ✭ 27 (-6.9%)
Mutual labels:  yocto
yocto-whitepaper-examples
Example code included in the "Improving Your Embedded Linux Security Posture with Yocto" whitepaper
Stars: ✭ 14 (-51.72%)
Mutual labels:  yocto
freedom-u-sdk
Freedom U Software Development Kit (FUSDK)
Stars: ✭ 246 (+748.28%)
Mutual labels:  yocto
tn3399 v3
TN3399_V3 开发板折腾记录
Stars: ✭ 66 (+127.59%)
Mutual labels:  rk3399
kas
Setup tool for bitbake based projects
Stars: ✭ 178 (+513.79%)
Mutual labels:  yocto
amlogic-s9xxx-openwrt
OpenWrt for Amlogic and Rockchip. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, rk3588, rk3568, rk3288, etc. including install to EMMC and update related functions.
Stars: ✭ 724 (+2396.55%)
Mutual labels:  rockchip

meta-rockchip

Yocto BSP layer for the Rockchip SOC boards

This README file contains information on building and booting the meta-rockchip BSP layers.

Please see the corresponding sections below for details.

Dependencies

This layer depends on:

  • URI: git://git.yoctoproject.org/poky

  • branch: kirkstone

  • URI: git://git.openembedded.org/meta-openembedded

  • layers: meta-oe

  • branch: kirkstone

Table of Contents

I. Configure yocto/oe Environment

II. Building meta-rockchip BSP Layers

III. Booting your Device

IV. Tested Hardwares

V. Supporting new Machine

I. Configure yocto/oe Environment

In order to build an image with BSP support for a given release, you need to download the corresponding layers described in the "Dependencies" section. Be sure that everything is in the same directory.

~ $ mkdir yocto; cd yocto
~/yocto $ git clone git://git.yoctoproject.org/poky -b kirkstone
~/yocto $ git clone git://git.openembedded.org/meta-openembedded.git -b kirkstone

And put the meta-rockchip layer here too.

Then you need to source the configuration script:

~/yocto $ source poky/oe-init-build-env

Having done that, you can build a image for a rockchip board by adding the location of the meta-rockchip layer to bblayers.conf, along with any other layers needed.

For example:

# build/conf/bblayers.conf
BBLAYERS ?= " \
  ${TOPDIR}/../meta-rockchip \
  ${TOPDIR}/../poky/meta \
  ${TOPDIR}/../poky/meta-poky \
  ${TOPDIR}/../poky/meta-yocto-bsp \
  ${TOPDIR}/../meta-openembedded/meta-oe \

To enable a particular machine, you need to add a MACHINE line naming the BSP to the local.conf file:

  MACHINE = "xxx"

All supported machines can be found in meta-rockchip/conf/machine.

II. Building meta-rockchip BSP Layers

You should then be able to build a image as such:

$ bitbake core-image-minimal

At the end of a successful build, you should have an .wic image in /path/to/yocto/build/tmp/deploy/<MACHINE>/, also with an rockchip firmware image: update.img.

III. Booting your Device

Under Linux, you can use upgrade_tool: http://opensource.rock-chips.com/wiki_Upgradetool to flash the image:

  1. Put your device into rockusb mode: http://opensource.rock-chips.com/wiki_Rockusb

  2. If it's maskrom rockusb mode, try to enter miniloader rockusb mode:

$ sudo upgrade_tool db \<IMAGE PATH\>/loader.bin
  1. Flash the image (wic image or rockchip firmware image)
$ sudo upgrade_tool wl 0 \<IMAGE PATH\>/\<IMAGE NAME\>.wic # For wic image
$ sudo upgrade_tool uf \<IMAGE PATH\>/update.img # For rockchip firmware image

IV. Tested Hardwares

The following undergo regular basic testing with their respective MACHINE types.

  • px3se evb board

  • rk3308 evb board

  • rk3326 evb board

  • px30 evb board

  • rk3328 evb board

  • rk3288 evb board

  • rk3399 sapphire excavator board

  • rk3399pro evb board

V. Supporting new Machine

To support new machine, you can either add new machine config in meta-rockchip/conf/machine, or choose a similar existing machine and override it's configurations in local config file.

In general, a new machine needs to specify it's u-boot config, kernel config, kernel device tree and wifi/bt firmware:

For example:

KBUILD_DEFCONFIG = "rk3326_linux_defconfig"
KERNEL_DEVICETREE = "rockchip/rk3326-evb-lp3-v10-linux.dtb"
UBOOT_MACHINE = "evb-rk3326_defconfig"
RK_WIFIBT_FIRMWARES = " \
        rkwifibt-firmware-ap6212a1-wifi \
        rkwifibt-firmware-ap6212a1-bt \
        brcm-tools \
"

If you want to use your own local u-boot and kernel sources, a simple way is to override related configurations in local config file.

For example using the kernel/ and u-boot/ in the same directory of meta-rockchip:

# build/conf/local.conf
SRC_URI:pn-linux-rockchip = " \
        git://${TOPDIR}/../kernel;protocol=file;usehead=1 \
        file://cgroups.cfg \
"
SRCREV:pn-linux-rockchip = "${AUTOREV}"
KBRANCH = "HEAD"

SRC_URI:pn-u-boot = " \
        git://${TOPDIR}/../u-boot;protocol=file;usehead=1 \
"
SRCREV:pn-u-boot = "${AUTOREV}"

Maintainers

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].