Annotation of www/armv7.html, Revision 1.23
1.1 patrick 1: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2: "http://www.w3.org/TR/html4/loose.dtd">
3: <html>
4: <head>
5: <title>OpenBSD/armv7</title>
6: <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
7: <meta name="description" content="the OpenBSD/armv7 page">
1.21 tb 8: <meta name="copyright" content="This document copyright 2016 by OpenBSD.">
9: <meta name="viewport" content="width=device-width, initial-scale=1">
10: <link rel="stylesheet" type="text/css" href="openbsd.css">
1.12 sthen 11: <link rel="canonical" href="http://www.openbsd.org/armv7.html">
1.1 patrick 12: </head>
13:
14: <body bgcolor="#ffffff" text="#000000" link="#23238e">
15:
1.21 tb 16: <h2>
1.22 tb 17: <a href="index.html">
1.21 tb 18: <font color="#0000ff"><i>Open</i></font><font color="#000084">BSD</font></a>
19: <font color="#e00000">armv7</font>
20: </h2>
1.1 patrick 21: <hr>
1.21 tb 22: <p>
1.1 patrick 23:
24: OpenBSD/armv7 is a port of OpenBSD to various ARMv7 based systems.
25: <p>
1.20 deraadt 26:
1.1 patrick 27: A mailing list for ARM-based ports is available at
28: <u><font color="#23238e">arm@openbsd.org</font></u>.
29: To join the OpenBSD/arm mailing list, send a message body of
30: <b>"subscribe arm"</b> to
31: <a href="mailto:majordomo@openbsd.org">majordomo@openbsd.org</a>.
32: Please be sure to check our <a href="mail.html">mailing list policy</a> before
33: subscribing.
34:
35: <br clear=all>
36: <hr>
37:
38: <a name="status"></a>
39: <h3><font color="#0000e0"><strong>Current status</strong></font></h3>
40:
41: <p>
1.2 jasper 42: The current target platforms are Allwinner A1x/A20 (<tt>sunxi</tt>),
43: Freescale i.MX6 (<tt>imx</tt>) and TI OMAP3/4
44: (<tt>am335x</tt>/<tt>beagle</tt>/<tt>panda</tt>). We try to support
45: most of the boards based on those SoCs. A list of supported boards
46: is in the section <a href="#hardware">Supported hardware</a>.
47: </p>
48:
49: <p>
50: There are generally still a fair number of things to do on each of
1.8 jmc 51: these boards, however OpenBSD is generally considered to be usable on
1.2 jasper 52: them.
1.1 patrick 53: The platform is now self hosting, however there is no SMP support.
1.5 rapha 54: Networking is working on <tt>am335x</tt>, <tt>imx</tt>, <tt>panda</tt>
1.2 jasper 55: and <tt>sunxi</tt>.
1.1 patrick 56: </p>
57:
58: <a name="hardware"></a>
59: <h3><font color="#0000e0"><strong>Supported hardware</strong></font></h3>
60:
61: <h4>Supported platforms</h4>
1.2 jasper 62:
63: <p>
64: A note on the platforms and the associated boards; OpenBSD/armv7
65: bundles various platforms sharing the ARM v7 architecture. Due to the
1.5 rapha 66: fact that there are many System on a Chips (SoC) around,
67: OpenBSD/armv7 differentiates between various SoCs and may have a
1.2 jasper 68: different level of support between them. All devices based on the
69: i.MX6 are refered to as <tt>imx</tt>, all devices based on A1x/A20 are
70: refered to as <tt>sunxi</tt>. The boards with an OMAP 3/4 SoC are
1.5 rapha 71: subdivided into <tt>am335x</tt> (for BeagleBone), <tt>beagle</tt> (for
1.2 jasper 72: BeagleBoard) and <tt>panda</tt> (for PandaBoard).
73: </p>
74:
1.1 patrick 75: <ul>
1.2 jasper 76: <li>A1x/A20
77: <ul>
78: <li>Cubieboard and Cubieboard 2</li>
1.13 jsg 79: <li>LinkSprite pcDuino</li>
1.2 jasper 80: </ul>
1.14 jasper 81: </li>
1.1 patrick 82: <li>i.MX6
83: <ul>
1.13 jsg 84: <li>Boundary Devices SABRE Lite/BD-SL-i.MX6</li>
85: <li>Boundary Devices Nitrogen6X</li>
1.10 jsg 86: <li>Wandboard</li>
1.13 jsg 87: <li>SolidRun CuBox-i4Pro</li>
88: <li>CompuLab Utilite</li>
89: <li>Kosagi Novena</li>
1.1 patrick 90: </ul>
91: </li>
92: <li>OMAP3/4
93: <ul>
94: <li>BeagleBoard C4 / xM</li>
95: <li>BeagleBone and BeagleBone Black</li>
96: <li>PandaBoard and PandaBoard ES</li>
97: </ul>
98: </li>
99: </ul>
100:
101: <h4>Ethernet</h4>
102: <ul>
1.19 sthen 103: <li><a href="http://man.openbsd.org/?query=cpsw&sektion=4&arch=armv7">cpsw(4)</a>
1.2 jasper 104: CPSW Ethernet device on <tt>am335x</tt></li>
1.19 sthen 105: <li><a href="http://man.openbsd.org/?query=imxenet&sektion=4&arch=armv7">imxenet(4)</a>
1.2 jasper 106: i.MX Ethernet device on <tt>imx</tt></li>
1.19 sthen 107: <li><a href="http://man.openbsd.org/?query=sxie&sektion=4&arch=armv7">sxie(4)</a>
1.3 jasper 108: sunxi Ethernet device on <tt>sunxi</tt></li>
1.19 sthen 109: <li><a href="http://man.openbsd.org/?query=smsc&sektion=4&arch=armv7">smsc(4)</a>
1.4 jsg 110: integrated SMSC LAN95xx USB Ethernet on <tt>panda</tt></li>
1.1 patrick 111: </ul>
112:
113: <h4>Storage</h4>
114: <ul>
1.19 sthen 115: <li><a href="http://man.openbsd.org/?query=ahci&sektion=4&arch=armv7">ahci(4)</a>
1.14 jasper 116: on <tt>imx</tt> and <tt>sunxi</tt></li>
1.19 sthen 117: <li><a href="http://man.openbsd.org/?query=ommmc&sektion=4&arch=armv7">ommmc(4)</a>
1.14 jasper 118: SD/MMC controller on OMAP, including BeagleBone Black's built-in flash</li>
1.1 patrick 119: </ul>
120:
121: <h4>USB</h4>
122: <ul>
1.19 sthen 123: <li><a href="http://man.openbsd.org/?query=ehci&sektion=4&arch=armv7">ehci(4)</a>
1.14 jasper 124: on <tt>imx</tt>, <tt>panda</tt> and <tt>sunxi</tt></li>
1.1 patrick 125: </ul>
126:
1.23 ! tj 127: <p>
! 128: <b>Building from source:</b>
! 129: At this moment, the kernel has to be in the FAT boot partition, not the
! 130: root of the file system like other OpenBSD platforms, and this kernel
! 131: must be in a format required by the U-Boot boot loader.
! 132: So, after building your kernel, you must go through some special steps:
! 133:
! 134: <blockquote><pre>
! 135: # <b>config GENERIC</b>
! 136: # <b>cd ../compile/GENERIC</b>
! 137: # <b>make clean; make</b>
! 138: # <b>make bsd.OMAP.umg</b>
! 139: # <b>mount /dev/sd0i /mnt</b> <i># assuming your FAT partition is 'i'</i>
! 140: # <b>cp bsd.OMAP.umg /mnt/bsd.umg</b>
! 141: </pre></blockquote>
! 142:
! 143: <b>No real time clock:</b> Many of the armv7 devices do not have a
! 144: battery backed real time clock.
! 145: For this reason, using the "-s" option of
! 146: <a href="faq/faq6.html#OpenNTPD">OpenNTPD</a> may be desirable.
! 147:
! 148: <p>
! 149: <b>Distribution kernels must be converted before use:</b>
! 150: The distribution kernels are standard kernels, which can be used
! 151: for the <tt>-N</tt> option of
! 152: <a href="http://man.openbsd.org/?query=ps">ps(1)</a>,
! 153: <a href="http://man.openbsd.org/?query=vmstat">vmstat(8)</a>,
! 154: <a href="http://man.openbsd.org/?query=dmesg">dmesg(8)</a>,
! 155: <a href="http://man.openbsd.org/?query=iostat">iostat(8)</a>
! 156: and similar applications, but cannot be booted directly by the U-Boot
! 157: bootloader used on this platform.
! 158:
! 159: This can be done using
! 160: <a href="http://man.openbsd.org/?query=mkuboot">mkuboot(8)</a>
! 161:
! 162: <p>
! 163: Typical operation is something along these lines for OMAP/beagle:
! 164:
! 165: <blockquote><pre>
! 166: # <b>mkuboot -a arm -o linux -e 0x80300000 -l 0x80300000 <i>bsd</i> bsd.umg</b>
! 167: </pre></blockquote>
! 168:
! 169: for i.MX6:
! 170:
! 171: <blockquote><pre>
! 172: # <b>mkuboot -a arm -o linux -e 0x10300000 -l 0x10300000 <i>bsd</i> bsd.umg</b>
! 173: </pre></blockquote>
! 174:
! 175: where <i>bsd</i> is the name of the kernel you are converting.
! 176:
! 177: <p>
! 178: <b>U-Boot tricks:</b>
! 179: <ul>
! 180: <li>Booting single user (OMAP/beagle):
! 181:
! 182: <blockquote><pre>
! 183: U-Boot# mmc rescan
! 184: U-Boot# setenv bootargs sd0 -s
! 185: U-Boot# fatload mmc 0 0x82800000 bsd.umg
! 186: U-Boot# bootm 0x82800000
! 187: </pre></blockquote>
! 188:
! 189: <li>Booting single user (i.MX6, mmc storage):
! 190:
! 191: <blockquote><pre>
! 192: U-Boot# mmc rescan
! 193: U-Boot# setenv bootargs sd0 -s
! 194: U-Boot# fatload mmc 0 0x12000000 bsd.umg
! 195: U-Boot# bootm 0x12000000
! 196: </pre></blockquote>
! 197:
! 198: <li>Booting single user (i.MX6, SATA storage):
! 199:
! 200: <blockquote><pre>
! 201: U-Boot# sata init
! 202: U-Boot# setenv bootargs sd0 -s
! 203: U-Boot# fatload sata 0 0x12000000 bsd.umg
! 204: U-Boot# bootm 0x12000000
! 205: </pre></blockquote>
! 206:
! 207: </ul>
! 208:
1.1 patrick 209: <a name="install"></a>
210: <h3><font color="#0000e0">
211: <strong>Getting and installing</strong>
212: </font></h3>
213:
214: <p>
215: The latest supported OpenBSD/armv7 release is
1.23 ! tj 216: <a href="58.html">OpenBSD 5.9</a>.
1.1 patrick 217: Here are the
1.23 ! tj 218: <a href="http://ftp.OpenBSD.org/pub/OpenBSD/5.9/armv7/INSTALL.armv7">
! 219: OpenBSD/armv7 5.9 installation instructions</a>.
1.9 sthen 220:
1.1 patrick 221: <p>
1.9 sthen 222: Snapshots are made available from time to time, in
1.1 patrick 223: <a href="http://ftp.OpenBSD.org/pub/OpenBSD/snapshots/armv7">this location</a>
224: as well as in a few
225: <a href="ftp.html">mirrors</a>.
226: Here are the
227: <a href="http://ftp.OpenBSD.org/pub/OpenBSD/snapshots/armv7/INSTALL.armv7">
228: OpenBSD/armv7 snapshot installation instructions
229: </a> as well.
230:
231: </body>
232: </html>