Annotation of www/arm64.html, Revision 1.37
1.23 bentley 1: <!doctype html>
2: <html lang=en id=platform>
3: <meta charset=utf-8>
4:
1.1 patrick 5: <title>OpenBSD/arm64</title>
6: <meta name="description" content="the OpenBSD/arm64 page">
7: <meta name="viewport" content="width=device-width, initial-scale=1">
8: <link rel="stylesheet" type="text/css" href="openbsd.css">
9: <link rel="canonical" href="https://www.openbsd.org/arm64.html">
10:
11:
1.23 bentley 12: <h2 id=OpenBSD>
1.1 patrick 13: <a href="index.html">
1.23 bentley 14: <i>Open</i><b>BSD</b></a>
15: arm64
1.1 patrick 16: </h2>
17: <hr>
18:
1.23 bentley 19: <table><tr><td>
1.1 patrick 20: <p>
21: OpenBSD/arm64 is a port of OpenBSD to various 64-bit ARM based systems.
22:
1.3 tb 23: <p>
1.1 patrick 24: A mailing list for ARM-based ports is available at
1.23 bentley 25: <a href="mailto:arm@openbsd.org">arm@openbsd.org</a>.
1.1 patrick 26: To join the OpenBSD/arm mailing list, send a message body of
27: <b>"subscribe arm"</b> to
28: <a href="mailto:majordomo@openbsd.org">majordomo@openbsd.org</a>.
29: Please be sure to check our <a href="mail.html">mailing list policy</a> before
30: subscribing.
1.23 bentley 31: </table>
1.1 patrick 32:
33: <hr>
34:
1.23 bentley 35: <h3 id="status"><strong>Current status</strong></h3>
1.1 patrick 36:
37: <p>
1.25 kettenis 38: The current target platforms are Allwinner A64/H5, Amlogic G12A/B,
39: AMD Opteron A1100, Ampere eMAG, Marvell ARMADA 7K/8K, Rockchip RK3328/RK3399,
1.30 kettenis 40: Broadcom BCM2837/BCM2711 (Raspberry Pi 3/4) and Socionext SCA11.
1.1 patrick 41:
1.6 jsg 42: <p>
1.12 kettenis 43: The install media includes firmware required to boot the Pine 64/64+
1.30 kettenis 44: and Raspberry Pi 3.
1.6 jsg 45:
46: <p>
47: The Raspberry Pi 3 requires closed but redistributable files on the
1.12 kettenis 48: system disk to load into the VC4 GPU which starts the ARM cores. By
49: default the boot ROM will only try to load these files off an SD card.
1.33 jsg 50: To load the firmware off the SD card and have the root disk on USB after
1.12 kettenis 51: installing OpenBSD reboot and interrupt U-Boot before the timeout
1.7 jsg 52: expires and instruct U-Boot to prefer USB over the SD card:
53:
1.20 tj 54: <pre class="cmdbox">
1.7 jsg 55: Hit any key to stop autoboot: 0
56: U-Boot> setenv boot_targets usb0 mmc0 pxe dhcp
57: U-Boot> saveenv
58: U-Boot> boot
1.20 tj 59: </pre>
1.6 jsg 60:
61: <p>
1.32 tj 62: The Raspberry Pi 4 is only supported when using EDK2-based UEFI firmware.
63: By default the boot ROM will only try to load the firmware off an SD card.
1.33 jsg 64: There is no SD/MMC driver yet, but there are no manual steps needed to
65: boot from a USB disk drive.
1.30 kettenis 66:
67: <p>
1.25 kettenis 68: Ampere eMAG and AMD Opteron systems come with a UEFI firmware in ROM
69: and can boot off SATA or USB devices without board specific boot files
70: on the system disk.
1.12 kettenis 71:
1.6 jsg 72: <p>
1.25 kettenis 73: Most other machines load their firmware from the boot media and
74: require additional steps to create bootable install media. See the
1.21 tj 75: <a href="https://ftp.openbsd.org/pub/OpenBSD/snapshots/arm64/INSTALL.arm64">
1.12 kettenis 76: OpenBSD/arm64 snapshot installation instructions</a> for further details.
1.6 jsg 77:
1.23 bentley 78: <h3 id="hardware"><strong>Supported hardware</strong></h3>
1.1 patrick 79:
80: <p>
1.18 kettenis 81: OpenBSD/arm64 runs on the following hardware:
1.1 patrick 82:
83: <ul>
1.12 kettenis 84: <li>Allwinner A64/H5
1.4 jsg 85: <ul>
1.18 kettenis 86: <li>Pine64 Pine 64/64+
1.36 sthen 87: <li><a href="https://www.pine64.org/pinebook/">Pine64 Pinebook</a>
88: <li><a href="https://wiki.friendlyarm.com/wiki/index.php/NanoPi_A64">NanoPi A64</a>
89: <li><a href="http://www.orangepi.org/orangepipc2/">Orange Pi PC2</a>
1.37 ! dtucker 90: <li><a href="http://www.orangepi.org/OrangePiZeroPlus/">Orange Pi Zero Plus</a>
1.4 jsg 91: </ul>
92: <li>AMD Opteron A1100 (Seattle)
93: <ul>
94: <li>AMD Seattle Development Board
1.5 jsg 95: <li>SoftIron OverDrive 1000
1.19 kettenis 96: <li>SoftIron OverDrive 3000
1.4 jsg 97: </ul>
1.25 kettenis 98: <li>Amlogic G12A/B
99: <ul>
1.36 sthen 100: <li><a href="https://www.hardkernel.com/shop/odroid-n2-with-4gbyte-ram/">Hardkernel ODROID-N2</a>
1.25 kettenis 101: </ul>
102: <li>Ampere eMAG
103: <ul>
104: <li>Lenovo ThinkSystem HR330A
105: <li>Lenovo ThinkSystem HR350A
106: </ul>
1.30 kettenis 107: <li>Broadcom BCM2837/BCM2711
1.4 jsg 108: <ul>
1.36 sthen 109: <li><a href="https://www.raspberrypi.org/products/raspberry-pi-3-model-b/">Raspberry Pi 3</a>
110: <li><a href="https://www.raspberrypi.org/products/raspberry-pi-4-model-b/specifications/">Raspberry Pi 4</a>
1.4 jsg 111: </ul>
1.19 kettenis 112: <li>Marvell ARMADA 7K/8K
113: <ul>
1.36 sthen 114: <li><a href="https://www.solid-run.com/marvell-armada-family/macchiatobin/">SolidRun/Marvell MACCHIATObin</a>
1.19 kettenis 115: </ul>
1.18 kettenis 116: <li>Rockchip RK3328/RK3399
1.9 kettenis 117: <ul>
1.36 sthen 118: <li><a href="https://www.pine64.org/devices/single-board-computers/rock64/">Pine64 ROCK64</a>
119: <li><a href="https://www.pine64.org/rockpro64/">Pine64 ROCKPro64</a>
120: <li><a href="https://www.pine64.org/pinebook-pro/">Pinebook Pro</a>
121: <li><a href="https://en.t-firefly.com/product/rk3399.html">Firefly-RK3399</a>
122: <li><a href="http://wiki.friendlyarm.com/wiki/index.php/NanoPC-T4">FriendlyElec NanoPC-T4</a>
123: <li><a href="https://www.theobroma-systems.com/som-product/rk3399-q7/">Theobroma Systems RK3399-Q7</a>
1.19 kettenis 124: </ul>
125: <li>Socionext SC2A11
126: <ul>
1.36 sthen 127: <li><a href="https://www.socionext.com/en/products/assp/SynQuacer/Edge/">Socionext SynQuacer-E Developerbox</a>
1.9 kettenis 128: </ul>
1.1 patrick 129: </ul>
130:
1.18 kettenis 131: <p>
1.26 tj 132: In general, other boards/machines that use one of the SoCs listed above
133: will work as well, as long as UEFI firmware (e.g. U-Boot or EDK II
134: firmware) is available. Both device trees and ACPI are supported.
135: An updated device tree may have to be supplied to make OpenBSD usable.
136:
1.1 patrick 137: <h4>Ethernet</h4>
138: <ul>
1.30 kettenis 139: <li><a href="https://man.openbsd.org/arm64/bse.4">bse(4)</a>
140: integrated Broadcom GENET 10/100/Gigabit Ethernet on Raspberry Pi 4
1.23 bentley 141: <li><a href="https://man.openbsd.org/arm64/dwge.4">dwge(4)</a>
1.24 deraadt 142: integrated Synopsys DesignWare GMAC 10/100/Gigabit Ethernet on Rockchip RK3399
1.23 bentley 143: <li><a href="https://man.openbsd.org/arm64/dwxe.4">dwxe(4)</a>
1.24 deraadt 144: integrated Allwinner EMAC 10/100/Gigabit Ethernet on Allwinner A64/H5
1.23 bentley 145: <li><a href="https://man.openbsd.org/arm64/msk.4">msk(4)</a>
1.24 deraadt 146: integrated Marvell Yukon-2 10/100/Gigabit Ethernet on OverDrive 1000
1.23 bentley 147: <li><a href="https://man.openbsd.org/arm64/smsc.4">smsc(4)</a>
1.24 deraadt 148: integrated SMSC LAN95xx 10/100 USB Ethernet on Raspberry Pi 3
1.1 patrick 149: </ul>
150:
1.34 stsp 151: <h4>802.11 wireless</h4>
152: <ul>
153: <li><a href="https://man.openbsd.org/arm64/bwfm.4">bwfm(4)</a>
154: on Raspberry Pi 3 and Pinebook Pro
155: </ul>
156:
1.1 patrick 157: <h4>Storage</h4>
1.4 jsg 158: <ul>
1.23 bentley 159: <li><a href="https://man.openbsd.org/arm64/ahci.4">ahci(4)</a>
1.25 kettenis 160: on AMD Opteron A1100, Ampere eMAG, Marvell 7K/8K and SynQuacer-E
1.33 jsg 161: <li><a href="https://man.openbsd.org/arm64/bcmsdhost.4">bcmsdhost(4)</a>
162: on Raspberry Pi 3
1.23 bentley 163: <li><a href="https://man.openbsd.org/arm64/dwmmc.4">dwmmc(4)</a>
1.24 deraadt 164: on Rockchip RK3328/RK3399
1.25 kettenis 165: <li><a href="https://man.openbsd.org/arm64/sdhc.4">sdhc(4)</a>
1.24 deraadt 166: on Rockchip RK3399
1.25 kettenis 167: <li><a href="https://man.openbsd.org/arm64/sximmc.4">sximmc(4)</a>
1.24 deraadt 168: on Allwinner A64/H5
1.4 jsg 169: </ul>
1.1 patrick 170:
171: <h4>USB</h4>
172: <ul>
1.23 bentley 173: <li><a href="https://man.openbsd.org/arm64/dwctwo.4">dwctwo(4)</a>
1.24 deraadt 174: on Raspberry Pi 3
1.23 bentley 175: <li><a href="https://man.openbsd.org/arm64/ehci.4">ehci(4)</a>
1.24 deraadt 176: on Allwinner A64/H5 and Rockchip RK3328/RK3399
1.23 bentley 177: <li><a href="https://man.openbsd.org/arm64/xhci.4">xhci(4)</a>
1.30 kettenis 178: on Amlogic G12A/B, Ampere eMAG, Overdrive 1000, Raspberry Pi
179: 4, Rockchip RK3399 and SynQuacer-E
1.1 patrick 180: </ul>
181:
1.23 bentley 182: <strong>No real time clock:</strong> Many of the arm64 devices do not have a
1.27 deraadt 183: battery-backed real time clock, but <a href="https://man.openbsd.org/ntpd">ntpd(8)</a>
184: should be able to compensate.
1.1 patrick 185:
1.23 bentley 186: <h3 id="install">
1.17 tj 187: <strong>Getting and installing OpenBSD/arm64:</strong>
1.23 bentley 188: </h3>
1.17 tj 189:
190: <p>
191: The latest supported OpenBSD/arm64 release is
1.35 tj 192: <a href="68.html">OpenBSD 6.8</a>.
1.17 tj 193: Here are the
1.35 tj 194: <a href="https://ftp.openbsd.org/pub/OpenBSD/6.8/arm64/INSTALL.arm64">
1.17 tj 195: OpenBSD/arm64 installation instructions</a>.
1.1 patrick 196:
197: <p>
198: Snapshots are made available from time to time, in
1.21 tj 199: <a href="https://cdn.openbsd.org/pub/OpenBSD/snapshots/arm64">this location</a>
200: as well as on a few
1.1 patrick 201: <a href="ftp.html">mirrors</a>.
202: Here are the
1.21 tj 203: <a href="https://ftp.openbsd.org/pub/OpenBSD/snapshots/arm64/INSTALL.arm64">
1.2 tb 204: OpenBSD/arm64 snapshot installation instructions</a> as well.