--- x/drivers/bluetooth/hci_ldisc.c +++ y/drivers/bluetooth/hci_ldisc.c @@ -615,7 +615,7 @@ static void hci_uart_tty_receive(struct percpu_down_read(&hu->proto_lock); - if (!test_bit(HCI_UART_PROTO_READY, &hu->flags) && + if (!test_bit(HCI_UART_PROTO_READY, &hu->flags) || !test_bit(HCI_UART_PROTO_INIT, &hu->flags)) { percpu_up_read(&hu->proto_lock); return;