Skip to content

Tracker: Kconfig: Model features provided by CPU and Board #14148

@jia200x

Description

@jia200x

Description

It was decided during the Virtual Maintainers Assembly 2020.05 to continue with the next phases of the Kconfig migration. This means that Kconfig will be used to model all module’s configurations and dependencies in the build system.

The first milestone is to model all features provided by CPUs and boards. Also explicitly declare and document all the possible features that can be provided and used.

This milestone doesn’t interfere with the current Kconfig integration nor the build system, so it can be performed directly on the master branch. In order to keep the features in sync in the Makefile.features and the Kconfig files, a static check will be added, which will be run for every PR.

What needs to be done

  • Declare Feature symbols: Analog to the current build system, features like HAS_PERIPH_SPI, HAS_PERIPH_GPIO or HAS_RIOTBOOT have to be declared. Check the Annex for the full list of features
  • Declare CPUs and boards common symbols: Each CPU and module should declare common symbols to track the hardware in compile time. See "Modelling CPU" and "Modelling boards" for more information.
  • Select the provided features by CPUs and boards: Each CPU and Board should select the supported feature symbols.

#13404 can be used as a reference.

Tracker

Also check the GitHub project.

Metadata

Metadata

Labels

Area: KconfigArea: Kconfig integrationArea: boardsArea: Board portsArea: cpuArea: CPU/MCU portsTF: ConfigMarks issues and PRs related to the work of the Configuration Task ForceType: trackingThe issue tracks and organizes the sub-tasks of a larger effort

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions