UART driver works with arbitrary callback function for RX