精华内容
下载资源
问答
  • Rockchip

    2021-01-22 13:40:29
    https://github.com/rockchip-linux https://github.com/rockchip-linux/mpp https://github.com/rockchip-linux/linux-rga
    展开全文
  • Rockchip | Rockchip固件升级工具

    Rockchip提供了将固件升级到板载存储介质(如eMMC/NAND/SPI flash)的工具。

    以下是各个固件升级工具:

    工具名称 来源 OSS 描述
    Upgrade_tool Rockchip N 官方在SDK发布的Linux平台下烧写工具
    rkdeveloptool Rockchip Y upgrade_tool的开源版本
    rkflashtool Community Y 第三方维护的开源版本
    Android Tool Rockchip N Rockchip官方在SDK发布的Windows平台下烧写工具

    如果使用SD卡进行固件存储,那么就不需要固件升级工具,我们可以在Linux操作系统中使用'dd'命令进行烧写。

    下面介绍一下upgrade_tool与rkdeveloptool工具:


    1 upgrade_tool

     upgrade_tool是一个Linux平台下用于固件升级工具。您可以在[Linux SDK root]/ tools/linux/Linux_Upgrade_Tool中找到它。

    为了使用upgrade_tool,确保可以先执行它。

    chmod 777 ./tools/linux/Linux_Upgrade_Tool/upgrade_tool
    

    使用upgradetool烧写镜像。请确保设备处于maskrom rockusb mode。  进入到rockimg目录:

    cd rockimg

    使用下面的命令来烧写镜像。让我们以RK3399为例。只需将rk3399_loader_v1.09.112.bin更改为当前正在使用的版本。

    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool ul rk3399_loader_v1.09.112.bin
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool di -p parameter.txt
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool di -u uboot.img
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool di -t trust.img
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool di -re resource.img
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool di -k kernel.img
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool di -rootfs rootfs.img
    sudo ../tools/linux/Linux_Upgrade_Tool/upgrade_tool rd #重启目标机器

    2 rkdeveloptool

    rkdeveloptool是Rockchip提供的一个与Rockusb设备进行通信的工具,它被认为是upgrade_tool 的一个开源版本,只有很少区别。

    2.1 下载rkdeveloptool

    获取rkdeveloptool的源代码:

    git clone https://github.com/rockchip-linux/rkdeveloptool.git
    
    

    2.2 构建rkdeveloptool

    首先安装libusb与udev,例如对于Ubuntu:

    sudo apt-get install libudev-dev libusb-1.0-0-dev dh-autoreconf

    然后:

    autoreconf -i
    ./configure
    make
    make install
    

    如果遇到如下编译错误:

    ./configure: line 4269: syntax error near unexpected token `LIBUSB1,libusb-1.0'
    ./configure: line 4269: `PKG_CHECK_MODULES(LIBUSB1,libusb-1.0)'
    

    还需要安装pkg-config与libusb-1.0:

    sudo apt-get install pkg-config libusb-1.0 
    

    2.3 用法

    2.3.1 支持命令

    Tool Usage ---------------------
    
    Help:             -H
    Version:          -V
    DownloadBoot:    DB <Loader>
    UpgradeLoader:    UL <Loader>
    ReadLBA:        RL  <BeginSec> <SectorLen> <File>
    WriteLBA:        WL  <BeginSec> <File>
    WriteGPT:       GPT <parameter>
    EraseFlash:        EF 
    TestDevice:        TD
    ResetDevice:    RD [subcode]
    ReadFlashID:    RID
    ReadFlashInfo:    RFI
    ReadChipInfo:    RCI
    -------------------------------------------------------

    2.3.2 烧写镜像到eMMC

    为了烧写镜像到eMMC

    1. 确保目标机器进入 rockusb mode
    2. 通过USB连接目标机器到PC机;
    3. 使用命令烧写镜像到eMMC;
    • 使用下载引导命令去使目标机器初始化DRAM与运行usbplug;
    rkdeveloptool db rkxx_loader_vx.xx.bin
    • 使用wl 命令烧写镜像到目标机器,这个步骤步骤可以重复多次;
    rkdeveloptool wl 0x40 idbLoader.img
    rkdeveloptool wl 0x4000 uboot.img
    rkdeveloptool wl 0x8000 boot.img
    rkdeveloptool wl 0x40000 rootfs.img
    • 使用ul 命令从rockchip loader烧写idbloader到idb;
    rkdeveloptool ul rkxx_loader_vx.xx.bin

    注意: 前面使用ul 命令与下面的操作命令类似,只是使用来源不一样。

    rkdeveloptool wl 0x40 idbLoader.img

    注意: rkdeveloptool(ul= wl idbloader)ul 命令的使用与upgrade_tool(ul = db + wl idbloader + rd)是不一样的。

    • 使用gpt 命令烧写parameter_gpt.txt到gpt分区
    rkdeveloptool gpt parameter_gpt.txt
    • 在烧写镜像完成后使用rd 命令重启目标机器
    rkdeveloptool rd
    展开全文
  • Rockchip TRM.rar

    2021-06-03 18:35:11
    Rockchip TRM
  • Rockchip Electronics

    2010-03-15 21:53:58
    Rockchip Electronics,Rockchip Electronics,Rockchip Electronics
  • rockchip 2708

    2010-03-15 21:55:59
    rockchip 2708,rockchip 2708,rockchip 2708,rockchip 2708 datasheet
  • Rockchip USB驱动工具

    2018-06-26 20:25:23
    Rockchip USB驱动工具Rockchip USB驱动工具Rockchip USB驱动工具
  • rockchip usb 驱动

    2016-05-06 21:55:02
    rockchip usb 驱动
  • Rockchip RK3368

    2018-05-14 09:49:59
    Rockchip RK3368 Datasheet V1.1 20150518,瑞芯微芯片手册
  • Rockchip Kernel的获取与构建

    1 下载Kernel

    可以 github 克隆 rockchip 内核存储库,它是从基于 kernel 4.4:

    git clone https://github.com/rockchip-linux/kernel.git

    2 支持的SoCs和Devices

    Rockchip kernel 4.4 支持:

    RK3036, RK3066, RK312X, RK3188, RK322X,RK3288RK3328, RK3368, RK3399, PX30


    3 内核配置与构建

    在 Linux OS 平台上使用 rockchip_linux_defconfig。

    对于ARM v7:

    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- rockchip_linux_defconfig
    make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- -j4

    对于ARM V8:

    make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- rockchip_linux_defconfig
    make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j4

    执行以上命令构建成功后,会输出 Image/zImage 与 dtb 文件,以提供启动 Linux 发行版。

    Rockchip RKIMG格式镜像

    RKIMG是Rockchip根据Android引导镜像定制的格式,通常只供内核开发人员使用。它由Rockchip U-Boot提供支持。

    例如使用一下命令构建 rk3399-evb:

    make rk3399-evb.img

    输出如下所示,boot.img 是带有 rockchip header 的 ramdisk,kernel.img 是带有 rockchip header的 zImage/Image,resource.img 是 dtb 和 带有 rockchip header的启动 logo。

    kernel/
    ├── boot.img
    ├── kernel.img
    └── resource.img

    4 安装Boot/kernel到Linux发行版

    如果在发行版中使用 U-Boot 启动,需要为 U-boot 创建一个引导分区,其中包含 kernel 镜像和 dtb。

    mkdir boot
    cp arch/arm64/boot/dts/rockchip/rk3399-evb.dtb boot/rk3399.dtb
    cp arch/arm64/boot/Image boot/

    增加 extlinux/extlinux.conf 文件到发行版 boot 目录。

    mkdir boot/extlinux
    vi boot/extlinux/extlinux.conf
    label rockchip-kernel-4.4
        kernel /Image
        fdt /rk3399.dtb
        append earlycon=uart8250,mmio32,0xff1a0000 root=PARTUUID=B921B045-1D rootwait rootfstype=ext4 init=/sbin/init

    对于armv7:

    label rockchip-kernel-4.4
        kernel /zImage
        fdt /rk3288.dtb
        append earlyprintk console=ttyS2,1500000n8 rw root=PARTUUID=69dad710-2c rootwait rootfstype=ext4 init=/sbin/init

    需要更改debug UART的基址,即主板的 root 分区。

    对于根文件系统分区和引导 flash 的地方,请参考 rockchip Linux parttion definition

    在所有这些文件完全准备好之后,将文件写入引导分区。

    对于armv8(rk3399、rk3328),文件夹树如下:

    boot
    ├── extlinux
    │   └── extlinux.conf
    ├── Image
    └── rk3399-evb.dtb

    对于armv7(rk3288),rootfs是可选的,而kernel 通常使用压缩的 zImage:

    boot_rk3288/
    ├── extlinux
    │   └── extlinux.conf
    ├── rk3288-evb-rk808.dtb
    ├── rootfs.cpio.gz
    └── zImage

    4.1 生成ext2fs引导分区

    genext2fs:

    genext2fs -b 32768 -B $((32*1024*1024/32768)) -d boot/ -i 8192 -U boot_rk3399.img

    根据 Rockchip 的分区定义,还需要 flash 这个镜像到偏移地址是 0x8000 的引导分区。

    4.2 生成fatfs引导分区

    4.2.1 在fatfs中生成boot.img

    使用以下命令生成 fatfs 格式的 boot.img:

    dd if=/dev/zero of=boot.img bs=1M count=32
    sudo mkfs.fat boot.img
    mkdir tmp
    sudo mount boot.img tmp/
    cp -r boot/* tmp/
    umount tmp

    然后 flash 这个镜像到偏移地址是 0x8000 的引导分区。

    4.2.2 通过U-Boot升级boot.img

    在 flash 和引导 U-Boot 之后,从默认分区表中写入 gpt 表:

    gpt write mmc 0 $partitions
    gpt verify mmc 0 $partitions

    连接目标板到 PC ,接着启动通过 ums 命令:

    ums 0 mmc 1:6

    之后应该能够看到设备连接到 PC,然后格式化数据并将数据复制到分区(例如dev/sdb6)。

    sudo mkfs.fat /dev/sdb6
    cp -r boot/* /media/machine/9F35-9565/

    4.3 从U-Boot引导

    如果使用 genext2fs 来生成boot.img,需要在 U-Boot 命令行中写入 gpt 表:

    gpt write mmc 0 $partitions

    然后从 eMMC 引导或者重启:

    boot

    如果正常执行,会看到类似以下 U-Boot 日志:

    switch to partitions #0, OK
    mmc0(part 0) is current device
    Scanning mmc 0:6...
    Found /extlinux/extlinux.conf
    Retrieving file: /extlinux/extlinux.conf
    205 bytes read in 82 ms (2 KiB/s)
    1:      upstream-4.10
    Retrieving file: /Image
    13484040 bytes read in 1833 ms (7 MiB/s)
    append: earlycon=uart8250,mmio32,0xff1a0000 console=ttyS2,1500000n8 rw root=PARTUUID=B921B045-1D rootwait rootfstype=ext4 init=/sbin/init
    Retrieving file: /rk3399.dtb
    61714 bytes read in 54 ms (1.1 MiB/s)
    ## Flattened Device Tree blob at 01f00000
       Booting using the fdt blob at 0x1f00000
       Loading Device Tree to 000000007df14000, end 000000007df26111 ... OK
    
    Starting kernel ...

     

    展开全文
  • Rockchip Emulator

    2012-08-21 15:49:45
    Rockchip的一个模拟器 直接解压在c:盘下就能模拟了
  • ./arch/arm/include/asm/arch-rockchip/hotkey.h: /* SPDX-License-Identifier: GPL-2.0+ */ /* * (C) Copyright 2019 Rockchip Electronics Co., Ltd */ #ifndef _ROCKCHIP_HOTKEY_H_ #define _ROCKCHIP_HOTKEY_...

    一、源代码

    1、头文件

    ./arch/arm/include/asm/arch-rockchip/hotkey.h

    /* SPDX-License-Identifier:     GPL-2.0+ */
    /*
     * (C) Copyright 2019 Rockchip Electronics Co., Ltd
     */
    #ifndef _ROCKCHIP_HOTKEY_H_
    #define _ROCKCHIP_HOTKEY_H_
    enum hotkey_t {
        HK_INVAL,
        HK_BROM_DNL,
        HK_CLI_OS_PRE,
        HK_CLI_OS_GO,
        HK_CMDLINE,
        HK_FASTBOOT,
        HK_FDT,
        HK_INITCALL,
        HK_REGULATOR,
        HK_ROCKUSB_DNL,
        HK_SYSMEM,
    };
    bool is_hotkey(enum hotkey_t id);
    void hotkey_run(enum hotkey_t id);
    #endif
    

    2、C文件

    ./arch/arm/mach-rockchip/hotkey.c

    // SPDX-License-Identifier: GPL-2.0
    /*
     * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
     */
    #include <common.h>
    #include <bidram.h>
    #include <cli.h>
    #include <console.h>
    #include <sysmem.h>
    #include <asm/arch/hotkey.h>
    DECLARE_GLOBAL_DATA_PTR;
    #define CTRL_A      0x01    /* shell(cli) on BOOTM_STATE_OS_PREP */
    #define CTRL_B      0x02    /* bootrom mode */
    #define CTRL_D      0x04    /* download mde */
    #define CTRL_F      0x06    /* fastboot mode */
    #define CTRL_I      0x09    /* inicall debug for kernel */
    #define CTRL_M      0x0d    /* memory(sysmem/bidram) */
    #define CTRL_P      0x10    /* parameter(cmdline) dump */
    #define CTRL_R      0x12    /* regulator initial state dump */
    #define CTRL_S      0x13    /* shell(cli) on BOOTM_STATE_OS_GO */
    #define CTRL_T      0x14    /* print fdt */
    bool is_hotkey(enum hotkey_t id)
    {
        switch (id) {
        case HK_CMDLINE:
            return gd->console_evt == CTRL_P;
        case HK_INITCALL:
            return gd->console_evt == CTRL_I;
        case HK_REGULATOR:
            return gd->console_evt == CTRL_R;
        case HK_SYSMEM:
            return gd->console_evt == CTRL_M;
        case HK_BROM_DNL:
            return gd->console_evt == CTRL_B;
    #ifndef CONFIG_CONSOLE_DISABLE_CLI
        case HK_ROCKUSB_DNL:
            return gd->console_evt == CTRL_D;
        case HK_FASTBOOT:
            return gd->console_evt == CTRL_F;
    #endif
        default:
            break;
        }
        return false;
    }
    void hotkey_run(enum hotkey_t id)
    {
        switch ((id)) {
        case HK_SYSMEM:
            if (gd->console_evt == CTRL_M) {
                bidram_dump();
                sysmem_dump();
            }
            break;
        case HK_CMDLINE:
            if (gd->console_evt == CTRL_P)
                printf("cmdline: %s\n", env_get("bootargs"));
            break;
        case HK_INITCALL:
            if (gd->console_evt == CTRL_I)
                env_update("bootargs", "initcall_debug debug");
            break;
        case HK_FDT:
            if (gd->console_evt == CTRL_T)
                run_command("fdt print", 0);
            break;
        case HK_CLI_OS_PRE:
            if (gd->console_evt == CTRL_A)
                cli_loop();
            break;
        case HK_CLI_OS_GO:
            if (gd->console_evt == CTRL_S)
                cli_loop();
            break;
        default:
            break;
        }
    }
    

    二、各热键操作

    操作 热键
    CTRL_A HK_CLI_OS_PRE
    CTRL_B HK_BROM_DNL
    CTRL_D HK_ROCKUSB_DNL
    CTRL_F HK_FASTBOOT
    CTRL_I HK_INITCALL
    CTRL_M HK_SYSMEM
    CTRL_P HK_CMDLINE
    CTRL_R HK_REGULATOR
    CTRL_S HK_CLI_OS_GO
    CTRL_T HK_FDT
    展开全文
  • rockchip sensor 开发指南

    2018-12-18 17:44:23
    rockchip sensor 开发指南,介绍rockchip平台sensor架构
  • rockchip px3 datatsheet

    2018-08-08 10:46:35
    rockchip px3 datasheet 文档,开发参考资料,下载参考调试文档
  • Rockchip U-Boot的获取与构建
  • Rockchip Android Widevine开发指南
  • rockchip_drm框架介绍

    2021-04-21 14:50:19
    rockchip_drm的框架介绍,里面还有我收集的DRM框架的基础知识以及对rockchip_drm的一系列代码的解释
  • 适用于Rockchip SOCLinux内核 制作说明: 运行“ make mrproper”以确保您没有陈旧的.o文件和依赖项 运行“ ./build_omegamoon_mk908”以使用预构建工具链为MK908编译内核 使用Linux的MK908设备的Flash说明(使用...
  • Rockchip Xserver的获取、构建与调试
  • rockchip发布说明

    2017-09-25 15:16:07
    SDK 通过瑞芯微代码服务器对外发布。其编译开发环境,参考附录 1。 客户向瑞芯微技术窗口申请 SDK,需同步提供 SSH 公钥进行服务器认证授权... RK3288_ANDROID5.1_SDK 下载地址如下: repo init --repo-url ssh://git@...
  • Rockchip ROS使用指南.pdf

    2020-05-07 12:20:55
    Rockchip Linux SDK 集成了 ROS。 ROS 提供一系列程序库和工具以帮助软件开发者创建机器人应用软件。 Rockchip 所集成的 ROS 版本为 Indigo Igloo。 基于的 Yocto 版本为 Rocko。
  • RockChip_Uboot 开发文档

    2018-08-16 14:14:05
    RockChip_Uboot 开发文档 ,RockChip_Uboot 开发文档,RockChip_Uboot 开发文档
  • 瑞芯微 Rockchip 固件解包,打包工具,固件修改专用工具。
  • rockchip-Secureboot+介绍

    2018-03-24 08:50:35
    rockchip-Secureboot+介绍 rockchip-Secureboot+介绍
  • Rockchip Android 11 开发人员
  • rockchip rk3128/. rk3288, rk3399 等 按键 驱动 代码 详解
  • rockchip rv1108 datasheet

    2018-08-08 10:51:15
    rockchip rv1108 datasheet ,开发参考,调试文档,下载参考
  • 打包用于Rockchip平台Linux固件(aka update.img)的工具。 如何使用它 准备内核和rootfs 跑步 ./getimage.sh # Download the kernel and rootfs from dl.radxa.com 或者 mkdir Linux 将命名为boot-linux.img并将...
  • Rockchip | Rockusb工具

    2020-12-19 21:57:48
    Rockchip | Rockusb工具
  • rockchip ota升级服务源码,可支持update.img,update.zip整包或差分包识别和升级接口,供参考
  • Rockchip_4.2_release_libstagefright 测试版可发布的Rockchip Android 4.2 libstagefright源代码

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,387
精华内容 2,554
关键字:

rockchip