Low-speed peripheral bugs are contract bugs: register map, reset, interrupt type, and DMA watermarks must all agree.
4topics
4lessons
What you'll learn
Low-speed peripheral bugs are contract bugs: register map, reset, interrupt type, and DMA watermarks must all agree.
Register reset values define the state before firmware configures.
IRQ type (level vs edge) and clear sequence must match driver.
DMA descriptor alignment and burst size affect throughput.
Connection
Integration debug patterns that apply to all peripheral types.
Key diagram
Acknowledge controller and service source
Acknowledge controller and service source. Chosen level-source example. Controller acknowledgement alone cannot remove a still-active FIFO or status condition; the exact software order is platform-defined.
Chosen level-source example. Controller acknowledgement alone cannot remove a still-active FIFO or status condition; the exact software order is platform-defined. Check yourselfWhy can the same IRQ be delivered again after controller acknowledgement?
The peripheral source can still be asserted if its documented condition was not serviced.