BSDCan2010 - Final Release

BSDCan 2010
The Technical BSD Conference

Rafal Jaworowski
Day Talks - 2 - 2010-05-14
Room DMS 1140
Start time 11:30
Duration 01:00
ID 171
Event type Lecture
Track Embedded
Language used for presentation English

Flattened Device Tree on FreeBSD.

This talk covers the development work on providing FreeBSD with the ability to use Flattened Device Tree (FDT) technology, which allows for describing hardware resources of a computer system and their dependencies in a platform-neutral and portable way.

The primary consumer of this functionality are embedded FreeBSD platforms (ARM, AVR32, MIPS, PowerPC) where a lot of designs are based on similar silicon chips, but have different assignment of pins, memory layout, addresses bindings, interrupts routing and other resources.

Configuration data, which cannot be self discovered in run-time, has to be supplied from external source. The concept of flattened device trees is a platform and architecture independent approach to resolve such problems. The concept is inherited from Open Firmware IEEE 1275 device-tree notion, and has been successfully adopted by the embedded industry (for example, it is a basis for embedded platform reference specification, ePAPR).

Starting with an overview of the technology, tools and existing conventions, the talk explains all major design decisions, and presents development steps taken during its course. Particular examples of platforms converted to the FDT approach are given (Freescale embedded PowerPC, Marvell embedded ARM), and finally a summary of the project is presented covering benefits for the FreeBSD, the current state of work and possible future directions.

Work on this project has been sponsored by the FreeBSD Foundation.