Hardware model 2 defconfig files

Hi,

I'm migrating to the updated hardware model & it seems to offer convenient ways to describe boards & configs. However, I'm facing one issue which is not critical but would be great to get it working:

Let's say I have the following board.yml:

board:
  name: myboard
  vendor: test
  socs:
  - name: nrf52832
    variants: 
    - name: a
    - name: b
    - name: c
    - name: d
  - name: nrf52840
    variants: 
    - name: a
    - name: b
    - name: c

I would like to use both common and per SoC/variant defconfigs, which, as I understand from the Zephyr docs (docs.zephyrproject.org/.../board_porting.html should be possible:

plank_defconfig / plank_<qualifiers>_defconfig

A Kconfig fragment that is merged as-is into the final build directory .config whenever an application is compiled for your board.

If both the common plank_defconfig file and one or more board qualifiers specific plank_<qualifiers>_defconfig files exist, then all matching files will be used. This allows you to place configuration which is common for all board SoCs, CPU clusters, and board variants in the base plank_defconfig and only place the adjustments specific for a given SoC or board variant in the plank_<qualifiers>_defconfig.

 

However, when I build my application for board myboard/nrf52832/a only myboard_nrf52832_a_defconfig gets used, and neither myboard_defconfig nor myboard_nrf52832_defconfig get used. All board files in the same directory - boards/test/myboard. Am I misunderstanding something? Is this a known problem? Maybe my board.yml file is incorrect?

Thanks

  • Hello,

    I must admit that creating custom board files is not my strongest point, but did you see the DevAcademy course on creating custom board files?

    https://academy.nordicsemi.com/courses/nrf-connect-sdk-intermediate/lessons/lesson-3-adding-custom-board-support/topic/creating-board-files/

    Perhaps this answers your questions.

    However, when I build my application for board myboard/nrf52832/a only myboard_nrf52832_a_defconfig gets used, and neither myboard_defconfig nor myboard_nrf52832_defconfig get used. All board files in the same directory - boards/test/myboard. Am I misunderstanding something? Is this a known problem? Maybe my board.yml file is incorrect?

    It may be a bug. Do you have some boardfiles that shows that myboard_defconfig doesn't get picked up? How do you determine that it doesn't get picked up? Based on the build log, or the output/behavior of the resulting Kconfig options? If you have some board files that shows that it doesn't behave correctly, is it possible to upload it here, so that I can try to replicate it?

    Best regards,

    Edvin

Related