evbarm thumbnail image

About NetBSD/evbarm

NetBSD/evbarm is the port of NetBSD to various evaluation and prototyping boards based on CPUs implementing the ARM architecture. NetBSD/evbarm also supports some specific embedded system products based on prototype board designs.

CPU types

The evbarm port can be built with a variety of CPU options, corresponding to the large array of ARM CPU architectures. There are four main variables: the word size, the instruction set, the endianness, and whether there is hardware floating point. By default the CPU type is "earm", and this implies aarch32 (32-bit), earmv5 cpu architecture, little endian (el when explicitly stated), and soft (Emulated) floating point. Another example, suitable for Raspberry PI 2, is earmv7hf, which is aarch32, the v7 instruction set, little endian, and hardware floating point.

Typically, various boards are best compiled with a CPU type that matches the board's CPU and floating point support, but generally a lower CPU instruction set version is workable on a newer board. See build.sh and look for aliases for the evbarm port.

Through NetBSD 8, the evbarm port has supported exclusively the aarch32 (32-bit CPU) sub-family of the ARM architecture. Some processors, such as many supporting the armv8 CPU architecture, also support a 64-bit instruction set, referred to as aarch64. This is sometimes referred to as a distinct port, NetBSD/aarch64, with code in src/sys/arch/aarch64, but it is built as the evbarm port with aarch64 cpu type, and available as the alias evbarm64.

Note that MACHINE_ARCH=aarch64 currently refers to the A64 instruction set and the aarch64 architecture, built for the armv8 architecture. (Note also that armv8 is the first architecture to support aarch64, so this will not be an issue until at least armv9.)

QEMU

See the NetBSD/evbarm under QEMU page for instructions on how to get started with QEMU.

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.

invisible.ca builds

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

Board specific information (often including installation information)

SSH configuration for installtion

The default configuration will connect to the local network via DHCP and run an SSH server. In order to use the SSH server, we must configure users. This can be done by writing to the SD card's MS-DOS partition.

Create a creds.txt file and use:

       useradd user password

Release Info

Mailing List

The NetBSD/arm mailing list, covering NetBSD's port to arm machine: [ subscribe | archive ]

Mail the NetBSD/evbarm port maintainer

Supported Hardware

NOTE: This list is incomplete. For a full list of boards, please see the GENERIC DTS files.

  1. CPU types
  2. QEMU
  3. anita
  4. invisible.ca builds
  5. Board specific information (often including installation information)
  6. SSH configuration for installtion
  7. ADI Engineering BRH ("Big Red Head")
  8. Allwinner Technology
  9. Arcom Viper
  10. ARM, Ltd. Integrator
  11. Atmark Techno Armadillo-9
  12. BeagleBoard.org BeagleBoard and BeagleBoard-xM
  13. BeagleBoard.org BeagleBone and BeagleBone Black
  14. Gumstix, Inc. gumstix
  15. Hardkernel ODROID-C1 and ODROID-C1+
  16. Intel DBPXA250 ("Lubbock")
  17. Intel IQ31244
  18. Intel IQ80310
  19. Intel IQ80321
  20. Intel IXM1200
  21. NOVATEC NTNP425B ("ZAO425")
  22. NVIDIA Tegra K1
  23. Raspberry Pi Foundation Raspberry Pi/Raspberry Pi 2/Raspberry Pi 3
  24. Samsung SMDK2410
  25. Samsung SMDK2800
  26. Team ASA, Inc. Npwr
  27. Technologic Systems TS-7200

ADI Engineering BRH ("Big Red Head")

The BRH is an evaluation and development platform for the Intel i80200 XScale processor. The BRH is based on ADI's BECC ("Big Endian Companion Chip"). The BRH is capable of both big- and little-endian operation, although NetBSD currently only supports little-endian operation.

Support for the BRH was written by Jason Thorpe, and contributed by Wasabi Systems, Inc.

The BRH comes with 128M of SDRAM. Systems with BECC revision 7 or less are limited to 64M due to the layout of the PCI DMA windows. Users of these systems should obtain an FPGA upgrade from ADI to revision 8 or later of the BECC.

Allwinner Technology

Various boards based on Allwinner SoCs are supported, including the BananaPi, Cubieboard 2, Cubietruck, Cubieboard 4, and Merrii Hummingbird A31.

Arcom Viper

The Arcom Viper is a single board computer based on the PXA255 XScale processor.

Support for the Arcom Viper was written by Antti Kantee.

ARM, Ltd. Integrator

The Integrator/AP is an ATX form-factor board that is used for development of ARM processor-based designs. It supports up to four processors on plug-in core modules, and provides clocks, a bus interface, and interrupt support. The Integrator/AP also supports logic modules which provide additional peripherals, and can accommodate up to three PCI expansion cards. The Integrator/AP can also be inserted into a CompactPCI backplane.

Support for the Integrator was written by Richard Earnshaw, and contributed by ARM, Ltd.

Atmark Techno Armadillo-9

The Armadillo-9 is a single board computer based on the EP9315 processor.

Support for the Armadillo-9 was written by Katsuomi Hamajima.

BeagleBoard.org BeagleBoard and BeagleBoard-xM

The ?BeagleBoard is a low-power open-source hardware single-board computer from BeagleBoard.org.

BeagleBoard.org BeagleBone and BeagleBone Black

The BeagleBone is a low-cost credit-card-sized computer from BeagleBoard.org.

Gumstix, Inc. gumstix

The gumstix is a small form-factor motherboard based on the PXA255 and PXA270 XScale processor. Supports only PXA255 now.

Support for the gumstix was written by KIYOHARA Takashi.

When booting, it is necessary to set these with u-boot dynamically.

 > go 0xa0200000 busheader=basix

Hardkernel ODROID-C1 and ODROID-C1+

The ODROID-C1 is a quad core Cortex-A5 small form-factor board from Hardkernel co., Ltd.

Intel DBPXA250 ("Lubbock")

DBPXA250 (a.k.a. Lubbock) is an evaluation and development platform for the Intel PXA250 XScale Core application processor. More information about the DBPXA250 can be found at Intel website.

Support for the DBPXA250 was written by Hiroyuki Bessho, and contributed by Genetec Corp.

Intel IQ31244

The IQ31244 is a development platform for the Intel IOP321 I/O Processor chipset and the Intel i31244 SATA controller.

Initial support for the IQ31244 was written by Jason Thorpe, and contributed by Wasabi Systems, Inc.

Intel IQ80310

The IQ80310 is the reference platform for the Intel IOP310 I/O Processor chipset, which is comprised of the i80200 XScale processor and the i80312 I/O Companion chip.

Support for the IQ80310 was written by Jason Thorpe and Allen Briggs, and contributed by Wasabi Systems, Inc.

Intel IQ80321

The IQ80321 is the reference platform for the Intel IOP321 I/O Processor (i80321 XScale processor).

Support for the IQ80321 was written by Jason Thorpe, and contributed by Wasabi Systems, Inc.

Intel IXM1200

The IXM1200 is the reference platform for the Intel IXP1200 Network Processor.

Support for the IXM1200 was written by Ichiro FUKUHARA and Naoto Shimazaki.

NOVATEC NTNP425B ("ZAO425")

NTNP425B is an evaluation and development platform for the Intel IXP425 XScale Core NetworkProcessor. NTNP425B is based on the reference board of Intel IXDP425. The NTNP425B is capable of only big-endian operation. Since the library for micro-engine(NPE) offered from Intel Corp. is big- endian. More information about the NTNP425B can be found on product catalogue of NTNP425B(2.5MB,PDF file).

Support for the NTNP425B was written by Ichiro FUKUHARA.

NVIDIA Tegra K1

Support for NVIDIA Tegra K1 SoCs is present in NetBSD-current and 8.0_BETA. The Jetson TK1 board is currently supported.

Raspberry Pi Foundation Raspberry Pi/Raspberry Pi 2/Raspberry Pi 3

The Raspberry Pi is a low-cost credit-card-sized computer from the Raspberry Pi Foundation. The Raspberry Pi, Pi 2, and Pi 3 are supported.

See the Raspberry Pi 1, 2 and 3 page for much more information.

Samsung SMDK2410

The SMDK2410 is the reference platform for the Samsung S3C2410 processor, which has an ARM920T core.

More information on the S3C2410 can be found at [Samsung Electronics web page] (http://www.samsung.com/Products/Semiconductor/MobileSoC/ApplicationProcessor/ ARM9Series/S3C2410/S3C2410.htm).

Support for the SMDK2410 was written by Hiroyuki Bessho, and contributed by Genetec Corp.

Samsung SMDK2800

The SMDK2800 is the reference platform for the Samsung S3C2800 processor, which has an ARM920T core.

S3C2800 has built-in PCI controller, and SMDK2800 has three PCI slots.

Support for the SMDK2800 was written by Hiroyuki Bessho, and contributed by Fujitsu Component Ltd., and Genetec Corp.

Team ASA, Inc. Npwr

The Npwr is an IOP310-based design targeted at the network-attached storage space. The Npwr comes in several configurations (single or dual Gigabit Ethernet, single or dual Ultra160 SCSI), and can be purchased as a bare board or as a small server appliance. More information on the Npwr can be found at the Team ASA web page.

Support for the Npwr was written by Jason Thorpe and Allen Briggs, and contributed by Wasabi Systems, Inc.

Technologic Systems TS-7200

The TS-7200 is a low-cost mass-produced PC/104 embedded single board computer intended as a general purpose core for real embedded applications. The TS-7200 uses the Cirrus Logic EP9302 ARM9 system-on-chip and comes with a PC/104 (isa) bus and can either boot to CompactFlash or onboard flash. The board also has general purpose digital IO and optional multichannel analog-to-digital converters. More information on the TS-7200 can be found at Technologic Systems.

Support for the TS-7200 was written by Jesse Off

Additional Info

Add a comment