eal: introduce generalized device