> +static int > +iuu_ioctl(struct usb_serial_port *port, struct file *file, unsigned int cmd, > + unsigned long arg) > +{ > +
This is very wrong. Your driver may not intercept TCGETS and similar ioctls. In fact you don't seem to need any of it. Terminal changes are handled by the set_termios callback you provide. I'd just delete the ioctl method for now (note a lot of other usb serial drivers get it wrong and I'm busy cleaning them all up) > + if (tty && urb->actual_length && data != NULL ) { > + tty_buffer_request_room(tty, urb->actual_length + 1); > + for (i = 0; i < urb->actual_length; ++i) > + tty_insert_flip_char(tty, data[i], TTY_NORMAL); We've got tty_insert_flip_string for this case which is a bit simpler. You can just do if (tty) { tty_insert_flip_string(tty, data, urb->actual_length); tty_flip_buffer_push(tty); } > +static int > +iuu_uart_baud(struct usb_serial_port *port, u_int32_t baud, u_int32_t > *actual, > + u_int8_t parity) u32 not u_int32_t by preference (or in fact we have speed_t for speeds) ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel