OpenBSD/arm64 on the NanoPi NEO2

I bought the NanoPi NEO2 solely for it’s form-factor, and I haven’t been disappointed. It’s a cute little board (40*40mm), which is to the best of my knowledge the smallest possible device one can run OpenBSD on. The CPU is a quad-core ARM Cortex-A53 which is quite capable, a GENERIC.MP kernel build taking 15 minutes. On the downside, the board only has 512MB of RAM. An USB to TTL serial cable is required to connect to the board and perform installation....

November 13, 2018 · 3 min

Booting OpenBSD kernels in EFI mode with QEMU

I’ve been working on stuff involving the EFI framebuffer lately, and needed a way to quickly test kernels without having to reboot my development machine each and every time. As it turns out, it’s possible to achieve using OVMF (Open Virtual Machine Firmware), a BSD licensed UEFI firmware implementation targeted at virtual machines. A prebuilt image can be downloaded here. We will need to create two drives: One drive using a FAT filesystem to store the EFI payload (the OpenBSD bootloader) Another drive using a FFS filesystem containing the OpenBSD kernel Thankfully, QEMU allows to create virtual drives with FAT filesystems from local directories, and we can easily create an FFS filesystem image using makefs(8)....

June 24, 2018 · 2 min

OpenBSD/octeon on the EdgeRouter Lite

I’ve had the EdgeRouter Lite from Ubiquiti since a little more than a year now, and it’s a nice and affordable little fanless device to run OpenBSD/octeon on. The CPU on this machine is a dual-core Cavium Octeon CN50xx (MIPS64 ISA) which can run in both BE and LE modes. OpenBSD runs in big-endian mode on this architecture. On the minus side, there is no internal clock and no FPU....

August 24, 2017 · 3 min

OpenBSD g2k16 hackathon

First hackathon. Things started in Rzeszow in a quite surrealistic atmosphere, as I was driving to the airport under heavy rain while a thunderstorm was ongoing. The rest of the trip went smoothly though, allowing me to reach Cambridge without issues. I came to the hackathon with plans to work on audio, emulators, and graphics related ports, and had a relatively large list of potential stuff to port. Porting is a strange addiction....

December 24, 2016 · 2 min

OpenBSD/loongson on the Lemote Yeeloong 8101B

After hunting for Loongson based hardware for the first half of 2015, I was finally able to find an used Yeeloong in July, in very good condition. Upon receiving the parcel, the first thing I did was to install OpenBSD on this exquisitely exotic machine. For more information regarding the OpenBSD/loongson port and how it came to be, the OpenBSD Journal has a nice story on the topic. I have been using my Yeeloong more and more during the last few months, notably to attempt building LLVM on this machine....

May 22, 2016 · 6 min

Building LLVM on OpenBSD/loongson

I’ve been attempting to build LLVM on the Lemote Yeeloong for some time now, starting with LLVM 3.7.1. Sadly, the port doesn’t build out of the box due to RAM constraints; the machine only has a 1GB RAM module, and while it’s easily accessible and removable, upgrading the RAM on this machine is borderline impossible, more on that in a later article. After a first full build fail, I decided to try the suggestions from pascal@ regarding LLVM on PowerPC, and started disabling additional architecture support first, then the static analyzer....

May 21, 2016 · 3 min

Why OpenBSD?

Using OpenBSD as my operating system of choice is the conclusion of my now 20 years journey into UNIX-like systems. I’ve been using FreeBSD from 2000 to 2005 as my sole operating system at the time (both on servers and workstations), from 4.1 to the end of the 4.x series. I have fond memories of that period, and that’s probably the main reason why I’ve been diving again into the BSDs during the last few years....

March 24, 2016 · 4 min

Powered by OpenBSD httpd

I’ve been testing and following httpd progress since its debut in OpenBSD 5.6, and finally decided to make the switch from Nginx for hosting static sites, including this one. For more information about httpd and how it came to be, please read the excellent AsiaBSDCon 2015 paper by Reyk Floeter. There are a couple of reasons why I wanted to switch, and the main one is probably Nginx itself. While it has served me well for a very long time now, I’m not sure it can still be called lightweight anymore....

December 23, 2015 · 2 min

RDing TEMPer Gold USB thermometer on OpenBSD

A few weeks ago, I ordered a RDing TEMPer Gold USB thermometer from PCsensor, a cute little device allowing to easily perform room temperature measurements. As mentioned on the package, an USB cable should be used unless the goal is to measure chasis temperature. On OpenBSD, the device is fully supported by the ugold(4) driver: uhidev0 at uhub0 port 4 configuration 1 interface 0 "RDing TEMPerV1.4" rev 2.00/0.01 addr 3 uhidev0: iclass 3/1, 1 report id ukbd0 at uhidev0 reportid 1: 8 variable keys, 5 key codes wskbd1 at ukbd0 mux 1 wskbd1: connecting to wsdisplay0 uhidev1 at uhub0 port 4 configuration 1 interface 1 "RDing TEMPerV1....

May 16, 2015 · 1 min