Tiene que poderse, quizá no sea tan simple pero todo dispositivo tiene que tener puertos de entrada salida, luego puede que tengan mapeo en memoria, pero puertos fijo. El problema sería que necesitase una interrupción, en cuyo caso sólo puedes ponerla en un driver.