File:  [NetBSD Developer Wiki] / wikisrc / ports / evbarm.mdwn
Revision 1.91: download - view: text, annotated - select for diffs
Tue Sep 15 07:45:49 2020 UTC (5 weeks, 4 days ago) by nia
Branches: MAIN
CVS tags: HEAD
use template sections

[[!template id=port
NetBSD/evbarm is the port of NetBSD to various systems based on chips
implementing the ARM architecture. The "evb" component is a reference
to evaluation boards, the original target of the port, but this
is no longer relevant - NetBSD/evbarm now runs on a range of
hardware based on APCI or devicetrees, including a range of development
boards, powerful servers, virtual machines, and even some laptops.
### CPU types

Various CPU variants are supported, e.g:

- evbarm-earmv6hf - ARMv6 with EABI and hardware floating point, e.g.
  the original Raspberry Pi.
- evbarm-earmv7hf - ARMv7 with EABI and hardware floating point, e.g.
  most recent and common 32-bit ARM boards.
- evbarm-earmv7hfeb - Same as the above, but with the CPU running in
  big endian mode.
- evbarm-aarch64 - 64-bit ARMv8
- evbarm-aarch64eb - Same as the above, but with the CPU running in
  big endian mode.

Since NetBSD 9.0, 64-bit ARM processors are supported (referred to here
as aarch64). These run with fully 64-bit kernels and userland. Running
32-bit ARM binaries is also supported with `compat32`.

evbarm variants are little endian unless otherwise stated. NetBSD provides
big endian images primarily for testing purposes and to ensure that the code
is endian-clean.

### Board specific information (often including installation information)

 - [[Allwinner sunxi family SoCs|Allwinner]]
 - [[BeagleBone, BeagleBone Black, and PocketBeagle|BeagleBone]]
 - [[NVIDIA Tegra|Tegra]]
 - [[ODROID C1 and C1+|ODROID-C1]]
 - [[Raspberry Pi 1, 2 and 3|Raspberry Pi]]
 - [[RockChip SoCs|RockChip]]
 - [[Terasic DE0 Nano-SoC|Cyclone5]]

**NOTE**: This list is incomplete. For a full list of supported boards, please see the list of [32-bit]( and [64-bit]( device trees.

### QEMU

See the [[NetBSD/evbarm under QEMU|qemu_arm]] page for instructions on how to get started with QEMU.
### builds

NetBSD developer Jared McNeill provides [builds of NetBSD 9 and -current for a vast variety of hardware.](   In addition to the standard build, these images have board-specific U-Boot contents.  See also /usr/pkgsrc/sysutils/u-boot*.

### anita

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.

 - evbarm-earmv7hf uses 'qemu-system-arm -M vexpress-a15'
 - evbarm-aarch64 uses 'qemu-system-aarch64 -M virt'
 - Information on how to test emulated versions of other specific hardware is welcome.

[[!tag tier1port]]

CVSweb for NetBSD wikisrc <> software: FreeBSD-CVSweb