BSDCan2017 - 0722d
BSDCan 2017
The Technical BSD Conference
Speakers | |
---|---|
Andrew Turner |
Schedule | |
---|---|
Day | Talks #2 - 10 June - 2017-06-10 |
Room | DMS 1160 |
Start time | 13:30 |
Duration | 01:00 |
Info | |
ID | 833 |
Event type | Lecture |
Track | Embedded |
Language used for presentation | English |
GENERIC ARM
Creating a single kernel configuration for FreeBSD/armv6
During a talk at EuroBSDCon 2016 it was mentioned FreeBSD had no GENERIC kernel for armv6. While this was true at the time the claim was made a GENERIC kernel configuration was committed before the talk finished. This talk will provide a history of how this kernel configuration, common on other architectures, was added to armv6.
FreeBSD added support for the ARMv6 and ARMv7 architectures in 2012. At this time each System on Chip required its own kernel configuration, however there had the start of the work needed to get a single kernel with the requirement for Flatted Device Tree to enumerate hardware.
We will look at why having a common kernel on 32-bit ARM is so difficult, and what was needed to make this possible. This will include support for Flattened Device Tree, the historical GENERIC kernel project branch, INTRNG, and the ARM platform and multi-delay work. With these changes a single FreeBSD can boot on at least six vendors SoCs, with more being added.