@@ -974,50 +974,3 @@ extending a board.
974
974
├── Kconfig.plank
975
975
├── Kconfig.defconfig
976
976
└── plank_<new-qualifiers>.yaml
977
-
978
- Board extensions (Old hardware model)
979
- *************************************
980
-
981
- .. note ::
982
-
983
- This extension mechanism is intended for boards in old hardware description
984
- format. For boards described in new hardware model format, use the extension
985
- feature described in :ref: `extend-board `.
986
-
987
- Boards already supported by Zephyr can be extended by downstream users, such as
988
- ``example-application `` or vendor SDKs. In some situations, certain hardware
989
- description or :ref: `choices <devicetree-chosen-nodes >` can not be added in the
990
- upstream Zephyr repository, but they can be in a downstream project, where
991
- custom bindings or driver classes can also be created. This feature may also be
992
- useful in development phases, when the board skeleton lives upstream, but other
993
- features are developed in a downstream module.
994
-
995
- Board extensions are board fragments that can be present in an out-of-tree board
996
- root folder, under ``${BOARD_ROOT}/boards/extensions ``. Here is an example
997
- structure of an extension for the ``plank `` board and its revisions:
998
-
999
- .. code-block :: none
1000
-
1001
- boards/extensions/plank
1002
- ├── plank.conf # optional
1003
- ├── plank_<revision>.conf # optional
1004
- ├── plank.overlay # optional
1005
- └── plank_<revision>.overlay # optional
1006
-
1007
- A board extension directory must follow the naming structure of the original
1008
- board it extends. It may contain Kconfig fragments and/or devicetree overlays.
1009
- Extensions are, by default, automatically loaded and applied on top of board
1010
- files, before anything else. There is no guarantee on which order extensions are
1011
- applied, in case multiple exist. This feature can be disabled by passing
1012
- ``-DBOARD_EXTENSIONS=OFF `` when building.
1013
-
1014
- Note that board extensions need to follow the
1015
- :ref: `same guidelines <porting-general-recommendations >` as regular boards. For
1016
- example, it is wrong to enable extra peripherals or subsystems in a board
1017
- extension.
1018
-
1019
- .. warning ::
1020
-
1021
- Board extensions are not allowed in any module referenced in Zephyr's
1022
- ``west.yml `` manifest file. Any board changes are required to be submitted to
1023
- the main Zephyr repository.
0 commit comments