zephyr: Kconfig: Declare SILABS_SISDK_RAIL_MULTIPROTOCOL - #314
Draft
buckleypaul wants to merge 1 commit into
Draft
zephyr: Kconfig: Declare SILABS_SISDK_RAIL_MULTIPROTOCOL#314buckleypaul wants to merge 1 commit into
buckleypaul wants to merge 1 commit into
Conversation
Kconfig.silabs sets a configdefault on SILABS_SISDK_RAIL_MULTIPROTOCOL,
which Zephyr declares in modules/hal_silabs/simplicity_sdk/Kconfig. That
glue only exists in trees carrying the Simplicity SDK HAL, so on older
trees the configdefault is the symbol's only definition. Kconfig then
reports it as typeless and Zephyr turns that warning into an error,
failing every build at CMake configure:
warning: SILABS_SISDK_RAIL_MULTIPROTOCOL (defined at
port/zephyr/Kconfig.silabs:11) defined without a type
error: Aborting due to Kconfig warnings
This broke all TI board builds on the simplelink-zephyr v3.7.0 fork.
SOC_GECKO_CUSTOM_RADIO_PHY is unaffected: soc/silabs/Kconfig declares it
in both old and new trees.
Declare the symbol here so it always has a type. Where the real
definition exists, Kconfig merges the two and its prompt and
dependencies still apply; where it does not, the symbol is inert
because nothing references it.
Verified with both the v3.7.0-ti and v4.4.0 kconfiglib against trees
with and without the upstream declaration: the warning is gone in all
four combinations and the resulting value is unchanged.
Signed-off-by: Paul Buckley <paul@hubble.com>
github-actions
Bot
requested review from
HongNguyen635,
ceolin and
hunterhubble
August 11, 2026 17:06
Collaborator
|
I tried to do something else to avoid re-define the symbol because it weakens possible symbol dependencies but there is no proper way. The problem is not only for TI, it also affects Zephyr's 3.7. |
ceolin
approved these changes
Aug 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Kconfig.silabs sets a configdefault on SILABS_SISDK_RAIL_MULTIPROTOCOL, which Zephyr declares in modules/hal_silabs/simplicity_sdk/Kconfig. That glue only exists in trees carrying the Simplicity SDK HAL, so on older trees the configdefault is the symbol's only definition. Kconfig then reports it as typeless and Zephyr turns that warning into an error, failing every build at CMake configure:
warning: SILABS_SISDK_RAIL_MULTIPROTOCOL (defined at
port/zephyr/Kconfig.silabs:11) defined without a type
error: Aborting due to Kconfig warnings
This broke all TI board builds on the simplelink-zephyr v3.7.0 fork. SOC_GECKO_CUSTOM_RADIO_PHY is unaffected: soc/silabs/Kconfig declares it in both old and new trees.
Declare the symbol here so it always has a type. Where the real definition exists, Kconfig merges the two and its prompt and dependencies still apply; where it does not, the symbol is inert because nothing references it.
Verified with both the v3.7.0-ti and v4.4.0 kconfiglib against trees with and without the upstream declaration: the warning is gone in all four combinations and the resulting value is unchanged.