Re: [linux-usb-devel] Edgeport UPS Monitoring Problems

From: Adam Kropelin
Date: Sun Jul 29 2007 - 10:05:53 EST


From: "Nick Pasich" <NewsLetters@xxxxxxxxxxxxxxx>
Here's the dmesg output ......

[...]
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: LCR - write to send_cmd_write_uart_register register 0x03
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: SendCmdWriteUartReg - Not writing to MCR Register
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: MCR - write to send_cmd_write_uart_register register 0x0b
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: SendCmdWriteUartReg - Not writing to MCR Register
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: change_port_settings - baud rate = 9600
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: SendCmdWriteBaudRate - NOT Setting baud rate for port = 0, baud = 9600

Yup, there's what I expected. Not setting the baud rate and not writing status registers is unlikely to produce working results. This 9600 must be the default setting being applied.

Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: SendCmdWriteUartReg - Not writing to MCR Register
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: MCR - write to send_cmd_write_uart_register register 0x0b
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: SendCmdWriteUartReg - Not writing to MCR Register
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: change_port_settings - baud rate = 2400
Jul 29 05:20:07 NICK2 kernel: drivers/usb/serial/io_edgeport.c: SendCmdWriteBaudRate - NOT Setting baud rate for port = 0, baud = 2400

Here's apcupsd trying to set 2400 baud.

Please try the attached patch (against 2.6.22.1). This will allow writing to the baud rate and MCR/LCR registers on non-EPIC adapters. I suspect the previous code was a copy-paste error.

--Adam

Attachment: usb-serial-edgeport-non-epic-baud-rate-fix.patch
Description: Binary data