Annotation of wikisrc/ports/evbarm/allwinner.mdwn, revision 1.87
1.1 wiki 1: [[!meta title="NetBSD/evbarm on Allwinner Technology SoCs"]]
2:
1.61 wiki 3: NetBSD supports many boards based on Allwinner SoCs. Starting with NetBSD 8.0, FDT is used to configure devices. As a result, a large number of boards and configurations can be supported with a single kernel.
1.49 wiki 4:
1.63 wiki 5: <img src="https://pbs.twimg.com/media/DIRGmsOXcAEJu-j.jpg" width="300">
6: <img src="https://pbs.twimg.com/media/DJYA7SCXUAEvEQk.jpg" width="300">
7:
1.18 wiki 8: [[!toc levels=2]]
9:
1.61 wiki 10: # Supported SoCs
11:
12: <table>
13: <thead>
14: <tr>
15: <th>Family</th>
16: <th>SoC</th>
17: <th>NetBSD version</th>
1.62 wiki 18: <th>Example boards</th>
1.61 wiki 19: <th>Notes</th>
20: </tr>
21: </thead>
22: <tbody>
1.62 wiki 23: <tr><td>sun4i</td><td>A10</td><td>8.99.3 and later</td><td><a href="https://www.olimex.com/Products/OLinuXino/A10/A10-OLinuXino-LIME/open-source-hardware">Olimex A10-OLinuXino-LIME</a><td></td></tr>
1.61 wiki 24: <tr><td>sun5i</td><td>A10s</td><td>-</td><td></td></tr>
1.72 wiki 25: <tr><td>sun5i</td><td>A13</td><td>8.99.2 and later</td><td><a href="https://www.olimex.com/Products/OLinuXino/A13/A13-OLinuXino/open-source-hardware">Olimex A13-OLinuXino</a>, <a href="https://www.olimex.com/Products/OLinuXino/A13/A13-OLinuXino-MICRO/open-source-hardware">Olimex A13-OLinuXino-MICRO</a></td></tr>
1.75 wiki 26: <tr><td>sun5i</td><td>GR8</td><td>8.99.5</td><td><a href="https://getchip.com/pages/chippro">C.H.I.P. Pro</a></td><td></td></tr>
1.62 wiki 27: <tr><td>sun5i</td><td>R8</td><td>8.99.2 and later</td><td><a href="https://getchip.com/pages/chip">C.H.I.P.</a>, <a href="https://getchip.com/pages/pocketchip">Pocket C.H.I.P.</a></td><td></td></tr>
28: <tr><td>sun6i</td><td>A31</td><td>7.0 and later</td><td><a href="http://linux-sunxi.org/Merrii_Hummingbird_A31">Merrii Hummingbird A31</a></td><td></td></tr>
29: <tr><td>sun6i</td><td>A31s</td><td>-</td><td></td><td></td></tr>
30: <tr><td>sun7i</td><td>A20</td><td>7.0 and later</td><td><a href="https://linux-sunxi.org/Cubietech_Cubieboard2">Cubietech Cubieboard 2</a>, <a href="https://linux-sunxi.org/Cubietruck">Cubietech Cubietruck</a>, <a href="http://linux-sunxi.org/LeMaker_Banana_Pi">LeMaker Banana Pi</a></td><td></td></tr>
1.61 wiki 31: <tr><td>sun8i</td><td>A23</td><td>-</td><td></td></tr>
1.72 wiki 32: <tr><td>sun8i</td><td>A33</td><td>-</td><td><a href="https://www.olimex.com/Products/OLinuXino/A33/A33-OLinuXino/open-source-hardware">Olimex A33-OLinuXino</a></td></tr>
1.71 wiki 33: <tr><td>sun8i</td><td>R40</td><td>-</td><td><a href="http://www.banana-pi.org/m2u.html">Sinovoip Banana Pi BPI-M2U</a></td></tr>
1.62 wiki 34: <tr><td>sun8i</td><td>A83T</td><td>8.0 and later</td><td><a href="http://www.banana-pi.org/m3.html">Sinovoip Banana Pi BPI-M3</a></td><td></td></tr>
35: <tr><td>sun8i</td><td>H2+</td><td>8.0 and later</td><td><a href="http://www.orangepi.org/orangepizero/">Xunlong Orange Pi Zero</a></td><td></td></tr>
36: <tr><td>sun8i</td><td>H3</td><td>8.0 and later</td><td><a href="http://nanopi.io/nanopi-neo.html">FriendlyARM NanoPi NEO</a>, <a href="http://www.orangepi.org/orangepiplus2e/">Xunlong Orange Pi Plus 2E</a></td><td></td></tr>
1.73 wiki 37: <tr><td>sun8i</td><td>V3s</td><td>-</td><td><a href="https://www.indiegogo.com/projects/licheepi-zero-6-extensible-linux-module-on-finger-wifi-diy#/">Lichee Pi Zero</a></td><td></td></tr>
1.62 wiki 38: <tr><td>sun9i</td><td>A80</td><td>8.0 and later</td><td><a href="http://linux-sunxi.org/Cubietech_Cubieboard4">Cubietech Cubieboard 4</a></td><td></td></tr>
1.86 wiki 39: <tr><td>sun50i</td><td>A64</td><td>8.99.2 and later</td><td><a href="https://www.pine64.org/?page_id=1194">Pine64</a>, <a href="https://www.pine64.org/?page_id=3707">Pinebook</a></td><td></td></tr>
40: <tr><td>sun50i</td><td>H5</td><td>8.99.4 and later</td><td><a href="http://www.friendlyarm.com/index.php?route=product/product&path=69&product_id=180">FriendlyARM NanoPi NEO2, <a href="http://www.friendlyarm.com/index.php?route=product/product&path=69&product_id=196">FriendlyARM NanoPi NEO Plus2</a></td><td></td></tr>
1.82 wiki 41: <tr><td>sun50i</td><td>H6</td><td>8.99.14 and later</td><td><a href="http://www.orangepi.org/OrangePiOneplus/">Orange Pi One Plus</a>, <a href="https://www.pine64.org/?product_cat=pine-h64-boards">Pine H64</a></td></tr>
1.61 wiki 42: </tbody>
43: </table>
44:
1.1 wiki 45:
46: # Supported hardware
1.61 wiki 47:
1.64 wiki 48: Please refer to the [SUNXI kernel config](https://nxr.netbsd.org/xref/src/sys/arch/evbarm/conf/SUNXI) for the most up-to-date list of supported hardware.
49:
50: <table>
51: <thead>
52: <tr>
53: <th>Device</th>
54: <th>Supported</th>
55: <th>Notes</th>
56: </tr>
57: </thead>
58: <tbody>
1.84 wiki 59: <tr><td>Audio codec</td><td>Yes</td><td>Supported on sun4i, sun5i, sun6i, sun7i, sun8i-h2+, sun8i-h3, sun50i-h5</td></tr>
1.66 wiki 60: <tr><td>Crypto engine</td><td>-</td><td></td></tr>
61: <tr><td>CSI</td><td>-</td><td></td></tr>
1.64 wiki 62: <tr><td>DMA</td><td>Yes</td><td></td></tr>
1.80 wiki 63: <tr><td>Fast Ethernet (sun4i/sun5i/sun7i)</td><td>Yes</td><td></td></tr>
1.64 wiki 64: <tr><td>Framebuffer</td><td>Yes</td><td>Uses simplefb configured by bootloader</td></tr>
65: <tr><td>Gigabit Ethernet (sun6i/sun7i/sun9i)</td><td>Yes</td><td></td></tr>
66: <tr><td>Gigabit Ethernet (sun8i/sun50i)</td><td>Yes</td><td></td></tr>
67: <tr><td>GPIO</td><td>Yes</td><td></td></tr>
1.66 wiki 68: <tr><td>GPU</td><td>-</td><td></td></tr>
1.64 wiki 69: <tr><td>I2C</td><td>Yes</td><td></td></tr>
1.66 wiki 70: <tr><td>I2S/PCM</td><td>-</td><td></td></tr>
1.64 wiki 71: <tr><td>IR transceiver</td><td>-</td><td></td></tr>
1.76 wiki 72: <tr><td>NAND</td><td>Yes</td><td></td></tr>
1.64 wiki 73: <tr><td>P2WI/RSB</td><td>Yes</td><td></td></tr>
1.82 wiki 74: <tr><td>PCIe</td><td>-</td><td>H6</td></tr>
1.87 ! wiki 75: <tr><td>PWM</td><td>Yes</td><td></td></tr>
1.65 wiki 76: <tr><td>RTC</td><td>Yes</td><td></td></tr>
77: <tr><td>SATA</td><td>Yes</td><td></td></tr>
1.64 wiki 78: <tr><td>SD/MMC</td><td>Yes</td><td></td></tr>
1.82 wiki 79: <tr><td>SMP</td><td>Yes</td><td>32-bit only. Uses PSCI support in firmware</td></tr>
1.66 wiki 80: <tr><td>SPDIF</td><td>-</td><td></td></tr>
81: <tr><td>SPI</td><td>-</td><td></td></tr>
1.67 wiki 82: <tr><td>Thermal sensors</td><td>Yes</td><td></td></tr>
1.68 wiki 83: <tr><td>Touch screen</td><td>Yes</td><td></td></tr>
1.64 wiki 84: <tr><td>UART</td><td>Yes</td><td></td></tr>
85: <tr><td>USB 2.0</td><td>Yes</td><td></td></tr>
1.83 wiki 86: <tr><td>USB 3.0</td><td>Yes</td><td></td></tr>
1.64 wiki 87: <tr><td>USB OTG</td><td>Experimental</td><td></td></tr>
88: <tr><td>Watchdog timer</td><td>Yes</td><td></td></tr>
89: </tbody>
90: </table>
1.14 wiki 91:
1.2 wiki 92: # Installation
93:
1.85 wiki 94: - Download or build **armv7.img** (32-bit) or **arm64.img** (64-bit) from NetBSD -current
1.61 wiki 95: - Write the image to disk: **dd if=armv7.img of=/dev/rld0d bs=1m conv=sync**
96: - Install a board-specific U-Boot (2017.07 or later) from pkgsrc to the SD card: **dd if=/usr/pkg/share/u-boot/<boardname>/u-boot-sunxi-with-spl.bin of=/dev/rld0d bs=1k seek=8 conv=sync**
1.81 wiki 97:
98: # Tips and tricks
99:
100: ## Video overscan compensation
101:
102: On some television models, the borders of the screen may be cut off. If your television doesn't have an option to disable overscan, you can enable overscan compensation by entering the following commands at the U-Boot prompt:
103:
104: setenv video-mode sunxi:1280x720-24,overscan_x=32,overscan_y=20
105: saveenv
106: reset
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb