world leader in high performance signal processing
Trace: » maintenance

Blackfin Das U-Boot Maintenance

This page describes how the Blackfin port of Das U-Boot is maintained -- both on the blackfin.uclinux.org website and the upstream denx.de website.

Version Control System

Developers should be familiar with git as both the Blackfin project and upstream Das U-Boot uses this.

Repository Trees

Blackfin project GIT tree

This GIT tree is our main development repository. The Blackfin team maintains this repository. It has several branches according to the stable releases such as 08r1, 09r1, but we mainly talk about the trunk branch in this document.

Upstream Blackfin Das U-Boot Git tree

The Blackfin mainline git tree is used to collect cleaned up changes from our GIT tree for mainline to pull from.

The relevant branches:

  • master - kept in sync with mainline and used to collect Blackfin changes for mainline to pull
  • next - rebased against mainline's next branch to collect disruptive changes meant for next merge window
  • trunk - mainline tree with all Blackfin changes that are in the process of being cleaned up for merging -- it is constantly rebased so the changes are kept sane

Upstream Das U-Boot Git tree

The mainline git tree is the official Das U-Boot tree.

Development Cycle

Whenever mainline makes a new release (creates a release tag), the upstream Blackfin git repo does:

  • merge master branch with mainline/master branch
  • fetch all tags from mainline
  • tag current trunk branch with Blackfin tag (current version tag with -bfin suffix)
  • rebase trunk against the new version tag

All changes between the trunk branch of the Blackfin git tree on denx.de and the trunk branch of the Blackfin project tree are then committed to the Blackfin project tree so that the resulting trees are in sync (at the filesystem level).