Hi all, It seems that RFCOMM does not handle properly the de-assertation of CD signal. It should call tty_hangup() to work properly. One side effect is that data calls that are hanged up from remote side are not detected as being hanged up. I've made a very quick patch for this. In my case this patch enabled the detection carried detect signal de-assertation. But since I'm not an expert on RFCOMM stuff there might be some cases where tty_hangup() should not be called. In serial side the DCD change is handled by uart_handle_dcd_change() defined in include/linux/serial_core.h and it has some extra checks there as well. So could some one wiser there check what actually has to be done for the hangup mechanism to work properly. Or if my patch looks good enough feel free to commit it. Thanks, Timo