async fn run_tx_ctrl_queue(
    queue: &Arc<Mutex<Queue>>,
    doorbell: Interrupt,
    kick_evt: EventAsync,
    sender: &mut UnboundedSender<Vec<VecDeque<u8>>>,
    ports: Vec<ConsolePortInfo>
)