1: [[!meta title="NetBSD/evbarm on Fuzhou RockChip SoCs"]]
2:
3: 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.
4:
5: <img src="https://pbs.twimg.com/media/ENlmzo7UUAIfSM6.jpg" width="300">
6:
7: [[!toc levels=2]]
8:
9: # Supported SoCs
10:
11: <table>
12: <thead>
13: <tr>
14: <th>Family</th>
15: <th>SoC</th>
16: <th>NetBSD version</th>
17: <th>Example boards</th>
18: <th>Notes</th>
19: </tr>
20: </thead>
21: <tbody>
22: <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>
23: <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>
24: </tbody>
25: </table>
26:
27: Other systems may work, but they have not been tested.
28:
29: # Supported hardware
30:
31: 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.
32:
33: <table>
34: <thead>
35: <tr>
36: <th>Device</th>
37: <th>Supported</th>
38: <th>Notes</th>
39: </tr>
40: </thead>
41: <tbody>
42: <tr><td>Audio codec</td><td>Yes</td><td></td></tr>
43: <tr><td>Framebuffer</td><td>Yes</td><td>Uses simplefb configured by bootloader</td></tr>
44: <tr><td>Gigabit Ethernet</td><td>Yes</td><td></td></tr>
45: <tr><td>GPIO</td><td>Yes</td><td></td></tr>
46: <tr><td>GPU</td><td>-</td><td></td></tr>
47: <tr><td>I2C</td><td>Yes</td><td></td></tr>
48: <tr><td>I2S/PCM</td><td>Experimental</td><td></td></tr>
49: <tr><td>NAND</td><td>Yes</td><td></td></tr>
50: <tr><td>P2WI/RSB</td><td>Yes</td><td></td></tr>
51: <tr><td>PCIe</td><td>-</td><td>H6</td></tr>
52: <tr><td>PWM</td><td>Yes</td><td></td></tr>
53: <tr><td>RTC</td><td>Yes</td><td></td></tr>
54: <tr><td>SATA</td><td>Yes</td><td></td></tr>
55: <tr><td>SD/MMC</td><td>Yes</td><td></td></tr>
56: <tr><td>SMP</td><td>Yes</td><td></td></tr>
57: <tr><td>SPDIF</td><td>-</td><td></td></tr>
58: <tr><td>SPI</td><td>Yes</td><td></td></tr>
59: <tr><td>Thermal sensors</td><td>Yes</td><td></td></tr>
60: <tr><td>UART</td><td>Yes</td><td></td></tr>
61: <tr><td>USB 2.0</td><td>Yes</td><td></td></tr>
62: <tr><td>USB 3.0</td><td>Yes</td><td></td></tr>
63: <tr><td>Watchdog timer</td><td>Yes</td><td></td></tr>
64: </tbody>
65: </table>
66:
67: # Installation
68:
69: - Download or build **arm64.img** (64-bit) from NetBSD 9.0 or later
70: - Write the image to disk: **dd if=armv7.img of=/dev/rld0d bs=1m conv=sync**
71: - Install a board-specific U-Boot (2018.05 or later) from pkgsrc to the SD card
72: **dd if=/usr/pkg/share/u-boot/<boardname>/rkspi_loader.img of=/dev/rld0d seek=64 conv=sync**
73:
74: If your SoC has a SATA controller and you would like to install on
75: an hard disk and use a SD card only for u-boot please give a look
76: to
77: [[NetBSD/evbarm install via sysinst(8) on a SATA hard disk, USB stick or (u)SD card|ports/evbarm/install_using_sysinst]].
78:
79: # Tips and tricks
80:
81: # Links
82:
83: - [[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