Skip to content

boards: intel_adsp: enable coredump for all Intel targets - #11134

Open
kv2019i wants to merge 1 commit into
thesofproject:mainfrom
kv2019i:202608-intel-coredump-common
Open

boards: intel_adsp: enable coredump for all Intel targets#11134
kv2019i wants to merge 1 commit into
thesofproject:mainfrom
kv2019i:202608-intel-coredump-common

Conversation

@kv2019i

@kv2019i kv2019i commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator

CONFIG_DEBUG_COREDUMP was only enabled on a subset of Intel build targets (ace15_mtpm/mtl and the cavs25 boards), and otherwise only came in through the debug overlay (-d / app/debug_overlay.conf). This left normal builds of lnl, ptl, wcl, nvl and nvls without a core dump, so field crashes on those platforms could not be analysed offline.

Enable it once for every Intel ADSP target in the shared boards/intel_adsp/Kconfig.defconfig. DEBUG_COREDUMP has no in-tree default, so configdefault turns it on without weakening its "depends on ARCH_SUPPORTS_COREDUMP" dependency (SOC_FAMILY_INTEL_ADSP selects ARCH_SUPPORTS_COREDUMP).

The backend and memory-dump amount are Kconfig 'choice' symbols with an in-tree default. Because this SOF defconfig is sourced after the Zephyr tree (unlike upstream board Kconfig.defconfig files, which are sourced first), choice defaults cannot be overridden from it. The ADSP memory-window backend and minimal dump are therefore selected in each Intel board .conf instead; the boards that already enabled coredump keep those two lines and just drop the now-redundant CONFIG_DEBUG_COREDUMP=y.

Copilot AI lite review requested due to automatic review settings August 26, 2026 18:03
@kv2019i

kv2019i commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator Author

@lgirdwood potential v2.15 candidate

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR enables Zephyr core dump support by default across all Intel ADSP SOF board targets, so crashes in non-debug builds can be analyzed offline. It centralizes DEBUG_COREDUMP enablement in the shared Intel ADSP defconfig and relies on per-board .conf files to select the Intel ADSP coredump backend and minimal dump size.

Changes:

  • Enable DEBUG_COREDUMP for Intel ADSP targets in app/boards/intel_adsp/Kconfig.defconfig.
  • Remove redundant CONFIG_DEBUG_COREDUMP=y from boards that previously enabled it explicitly, while keeping per-board backend/dump-size selection.
  • Add backend/dump-size selections (and explanatory comments) to additional Intel board .conf files that previously lacked core dump in normal builds.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
app/boards/intel_adsp/Kconfig.defconfig Adds a global default enabling core dumps for Intel ADSP targets.
app/boards/intel_adsp_cavs25.conf Drops redundant CONFIG_DEBUG_COREDUMP=y, retains backend + dump-size selections.
app/boards/intel_adsp_cavs25_tgph.conf Drops redundant CONFIG_DEBUG_COREDUMP=y, retains backend + dump-size selections.
app/boards/intel_adsp_ace40_nvls.conf Adds backend + dump-size selections now that core dump is globally enabled.
app/boards/intel_adsp_ace40_nvl.conf Adds backend + dump-size selections now that core dump is globally enabled.
app/boards/intel_adsp_ace30_wcl.conf Adds backend + dump-size selections now that core dump is globally enabled.
app/boards/intel_adsp_ace30_ptl.conf Adds backend + dump-size selections now that core dump is globally enabled.
app/boards/intel_adsp_ace20_lnl.conf Adds backend + dump-size selections now that core dump is globally enabled.
app/boards/intel_adsp_ace15_mtpm.conf Drops redundant CONFIG_DEBUG_COREDUMP=y, retains backend + dump-size selections.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +182 to +193
# DEBUG_COREDUMP has no in-tree default, so configdefault is used to force it
# on without weakening its "depends on ARCH_SUPPORTS_COREDUMP" dependency
# (SOC_FAMILY_INTEL_ADSP selects ARCH_SUPPORTS_COREDUMP).
#
# The coredump backend and memory-dump amount are Kconfig 'choice' symbols
# with an in-tree default. As noted above, this defconfig is sourced after the
# Zephyr tree, so choice defaults cannot be overridden from here; the ADSP
# memory-window backend and minimal dump are therefore selected in each Intel
# board .conf file instead.

configdefault DEBUG_COREDUMP
default y

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"configdefault" is used a lot in Zephyr. Let's see what CI concludes but local tests both build and runtime tests are passing when using this.

Comment on lines +186 to +190
# The coredump backend and memory-dump amount are Kconfig 'choice' symbols
# with an in-tree default. As noted above, this defconfig is sourced after the
# Zephyr tree, so choice defaults cannot be overridden from here; the ADSP
# memory-window backend and minimal dump are therefore selected in each Intel
# board .conf file instead.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines +33 to +35
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines +32 to +34
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines +38 to +40
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines +38 to +40
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines +40 to +42
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines +40 to +42
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

Comment on lines 33 to 35
# SOF / logging
CONFIG_SOF_LOG_LEVEL_INF=y

Comment on lines +52 to +54
# note: CONFIG_DEBUG_COREDUMP is enabled for all Intel targets in
# boards/intel_adsp/Kconfig.defconfig; only the backend and dump-amount
# choices have to be selected per board.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The app/ is obvious from the context, so I'd say no need to change.

@kv2019i

kv2019i commented Aug 26, 2026

Copy link
Copy Markdown
Collaborator Author

Tested with @ujfalusi 's zephyrproject-rtos/zephyr#117310 on PTL. Without this Zephyr PR, the coredump will overflow surrounding windows and the dump may corrupt the FW log (on targets with dynamic debug slots enabled).

# board .conf file instead.

configdefault DEBUG_COREDUMP
default y

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would only do this with a west update containing zephyrproject-rtos/zephyr#117310

Without that you will not see the coredump likely in kernel and as a plus it will corrupt the mtrace print, leaving you w/o any core dump.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

or flip the INTEL_ADSP_DEBUG_SLOT_MANAGER to n is another option if we are in hurry.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ujfalusi Zephyr PR now merged. Good for you ?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this PR needs to be coupled w/ a west update, then yes.

@lgirdwood lgirdwood added this to the v2.15 milestone Aug 28, 2026
@kv2019i kv2019i added the DNM Do Not Merge tag label Aug 31, 2026
CONFIG_DEBUG_COREDUMP was only enabled on a subset of Intel build
targets (ace15_mtpm/mtl and the cavs25 boards), and otherwise only came
in through the debug overlay (-d / app/debug_overlay.conf). This left
normal builds of lnl, ptl, wcl, nvl and nvls without a core dump, so
field crashes on those platforms could not be analysed offline.

Enable it once for every Intel ADSP target in the shared
boards/intel_adsp/Kconfig.defconfig. DEBUG_COREDUMP has no in-tree
default, so configdefault turns it on without weakening its
"depends on ARCH_SUPPORTS_COREDUMP" dependency (SOC_FAMILY_INTEL_ADSP
selects ARCH_SUPPORTS_COREDUMP).

The backend and memory-dump amount are Kconfig 'choice' symbols with an
in-tree default. Because this SOF defconfig is sourced after the Zephyr
tree (unlike upstream board Kconfig.defconfig files, which are sourced
first), choice defaults cannot be overridden from it. The ADSP
memory-window backend and minimal dump are therefore selected in each
Intel board .conf instead; the boards that already enabled coredump keep
those two lines and just drop the now-redundant CONFIG_DEBUG_COREDUMP=y.

Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
@kv2019i
kv2019i force-pushed the 202608-intel-coredump-common branch from 93486ed to b1682a1 Compare September 1, 2026 11:44
@kv2019i kv2019i removed the DNM Do Not Merge tag label Sep 1, 2026
@kv2019i
kv2019i requested a review from ujfalusi September 1, 2026 11:44
@kv2019i

kv2019i commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator Author

V2:

  • rebased on top of latest SOF that has the required update to Zephyr to avoid coredumps from spilling over to other windows
  • removed DNM label

@intel-sofci

intel-sofci commented Sep 1, 2026

Copy link
Copy Markdown

PR 11134: test results

Run date: 2026-09-01 13:06 UTC

Tested commit: b1682a18e42eca1eaab7dafd4294e56ee9f70192

mtl pass rate lnl pass rate ptl pass rate wcl pass rate nvl pass rate

@kv2019i

kv2019i commented Sep 1, 2026

Copy link
Copy Markdown
Collaborator Author

This is ready to merge. Waiting a bit more for additional reviews.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants