separate device from platform-common