diff options
Diffstat (limited to 'drivers/isdn')
| -rw-r--r-- | drivers/isdn/gigaset/ser-gigaset.c | 8 | 
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/isdn/gigaset/ser-gigaset.c b/drivers/isdn/gigaset/ser-gigaset.c index 86a5c4f7775..1d44d470897 100644 --- a/drivers/isdn/gigaset/ser-gigaset.c +++ b/drivers/isdn/gigaset/ser-gigaset.c @@ -674,7 +674,7 @@ gigaset_tty_ioctl(struct tty_struct *tty, struct file *file,   *	cflags	buffer containing error flags for received characters (ignored)   *	count	number of received characters   */ -static void +static unsigned int  gigaset_tty_receive(struct tty_struct *tty, const unsigned char *buf,  		    char *cflags, int count)  { @@ -683,12 +683,12 @@ gigaset_tty_receive(struct tty_struct *tty, const unsigned char *buf,  	struct inbuf_t *inbuf;  	if (!cs) -		return; +		return -ENODEV;  	inbuf = cs->inbuf;  	if (!inbuf) {  		dev_err(cs->dev, "%s: no inbuf\n", __func__);  		cs_put(cs); -		return; +		return -EINVAL;  	}  	tail = inbuf->tail; @@ -725,6 +725,8 @@ gigaset_tty_receive(struct tty_struct *tty, const unsigned char *buf,  	gig_dbg(DEBUG_INTR, "%s-->BH", __func__);  	gigaset_schedule_event(cs);  	cs_put(cs); + +	return count;  }  /*  |