public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] usb-serial: Fix edgeport regression on non-EPiC devices
@ 2007-07-29 15:03 Adam Kropelin
  2007-07-30 19:33 ` Greg KH
  0 siblings, 1 reply; 2+ messages in thread
From: Adam Kropelin @ 2007-07-29 15:03 UTC (permalink / raw)
  To: Greg Kroah-Hartman
  Cc: Nick Pasich, Andrew Morton,
	linux-usb-devel @ lists. sourceforge. net, Al Borchers,
	linux-kernel @ vger. kernel. org, Peter Berger

Fix serious regression on non-EPiC edgeport usb-serial devices. Baud 
rate and MCR/LCR registers are not being written on these models due 
to apparent copy-n-paste errors introduced with EPiC support.

Failure reported by Nick Pasich <Nick@NickAndBarb.net>.

Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>

--
Assuming this is a right and proper fix, it should go in the -stable
tree ASAP.

--- linux-2.6.22.1/drivers/usb/serial/io_edgeport.c	2007-07-10 14:56:30.000000000 -0400
+++ linux-2.6.22.1.new/drivers/usb/serial/io_edgeport.c	2007-07-29 09:45:18.000000000 -0400
@@ -2366,9 +2366,8 @@
 	int status;
 	unsigned char number = edge_port->port->number - edge_port->port->serial->minor;
 
-	if ((!edge_serial->is_epic) ||
-	    ((edge_serial->is_epic) &&
-	     (!edge_serial->epic_descriptor.Supports.IOSPSetBaudRate))) {
+	if (edge_serial->is_epic &&
+	    !edge_serial->epic_descriptor.Supports.IOSPSetBaudRate) {
 		dbg("SendCmdWriteBaudRate - NOT Setting baud rate for port = %d, baud = %d",
 		    edge_port->port->number, baudRate);
 		return 0;
@@ -2461,18 +2460,16 @@
 
 	dbg("%s - write to %s register 0x%02x", (regNum == MCR) ? "MCR" : "LCR", __FUNCTION__, regValue);
 
-	if ((!edge_serial->is_epic) ||
-	    ((edge_serial->is_epic) &&
-	     (!edge_serial->epic_descriptor.Supports.IOSPWriteMCR) &&
-	     (regNum == MCR))) {
+	if (edge_serial->is_epic &&
+	    !edge_serial->epic_descriptor.Supports.IOSPWriteMCR &&
+	    regNum == MCR) {
 		dbg("SendCmdWriteUartReg - Not writing to MCR Register");
 		return 0;
 	}
 
-	if ((!edge_serial->is_epic) ||
-	    ((edge_serial->is_epic) &&
-	     (!edge_serial->epic_descriptor.Supports.IOSPWriteLCR) &&
-	     (regNum == LCR))) {
+	if (edge_serial->is_epic &&
+	    !edge_serial->epic_descriptor.Supports.IOSPWriteLCR &&
+	    regNum == LCR) {
 		dbg ("SendCmdWriteUartReg - Not writing to LCR Register");
 		return 0;
 	}

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] usb-serial: Fix edgeport regression on non-EPiC devices
  2007-07-29 15:03 [PATCH] usb-serial: Fix edgeport regression on non-EPiC devices Adam Kropelin
@ 2007-07-30 19:33 ` Greg KH
  0 siblings, 0 replies; 2+ messages in thread
From: Greg KH @ 2007-07-30 19:33 UTC (permalink / raw)
  To: Adam Kropelin
  Cc: Nick Pasich, Andrew Morton,
	linux-usb-devel @ lists. sourceforge. net, Al Borchers,
	linux-kernel @ vger. kernel. org, Peter Berger

On Sun, Jul 29, 2007 at 11:03:29AM -0400, Adam Kropelin wrote:
> Fix serious regression on non-EPiC edgeport usb-serial devices. Baud 
> rate and MCR/LCR registers are not being written on these models due 
> to apparent copy-n-paste errors introduced with EPiC support.
> 
> Failure reported by Nick Pasich <Nick@NickAndBarb.net>.
> 
> Signed-off-by: Adam Kropelin <akropel1@rochester.rr.com>

Ugh, good catch on this one, sorry, it was my fault when I added the
epic support.

I'll apply this to the proper trees now and send it onward...

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2007-07-30 19:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-29 15:03 [PATCH] usb-serial: Fix edgeport regression on non-EPiC devices Adam Kropelin
2007-07-30 19:33 ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox