File tree Expand file tree Collapse file tree 1 file changed +7
-8
lines changed Expand file tree Collapse file tree 1 file changed +7
-8
lines changed Original file line number Diff line number Diff line change @@ -503,21 +503,20 @@ static int pl2303_open(struct tty_struct *tty, struct usb_serial_port *port)
503
503
if (tty )
504
504
pl2303_set_termios (tty , port , & tmp_termios );
505
505
506
- dbg ("%s - submitting read urb" , __func__ );
507
- result = usb_serial_generic_submit_read_urb (port , GFP_KERNEL );
508
- if (result ) {
509
- pl2303_close (port );
510
- return result ;
511
- }
512
-
513
506
dbg ("%s - submitting interrupt urb" , __func__ );
514
507
result = usb_submit_urb (port -> interrupt_in_urb , GFP_KERNEL );
515
508
if (result ) {
516
509
dev_err (& port -> dev , "%s - failed submitting interrupt urb,"
517
510
" error %d\n" , __func__ , result );
518
- pl2303_close (port );
519
511
return result ;
520
512
}
513
+
514
+ result = usb_serial_generic_submit_read_urb (port , GFP_KERNEL );
515
+ if (result ) {
516
+ usb_kill_urb (port -> interrupt_in_urb );
517
+ return result ;
518
+ }
519
+
521
520
port -> port .drain_delay = 256 ;
522
521
return 0 ;
523
522
}
You can’t perform that action at this time.
0 commit comments