diff --git a/drivers/char/ip2/ip2main.c b/drivers/char/ip2/ip2main.c
index 5ef69dcd25888c647c80a5b90be3b196adf3cc35..70957acaa960ac3bcdefc2a8faa6e05aa7055502 100644
--- a/drivers/char/ip2/ip2main.c
+++ b/drivers/char/ip2/ip2main.c
@@ -1616,9 +1616,8 @@ ip2_close( PTTY tty, struct file *pFile )
 
 	serviceOutgoingFifo ( pCh->pMyBord );
 
-	if ( tty->driver->ops->flush_buffer )
-		tty->driver->ops->flush_buffer(tty);
 	tty_ldisc_flush(tty);
+	tty_driver_flush_buffer(tty);
 	tty->closing = 0;
 	
 	pCh->pTTY = NULL;