1: [[!template id=port
2: port="evbarm"
3: port_alt="arm"
4: port_var1="earmv6hf"
5: port_var2="earmv7hf"
6: port_var3="earmv7hfeb"
7: port_var4="aarch64"
8: port_var_install_notes="evbarm-earm"
9: pkg_rel="9.0"
10: cur_rel="9.2"
11: future_rel="10.0"
12: changes_cur="9.0"
13: changes_future="10.0"
14: thumbnail="//wiki.netbsd.org/ports/evbarm/images/beaglebone.jpg"
15: about="""
16: NetBSD/evbarm is the port of NetBSD to various systems based on chips
17: implementing the ARM architecture. The "evb" component is a reference
18: to evaluation boards, the original target of the port. However, the
19: single GENERIC/GENERIC64 kernel now supports a range of machines including
20: development boards, virtual machines, "ServerReady" (SBBR/SBSA) hardware,
21: and laptops through both device tree and ACPI based booting. [Friendly image downloads](http://www.armbsd.org/arm/)
22:
23: [[!toc levels=3]]
24: """
25: supported_hardware="""
26:
27: ### CPU types
28:
29: Various CPU variants are supported, e.g:
30:
31: - evbarm-earmv6hf - ARMv6-A with EABI and hardware floating point, e.g.
32: the original Raspberry Pi.
33: - evbarm-earmv7hf - ARMv7-A with EABI and hardware floating point, e.g.
34: most recent and common 32-bit ARM boards.
35: - evbarm-earmv7hfeb - Same as the above, but with the CPU running in
36: big endian mode.
37: - evbarm-aarch64 - 64-bit ARMv8-A boards.
38: - evbarm-aarch64eb - Same as the above, but with the CPU running in
39: big endian mode.
40:
41: Since NetBSD 9.0, 64-bit ARM processors are supported (referred to here
42: as aarch64). These run with fully 64-bit kernels and userland. Running
43: 32-bit ARM binaries is also supported with `compat32`. The 64-bit
44: kernel supports up to 256 CPUs and the 32-bit kernel supports up to 8.
45:
46: Since NetBSD 9.0, there is support for symmetric and asymmetrical
47: multiprocessing (aka big.LITTLE).
48:
49: evbarm variants are little endian unless otherwise stated. NetBSD provides
50: big endian images primarily for testing purposes and to ensure that the code
51: is endian-clean.
52:
53: ### Board specific information (often including installation information)
54:
55: - [[Allwinner sunxi family SoCs|Allwinner]]
56: - [[Apple Silicon|Apple]]
57: - [[BeagleBone, BeagleBone Black, and PocketBeagle|BeagleBone]]
58: - [[NVIDIA Tegra|Tegra]]
59: - [[ODROID C1 and C1+|ODROID-C1]]
60: - [[Raspberry Pi 1, 2 and 3|Raspberry Pi]]
61: - [[RockChip SoCs|RockChip]]
62: - [[Terasic DE0 Nano-SoC|Cyclone5]]
63:
64: **NOTE**: This list is incomplete. For a full list of supported device tree
65: based boards, please see the list of
66: [32-bit](https://github.com/NetBSD/src/blob/netbsd-9/sys/arch/evbarm/conf/GENERIC#L18) and
67: [64-bit](https://github.com/NetBSD/src/blob/netbsd-9/sys/arch/evbarm/conf/GENERIC64#L20) device trees.
68:
69: ### QEMU
70:
71: See the [[NetBSD/evbarm under QEMU|qemu_arm]] page for instructions on how to get started with QEMU.
72: """
73: additional="""
74: ### armbsd.org builds
75:
76: NetBSD developer Jared McNeill provides [builds of NetBSD 9 and -current for a vast variety of hardware.](http://www.armbsd.org/arm/) In addition to the standard build, these images have board-specific U-Boot contents. See also /usr/pkgsrc/sysutils/u-boot*.
77:
78: ### SSH configuration
79:
80: The default configuration will connect to the local network via DHCP and
81: run an SSH server.
82: In order to use the SSH server, we must configure users.
83: This can be done by writing to the SD card's MS-DOS partition.
84:
85: Create a creds.txt file and use:
86:
87: useradd user password
88:
89: See [creds_msdos(8)](https://man.NetBSD.org/creds_msdos.8) for
90: additional configuration options.
91:
92: ### anita
93:
94: anita can be used to test builds. (In addition to anita, install qemu and dtb-arm-vexpress from pkgsrc.) The release subdirectory should follow the naming convention on the autobuild cluster, used below.
95:
96: - evbarm-earmv7hf uses 'qemu-system-arm -M vexpress-a15'
97: - evbarm-aarch64 uses 'qemu-system-aarch64 -M virt'
98: - Information on how to test emulated versions of other specific hardware is welcome.
99: """
100: ]]
101:
102: [[!tag tier1port]]
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb