strip DMA prefix
undefine all STRUCT_* macros
don't store offset lists in static constants
full definitions for dma registers

sadly, the entire DMA block can't be configured transactionally like the
other blocks.

maybe i could add some templated configure<Part[, Idx]>(<lambda>).
doesn't seem worth it right now, and it wouldn't match the other
transactional interfaces. it would work, though.