Skip to main content
Associate
July 12, 2026
Question

DMA Handle in IP Structure" field for SAI4 DMA request stuck/grayed-out (unable to select), causes red cross / build errors on STM32MP257F-DK

  • July 12, 2026
  • 2 replies
  • 63 views

I'm configuring SAI4 (Block A) to receive I2S audio from an external microphone (Knowles SPH0645), using HPDMA3 for continuous circular DMA transfer, targeting the Cortex-M33 (Cube) context.

Configuration so far:

  • SAI4 → SAI A → Mode: Master, I2S/PCM Protocol, Audio Mode: Master Receive, Data Size: 24 bits, Mono
  • HPDMA3 Channel (currently CH2) → Request: SAI4_A
  • Circular Mode: Enable
  • Direction: Peripheral To Memory
  • Priority: High

Problem:
The field "DMA Handle in IP Structure" under Request Configuration shows a red ⊗ error icon, with the value stuck as a placeholder. When I try to click the dropdown to select a proper handle (e.g. DMA_Handle1, DMA_Handle2), the available options appear grayed out / not selectable — I cannot click or choose any of them. This leaves the field marked invalid (red cross), which propagates up to the HPDMA3 channel, CH tab, and Features tab all showing red crosses.

I confirmed:

  • SAI4's runtime context is properly checked (currently testing M33NS)
  • The Request field correctly shows SAI4_A (not SAI4_B)
  • Other channels' Request Configuration (e.g., I2C2_TX on a different channel) auto-populate their DMA Handle correctly (e.g. hdmatx), but SAI4's does not offer any selectable handle.

What I've already tried:

  • Single-click and double-click on the field
  • Clicking a different field first, then returning to this one
  • Resetting HPDMA3 configuration and reconfiguring from scratch
  • Switching between different free channels (Channel 1, Channel 2)
  • Confirmed RIF/CID ownership for SAI4 and HPDMA3 both point to the same context

None of these resolved the grayed-out dropdown.

Question:
Is this a known CubeMX bug for SAI + HPDMA3 configuration on STM32MP2? Is there a specific order of steps required (e.g., must NVIC/GIC settings be configured first, or must the SAI DMA request only be added via a specific "Add" button rather than editing an existing channel) to properly populate the DMA Handle dropdown? Any guidance appreciated — happy to attach my .ioc file if useful.

 

2 replies

ST Technical Moderator
July 13, 2026

Hello ​@rutiklunagariya6 

Thanks for posting in STCommunity,

Could you please add an IOC file that illustrates the issue in order to investigate the issue?

KR, Souhaib

To give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question.
Associate
July 13, 2026

Hi Souhaib,

Thank you for the quick response. Please find attached the .ioc file that reproduces the issue.

Let me know if you need any additional information.

Thanks,
Rutik

Associate
July 14, 2026

Hi Souhaib,

Just following up — I attached the .ioc file as requested a few days ago. Have you had a chance to look into it yet?

To summarize the issue again briefly: the "DMA Handle in IP Structure" field for the SAI4_A DMA request (under HPDMA3) remains invalid/red, and its dropdown options are grayed out regardless of which channel I assign it to. As a result, generating code produces a project where the DMA handle for SAI4 is never actually declared or linked (__HAL_LINKDMA is missing, and no DMA_HandleTypeDef is generated for this channel), causing build errors in stm32mp2xx_it.c.

so any update or workaround would be very helpful. 

Thank you for your time.

Best regards,
Rutik

ST Technical Moderator
July 14, 2026

Hello ​@rutiklunagariya6 

Your detailed explanations provided are much appreciated.

This issue has been escalated to dedicated team for further investigation: Internal ticket number: CDM0064338 (This is an internal tracking number and is not accessible or usable by customers.)

I'll let you know if there's any updates available.

BR, Souhaib

To give better visibility on the answered topics, please click on 'Best answer' on the reply which solved your issue or answered your question.