1: [[!template id=port
2: port="evbarm"
3: port_alt="arm"
4: port_var1="earm"
5: port_var2="earmeb"
6: port_var3="earmv6hf"
7: port_var4="earmv7hf"
8: port_var5="earmv7hfeb"
9: port_var6="aarch64"
10: port_var_install_notes="evbarm-earm"
11: cur_rel="9.0"
12: future_rel="10.0"
13: changes_cur="9.0"
14: changes_future="10.0"
15: thumbnail="//www.netbsd.org/images/ports/evbarm/adi_brh.gif"
16: about="""
17: NetBSD/evbarm is the port of NetBSD to various systems based on chips
18: implementing the ARM architecture. The "evb" component is a reference
19: to evaluation boards, the original target of the port, but this
20: is no longer relevant - NetBSD/evbarm now runs on a range of
21: hardware based on APCI or devicetrees, including a range of development
22: boards, powerful servers, virtual machines, and even some laptops.
23: """
24: ]]
25:
26: ### CPU types
27:
28: Various CPU variants are supported, e.g:
29:
30: - evbarm-earmv6hf - ARMv6 with EABI and hardware floating point, e.g.
31: the original Raspberry Pi.
32: - evbarm-earmv7hf - ARMv7 with EABI and hardware floating point, e.g.
33: most recent and common 32-bit ARM boards.
34: - evbarm-earmv7hfeb - Same as the above, but with the CPU running in
35: big endian mode.
36: - evbarm-aarch64 - 64-bit ARMv8
37: - evbarm-aarch64eb - Same as the above, but with the CPU running in
38: big endian mode.
39:
40: Since NetBSD 9.0, 64-bit ARM processors are supported (referred to here
41: as aarch64). These run with fully 64-bit kernels and userland. Running
42: 32-bit ARM binaries is also supported with `compat32`.
43:
44: evbarm variants are little endian unless otherwise stated. NetBSD provides
45: big endian images primarily for testing purposes and to ensure that the code
46: is endian-clean.
47:
48: ### armbsd.org builds
49:
50: NetBSD developer Jared McNeill provides [builds of NetBSD 9 and -current for a vast variety of hardware.](https://www.armbsd.org/) In addition to the standard build, these images have board-specific U-Boot contents. See also /usr/pkgsrc/sysutils/u-boot*.
51:
52: ### Board specific information (often including installation information)
53:
54: - [[Allwinner sunxi family SoCs|Allwinner]]
55: - [[BeagleBone, BeagleBone Black, and PocketBeagle|BeagleBone]]
56: - [[NVIDIA Tegra|Tegra]]
57: - [[ODROID C1 and C1+|ODROID-C1]]
58: - [[Raspberry Pi 1, 2 and 3|Raspberry Pi]]
59: - [[RockChip SoCs|RockChip]]
60: - [[Terasic DE0 Nano-SoC|Cyclone5]]
61:
62: **NOTE**: This list is incomplete. For a full list of supported boards, please see the list of [32-bit](https://github.com/NetBSD/src/blob/netbsd-9/sys/arch/evbarm/conf/GENERIC#L18) and [64-bit](https://github.com/NetBSD/src/blob/netbsd-9/sys/arch/evbarm/conf/GENERIC64#L20) device trees.
63:
64: ### QEMU
65:
66: See the [[NetBSD/evbarm under QEMU|qemu_arm]] page for instructions on how to get started with QEMU.
67:
68: ### anita
69:
70: 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.
71:
72: - evbarm-earmv7hf uses "qemu-system-arm -M vexpress-a15"
73: - evbarm-aarch64 uses "qemu-system-aarch64 -M virt"
74: - Information on how to test emulated versions of other specific hardware is welcome.
75:
76: [[!tag tier1port]]
CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb