File:  [NetBSD Developer Wiki] / wikisrc / ports / evbarm / rockchip.mdwn
Revision 1.7: download - view: text, annotated - select for diffs
Wed Jan 8 06:50:41 2020 UTC (17 months, 2 weeks ago) by mrg
Branches: MAIN
CVS tags: HEAD
refer to the right files and the right uboot.

[[!meta title="NetBSD/evbarm on Fuzhou RockChip SoCs"]]

NetBSD supports several boards based on RockChip SoCs. Starting with NetBSD 9.0, FDT is used to configure devices. As a result, a large number of boards and configurations can be supported with a single kernel.

<img src="https://pbs.twimg.com/media/ENlmzo7UUAIfSM6.jpg" width="300">

[[!toc levels=2]]

# Supported SoCs

<table>
  <thead>
    <tr>
      <th>Family</th>
      <th>SoC</th>
      <th>NetBSD version</th>
      <th>Example boards</th>
      <th>Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr><td>RK3328</td><td>Rock64</td><td>9.0</td><td><a href="https://www.pine64.org/devices/single-board-computers/rock64/">Pine64 Rock64</a><td></td></tr>
    <tr><td>RK3399</td><td>Rock64</td><td>9.0</td><td><a href="https://www.pine64.org/rockpro64/">Pine64 RockPro64</a>, <a href="https://www.pine64.org/pinebook-pro/">Pine64 Pinebook Pro</a><td></td></tr>
  </tbody>
</table>

Other systems may work, but they have not been tested.

# Supported hardware

Please refer to the [GENERIC64 (64-bit)](https://nxr.netbsd.org/xref/src/sys/arch/evbarm/conf/GENERIC64) kernel configs for the most up-to-date list of supported hardware.

<table>
  <thead>
    <tr>
      <th>Device</th>
      <th>Supported</th>
      <th>Notes</th>
    </tr>
  </thead>
  <tbody>
    <tr><td>Audio codec</td><td>Yes</td><td></td></tr>
    <tr><td>Framebuffer</td><td>Yes</td><td>Uses simplefb configured by bootloader</td></tr>
    <tr><td>Gigabit Ethernet</td><td>Yes</td><td></td></tr>
    <tr><td>GPIO</td><td>Yes</td><td></td></tr>
    <tr><td>GPU</td><td>-</td><td></td></tr>
    <tr><td>I2C</td><td>Yes</td><td></td></tr>
    <tr><td>I2S/PCM</td><td>Experimental</td><td></td></tr>
    <tr><td>NAND</td><td>Yes</td><td></td></tr>
    <tr><td>P2WI/RSB</td><td>Yes</td><td></td></tr>
    <tr><td>PCIe</td><td>-</td><td></td></tr>
    <tr><td>PWM</td><td>Yes</td><td></td></tr>
    <tr><td>RTC</td><td>Yes</td><td></td></tr>
    <tr><td>SATA</td><td>Yes</td><td></td></tr>
    <tr><td>SD/MMC</td><td>Yes</td><td></td></tr>
    <tr><td>SMP</td><td>Yes</td><td></td></tr>
    <tr><td>SPDIF</td><td>-</td><td></td></tr>
    <tr><td>SPI</td><td>Yes</td><td></td></tr>
    <tr><td>Thermal sensors</td><td>Yes</td><td></td></tr>
    <tr><td>UART</td><td>Yes</td><td></td></tr>
    <tr><td>USB 2.0</td><td>Yes</td><td></td></tr>
    <tr><td>USB 3.0</td><td>Yes</td><td></td></tr>
    <tr><td>Watchdog timer</td><td>Yes</td><td></td></tr>
  </tbody>
</table>

# Installation

- Download or build **arm64.img** (64-bit) from NetBSD 9.0 or later
- Write the image to disk: **dd if=arm64.img of=/dev/rld0d bs=1m conv=sync**
- Install a board-specific U-Boot from pkgsrc to the SD card
  **dd if=/usr/pkg/share/u-boot/&lt;boardname&gt;/rkspi_loader.img of=/dev/rld0d seek=64 conv=sync**

If your SoC has a SATA controller and you would like to install on
an hard disk and use a SD card only for u-boot please give a look
to
[[NetBSD/evbarm install via sysinst(8) on a SATA hard disk, USB stick or (u)SD card|ports/evbarm/install_using_sysinst]].

# Tips and tricks

# Links

- [[NetBSD/evbarm install via sysinst(8) on a SATA hard disk, USB stick or (u)SD card|ports/evbarm/install_using_sysinst]]

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb