tiocmget() or tiocmset() operations are optional. Just return from hci_uart_set_flow_control() if tiocmget() or tiocmset() operation is NULL.
Fixes: 2a973dfada2b ("hci_uart: Add new line discipline enhancements") Cc: stable@vger.kernel.org # 4.2 Signed-off-by: Myungho Jung mhjungk@gmail.com --- Changes in v2: - Remove braces in if statment
Changes in v3: - Split into 2 patches - Add stable CC and fixes tags
drivers/bluetooth/hci_ldisc.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c index fbf7b4df23ab..cb31c2d8d826 100644 --- a/drivers/bluetooth/hci_ldisc.c +++ b/drivers/bluetooth/hci_ldisc.c @@ -314,6 +314,10 @@ void hci_uart_set_flow_control(struct hci_uart *hu, bool enable) return; }
+ /* tiocmget() and tiocmset() operations are optional */ + if (!tty->driver->ops->tiocmget || !tty->driver->ops->tiocmset) + return; + if (enable) { /* Disable hardware flow control */ ktermios = tty->termios;