cleanup (use dma API, use accessors, debugging/printk cleanup)