We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Porting U-Boot to a Modular Device

Formal Metadata

Title
Porting U-Boot to a Modular Device
Subtitle
Booting Linux via U-Boot on a board which can be composed of several different modules
Title of Series
Number of Parts
561
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Currently, Das U-Boot and Linux use device tree to specify how the different hardware components are connected to each other on a board. If a board has a way via which the user can plug in another hardware component, unless we are talking about universal buses like USB or SDIO, the device tree has to be updated to corresponding to the change. There are several ways how this issue can be solved. One may, for example, have a different device tree for each configuration, or one can use device tree overlays. But what if you have a device which can, via one bus, connect several devices, and these may or may not be of the same kind? The number of different device trees would grow rapidly, and one could not use the same device tree overlay when the same device is connected more than one time without editing the overlay. Fortunately U-Boot can fixup the loaded device tree before booting. In this talk we shall describe how we used this fixup feature (hopefully in an elegant and upstreamable way) to solve this issue on Turris MOX, a modular SOHO router.