You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allow selection of board with build system. This will allow us to build for multiple boards without changing any source code (currently you have to change a using namespace Board =...
Allow specifying custom board config file, which may be outside of mp1-boot source dir. For instance, including mp1-boot in another project
Allowing adding new options to board config without forcing all board config files to be updated.
Proposal:
Goals 1 and 2 can be done by building with make BOARD_CONF=xxx, where xxx can be a known board (DK2 or OSD32), or a path to a custom board_conf.hh file. This has been roughly implemented in the ssbl-option branch (still needs work).
Goal 3 can be addressed by changing namespace Board to struct Board, which inherits from a struct of constexpr members with default values. A new field can be added to the default struct, and all boards will inherit the default. Thus creating new fields won't break existing board configs.
With Board as a class type, it can be passed as a template parameter, which might be useful for checks like if constexpr (requires {typename Board::SomeThing})
The text was updated successfully, but these errors were encountered:
Goal:
Allow selection of board with build system. This will allow us to build for multiple boards without changing any source code (currently you have to change a
using namespace Board =...
Allow specifying custom board config file, which may be outside of mp1-boot source dir. For instance, including mp1-boot in another project
Allowing adding new options to board config without forcing all board config files to be updated.
Proposal:
Goals 1 and 2 can be done by building with
make BOARD_CONF=xxx
, where xxx can be a known board (DK2 or OSD32), or a path to a custom board_conf.hh file. This has been roughly implemented in the ssbl-option branch (still needs work).Goal 3 can be addressed by changing
namespace Board
tostruct Board
, which inherits from a struct of constexpr members with default values. A new field can be added to the default struct, and all boards will inherit the default. Thus creating new fields won't break existing board configs.With Board as a class type, it can be passed as a template parameter, which might be useful for checks like
if constexpr (requires {typename Board::SomeThing})
The text was updated successfully, but these errors were encountered: