Archive

Posts Tagged ‘netbsd’
Orange Pi Development Boards

NetBSD is Now Running on Allwinner H3 Boards

July 11th, 2017 8 comments

Most people will run Linux kernel on development boards because it does the job, and that’s usually the only option. But others have been working on NetBSD kernel for Allwinner H3 boards, and it’s now running on various H3 boards with serial console, USB, Ethernet, SD card, and eMMC flash working.


Jared McNeill explains they first had to deal with low-level code to initialize the CPU and MMU, before using a U-boot layer to disguise NetBSD as the Linux kernel in order to load kernel and device tree file. The code then jumps to the generic ARM FDT implementation of initarm to relocate DTB data and perform other steps, and finally they can enumerated devices. This is explained in greater details in the aforelinked blog post on NetBSD website.

Jared tested the implementation on NanoPi NEO and Orange Pi Plus 2E, but others have reported success on various hardware based on Allwinner H3 processor. Other ARM development boards have been supported since 2015 by NetBSD 7.0 and greater with Raspberry Pi 2, ODROID-C1, BegleBone Black, Allwinner A20/A31 boards, and others, but the work done on Allwinner H3 is different, as it’s the first implementation to use device tree, and eventually it should be possible to ship a single GENERIC evbarm kernel for all boards.

Thanks to Geokon for the tip.

NetBSD 7.0 To Support Multi-Core ARM Processors from Allwinner and Freescale

November 7th, 2014 3 comments

NetBSD is an open source Unix-like Open Source operating system running on a wide range of platforms, from servers and desktop systems to embedded devices. The operating system has supported ARM since 1996, with more recent ports for ARM Cortex A8 and Raspberry Pi, but until recently it did not support SMP (Symmetric multiprocessing) to support more than one core. CubieTruck_NetBSDBut NetBSD has now fixed this “anomaly” and the following Allwinner A20/A31 and Freescale i.MX6 boards are now supported:

  • Banana Pi (BPI)
  • Cubieboard 2 (CUBIEBOARD)
  • Cubietruck (CUBIETRUCK)
  • Merrii Hummingbird A31 (HUMMINGBIRD_A31)
  • CUBOX-I
  • NITROGEN6X

You can give it a try on Allwinner boards by creating an SD card following instructions on NetBSD / Allwinner Wiki. There does not seem to be documentation for the Freescale boards yet. If Allwinner documentation is up-to-date, this is a headless image, as framebuffer, HDMI, etc… are still in to TODO list, but Gigabit Ethernet and SATA are already supported so it could be tried as a server platform.

The changes are likely to make to NetBSD 7.0 which will be dubbed “the ARM SoC release”.