ide: dynamic allocation of device structures