USB: serial: ftdi_sio: allow other bases for "event_char"

The 'store' function for the "event_char" device attribute currently
expects a base 10 value.  The value is composed of an enable bit in bit
8 and an 8-bit "event character" code in bits 7 to 0.  It seems
reasonable to allow hexadecimal and octal numbers to be written to the
device attribute in addition to decimal.  Make it so.

Change the debug message to show the value in hexadecimal, rather than
decimal.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Johan Hovold <johan@kernel.org>
This commit is contained in:
Ian Abbott 2017-03-08 16:03:01 +00:00 committed by Johan Hovold
parent d0559a2f29
commit f1ce25f292

View File

@ -1741,10 +1741,10 @@ static ssize_t store_event_char(struct device *dev,
unsigned int v; unsigned int v;
int rv; int rv;
if (kstrtouint(valbuf, 10, &v) || v >= 0x200) if (kstrtouint(valbuf, 0, &v) || v >= 0x200)
return -EINVAL; return -EINVAL;
dev_dbg(&port->dev, "%s: setting event char = %i\n", __func__, v); dev_dbg(&port->dev, "%s: setting event char = 0x%03x\n", __func__, v);
rv = usb_control_msg(udev, rv = usb_control_msg(udev,
usb_sndctrlpipe(udev, 0), usb_sndctrlpipe(udev, 0),