Don't reset sub-devices on soft reset. Move iomem access to a2mem. Simplify execution loop and fix comments.