DWC3 question

2016-01-30 Thread Ryan
Hello,

I am seeing that drivers/usb/dwc3/otg.c makes calls to functions in
dwc3-exynos.c
However, this does not apply to gadget.c driver
(drivers/usb/dwc3/usb/dwc3/gadget.c)

Why is this? As a result, i am not seeing runtime-pm getting executed
when the gadget is plugged out.


Am i missing something here.


Thanks for your time.

Thanks,
ryan
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[patch] USB: cxacru: fix an bounds check warning

2016-01-30 Thread Dan Carpenter
This is a privileged operation so it doesn't matter much.  We use "tmp"
as an offset into an array.  If it were invalid we could read out of
bounds and trigger an oops if the memory is not mapped.  Plus it makes
static checkers complain.

Signed-off-by: Dan Carpenter 
---
This changes the behavior a little bit because in the original we could
give slightly invalid "len" values and the function would still work...

Please review it extra carefully to make sure it doesn't break
userspace.

diff --git a/drivers/usb/atm/cxacru.c b/drivers/usb/atm/cxacru.c
index 1173f9c..0a866e9 100644
--- a/drivers/usb/atm/cxacru.c
+++ b/drivers/usb/atm/cxacru.c
@@ -476,6 +476,8 @@ static ssize_t cxacru_sysfs_store_adsl_config(struct device 
*dev,
return -EINVAL;
if (index < 0 || index > 0x7f)
return -EINVAL;
+   if (tmp < 0 || tmp > len - pos)
+   return -EINVAL;
pos += tmp;
 
/* skip trailing newline */
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: DWC3 question

2016-01-30 Thread Felipe Balbi

Hi,

Ryan  writes:
> Hello,
>
> I am seeing that drivers/usb/dwc3/otg.c makes calls to functions in
> dwc3-exynos.c

there's no drivers/usb/dwc3/otg.c in mainline, so I'll assume you're
using a kernel from which you got from Samsung, in which case, you need
to direct your questions to them ;-) There's nothing linux-usb can do to
help you.

Sorry and good luck.

-- 
balbi


signature.asc
Description: PGP signature


Re: [PATCH v2 1/4] USB: mxu11x0: fix memory leak on usb_serial private data

2016-01-30 Thread Mathieu OTHACEHE
On Mon, Jan 25, 2016 at 01:01:59PM +0100, Johan Hovold wrote:
> On Mon, Jan 04, 2016 at 07:49:36PM +0100, Mathieu OTHACEHE wrote:
> > On nominal execution, private data allocated on port_probe and attach
> > are never freed. Add port_remove and release callbacks to free them
> > respectively.
> > 
> > Signed-off-by: Mathieu OTHACEHE 
> 
> I've applied this one for 4.5-rc2 now.
> 
> I want to take a closer look at the last three patches and it seems they
> should wait for 4.6 anyway. I did notice that the vendor driver also
> sends double START/OPEN commands at open by the way. Perhaps ask Moxa
> why that is before we remove them?
> 
> Thanks,
> Johan

Hi Johan,

I asked MOXA about this double opening. I also noticed that the
mainline driver ti_usb_3410_5052 uses the same double opening pattern.
And, MOXA UPORT 11x0 serie is based on TUSB3410 chip of TI.

So, I also emailed TI, and the authors of ti_usb_3410_5052 driver.

I keep you informed,

Thank you

Mathieu
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 14/14] USB: serial: kl5kusb105: remove unneeded semicolons

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warnings:

drivers/usb/serial/kl5kusb105.c:475:2-3: Unneeded semicolon
drivers/usb/serial/kl5kusb105.c:530:2-3: Unneeded semicolon
drivers/usb/serial/kl5kusb105.c:549:2-3: Unneeded semicolon

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/kl5kusb105.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/usb/serial/kl5kusb105.c b/drivers/usb/serial/kl5kusb105.c
index e020ad2..fc5d3a7 100644
--- a/drivers/usb/serial/kl5kusb105.c
+++ b/drivers/usb/serial/kl5kusb105.c
@@ -472,7 +472,6 @@ static void klsi_105_set_termios(struct tty_struct *tty,
/* maybe this should be simulated by sending read
 * disable and read enable messages?
 */
-   ;
 #if 0
priv->control_state &= ~(TIOCM_DTR | TIOCM_RTS);
mct_u232_set_modem_ctrl(serial, priv->control_state);
@@ -527,7 +526,6 @@ static void klsi_105_set_termios(struct tty_struct *tty,
 
mct_u232_set_line_ctrl(serial, priv->last_lcr);
 #endif
-   ;
}
/*
 * Set flow control: well, I do not really now how to handle DTR/RTS.
@@ -546,7 +544,6 @@ static void klsi_105_set_termios(struct tty_struct *tty,
priv->control_state &= ~(TIOCM_DTR | TIOCM_RTS);
mct_u232_set_modem_ctrl(serial, priv->control_state);
 #endif
-   ;
}
memcpy(cfg, &priv->cfg, sizeof(*cfg));
spin_unlock_irqrestore(&priv->lock, flags);
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 13/14] USB: serial: f81232: move constants to right

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/f81232.c:193:7-20: Move constant to right.

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/f81232.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/serial/f81232.c b/drivers/usb/serial/f81232.c
index 972f5a5..589d856 100644
--- a/drivers/usb/serial/f81232.c
+++ b/drivers/usb/serial/f81232.c
@@ -190,7 +190,7 @@ static int f81232_set_mctrl(struct usb_serial_port *port,
 
/* force enable interrupt with OUT2 */
mutex_lock(&priv->lock);
-   val = UART_MCR_OUT2 | priv->modem_control;
+   val = priv->modem_control | UART_MCR_OUT2;
 
if (clear & TIOCM_DTR)
val &= ~UART_MCR_DTR;
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 09/14] USB: serial: cyberjack: remove unneeded variable

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/cyberjack.c:143:5-11: Unneeded variable:
"result". Return "0" on line 155

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/cyberjack.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/usb/serial/cyberjack.c b/drivers/usb/serial/cyberjack.c
index 2916dea..5f17a3b 100644
--- a/drivers/usb/serial/cyberjack.c
+++ b/drivers/usb/serial/cyberjack.c
@@ -140,7 +140,6 @@ static int  cyberjack_open(struct tty_struct *tty,
 {
struct cyberjack_private *priv;
unsigned long flags;
-   int result = 0;
 
dev_dbg(&port->dev, "%s - usb_clear_halt\n", __func__);
usb_clear_halt(port->serial->dev, port->write_urb->pipe);
@@ -152,7 +151,7 @@ static int  cyberjack_open(struct tty_struct *tty,
priv->wrsent = 0;
spin_unlock_irqrestore(&priv->lock, flags);
 
-   return result;
+   return 0;
 }
 
 static void cyberjack_close(struct usb_serial_port *port)
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 10/14] USB: serial: garmin_gps: remove unneeded variable

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/garmin_gps.c:863:5-11: Unneeded variable:
"status". Return "0" on line 873

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/garmin_gps.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/usb/serial/garmin_gps.c b/drivers/usb/serial/garmin_gps.c
index c0bbe44..91a9b55 100644
--- a/drivers/usb/serial/garmin_gps.c
+++ b/drivers/usb/serial/garmin_gps.c
@@ -860,7 +860,6 @@ static int process_resetdev_request(struct usb_serial_port 
*port)
 static int garmin_clear(struct garmin_data *garmin_data_p)
 {
unsigned long flags;
-   int status = 0;
 
/* flush all queued data */
pkt_clear(garmin_data_p);
@@ -870,7 +869,7 @@ static int garmin_clear(struct garmin_data *garmin_data_p)
garmin_data_p->outsize = 0;
spin_unlock_irqrestore(&garmin_data_p->lock, flags);
 
-   return status;
+   return 0;
 }
 
 
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 08/14] USB: serial: keyspan: remove unused semicolon

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/keyspan.c:1966:49-50: Unneeded semicolon

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/keyspan.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/serial/keyspan.c b/drivers/usb/serial/keyspan.c
index e07b15e..b6bd8e4 100644
--- a/drivers/usb/serial/keyspan.c
+++ b/drivers/usb/serial/keyspan.c
@@ -1963,7 +1963,7 @@ static int keyspan_usa49_send_setup(struct usb_serial 
*serial,
if (d_details->product_id == keyspan_usa49wg_product_id) {
dr = (void *)(s_priv->ctrl_buf);
dr->bRequestType = USB_TYPE_VENDOR | USB_DIR_OUT;
-   dr->bRequest = 0xB0;/* 49wg control message */;
+   dr->bRequest = 0xB0;/* 49wg control message */
dr->wValue = 0;
dr->wIndex = 0;
dr->wLength = cpu_to_le16(sizeof(msg));
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 12/14] USB: serial: ch341: move constants to right

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/ch341.c:373:2-18: Move constant to right.

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/ch341.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/serial/ch341.c b/drivers/usb/serial/ch341.c
index c73808f..f139488 100644
--- a/drivers/usb/serial/ch341.c
+++ b/drivers/usb/serial/ch341.c
@@ -370,7 +370,7 @@ static void ch341_set_termios(struct tty_struct *tty,
 static void ch341_break_ctl(struct tty_struct *tty, int break_state)
 {
const uint16_t ch341_break_reg =
-   CH341_REG_BREAK1 | ((uint16_t) CH341_REG_BREAK2 << 8);
+   ((uint16_t) CH341_REG_BREAK2 << 8) | CH341_REG_BREAK1;
struct usb_serial_port *port = tty->driver_data;
int r;
uint16_t reg_contents;
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 11/14] USB: serial: mos7840: move constants to right

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warnings:

drivers/usb/serial/mos7840.c:2042:4-10: Move constant to right.
drivers/usb/serial/mos7840.c:2062:16-22: Move constant to right.

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/mos7840.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/serial/mos7840.c b/drivers/usb/serial/mos7840.c
index 8ddc313..982a3fb 100644
--- a/drivers/usb/serial/mos7840.c
+++ b/drivers/usb/serial/mos7840.c
@@ -2039,7 +2039,7 @@ static int mos7810_check(struct usb_serial *serial)
/* Send the 1-bit test pattern out to MCS7810 test pin */
usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0),
MCS_WRREQ, MCS_WR_RTYPE,
-   (0x0300 | (((test_pattern >> i) & 0x0001) << 1)),
+   test_pattern >> i) & 0x0001) << 1) | 0x0300),
MODEM_CONTROL_REGISTER, NULL, 0, MOS_WDR_TIMEOUT);
 
/* Read the test pattern back */
@@ -2059,7 +2059,7 @@ static int mos7810_check(struct usb_serial *serial)
 
/* Restore MCR setting */
usb_control_msg(serial->dev, usb_sndctrlpipe(serial->dev, 0), MCS_WRREQ,
-   MCS_WR_RTYPE, 0x0300 | mcr_data, MODEM_CONTROL_REGISTER, NULL,
+   MCS_WR_RTYPE, mcr_data | 0x0300, MODEM_CONTROL_REGISTER, NULL,
0, MOS_WDR_TIMEOUT);
 
kfree(buf);
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 07/14] USB: serial: ftdi_sio: move constants to right

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warnings:

drivers/usb/serial/ftdi_sio.h:242:31-32: Move constant to right.
drivers/usb/serial/ftdi_sio.h:243:31-32: Move constant to right.
drivers/usb/serial/ftdi_sio.h:245:31-32: Move constant to right.
drivers/usb/serial/ftdi_sio.h:246:30-31: Move constant to right.
drivers/usb/serial/ftdi_sio.c:2327:13-32: Move constant to right.
drivers/usb/serial/ftdi_sio.c:2356:22-42: Move constant to right.
drivers/usb/serial/ftdi_sio.c:1322:9-25: Move constant to right.
drivers/usb/serial/ftdi_sio.c:1323:9-33: Move constant to right.
drivers/usb/serial/ftdi_sio.c:1324:9-30: Move constant to right.
drivers/usb/serial/ftdi_sio.c:1325:9-30: Move constant to right.
drivers/usb/serial/ftdi_sio.c:1326:9-32: Move constant to right.

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/ftdi_sio.c | 16 
 drivers/usb/serial/ftdi_sio.h |  8 
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c
index 8c660ae..07b0040 100644
--- a/drivers/usb/serial/ftdi_sio.c
+++ b/drivers/usb/serial/ftdi_sio.c
@@ -1320,11 +1320,11 @@ static __u32 get_ftdi_divisor(struct tty_struct *tty,
if (baud <= 300) {
__u16 product_id = le16_to_cpu(
port->serial->dev->descriptor.idProduct);
-   if (((FTDI_NDI_HUC_PID == product_id) ||
-(FTDI_NDI_SPECTRA_SCU_PID == product_id) ||
-(FTDI_NDI_FUTURE_2_PID == product_id) ||
-(FTDI_NDI_FUTURE_3_PID == product_id) ||
-(FTDI_NDI_AURORA_SCU_PID == product_id)) &&
+   if (((product_id == FTDI_NDI_HUC_PID)   ||
+(product_id == FTDI_NDI_SPECTRA_SCU_PID)   ||
+(product_id == FTDI_NDI_FUTURE_2_PID)  ||
+(product_id == FTDI_NDI_FUTURE_3_PID)  ||
+(product_id == FTDI_NDI_AURORA_SCU_PID))   &&
(baud == 19200)) {
baud = 120;
}
@@ -2325,7 +2325,7 @@ no_c_cflag_changes:
usb_sndctrlpipe(dev, 0),
FTDI_SIO_SET_FLOW_CTRL_REQUEST,
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
-   0 , (FTDI_SIO_RTS_CTS_HS | priv->interface),
+   0, (priv->interface | FTDI_SIO_RTS_CTS_HS),
NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(ddev, "urb failed to set to rts/cts flow 
control\n");
}
@@ -2354,8 +2354,8 @@ no_c_cflag_changes:
usb_sndctrlpipe(dev, 0),
FTDI_SIO_SET_FLOW_CTRL_REQUEST,
FTDI_SIO_SET_FLOW_CTRL_REQUEST_TYPE,
-   urb_value , (FTDI_SIO_XON_XOFF_HS
-| priv->interface),
+   urb_value, (priv->interface |
+   FTDI_SIO_XON_XOFF_HS),
NULL, 0, WDR_TIMEOUT) < 0) {
dev_err(&port->dev, "urb failed to set to "
"xon/xoff flow control\n");
diff --git a/drivers/usb/serial/ftdi_sio.h b/drivers/usb/serial/ftdi_sio.h
index ed58c6f..bbcc13df 100644
--- a/drivers/usb/serial/ftdi_sio.h
+++ b/drivers/usb/serial/ftdi_sio.h
@@ -239,11 +239,11 @@ enum ftdi_sio_baudrate {
  */
 
 #define FTDI_SIO_SET_DTR_MASK 0x1
-#define FTDI_SIO_SET_DTR_HIGH (1 | (FTDI_SIO_SET_DTR_MASK  << 8))
-#define FTDI_SIO_SET_DTR_LOW  (0 | (FTDI_SIO_SET_DTR_MASK  << 8))
+#define FTDI_SIO_SET_DTR_HIGH ((FTDI_SIO_SET_DTR_MASK  << 8) | 1)
+#define FTDI_SIO_SET_DTR_LOW  ((FTDI_SIO_SET_DTR_MASK  << 8) | 0)
 #define FTDI_SIO_SET_RTS_MASK 0x2
-#define FTDI_SIO_SET_RTS_HIGH (2 | (FTDI_SIO_SET_RTS_MASK << 8))
-#define FTDI_SIO_SET_RTS_LOW (0 | (FTDI_SIO_SET_RTS_MASK << 8))
+#define FTDI_SIO_SET_RTS_HIGH ((FTDI_SIO_SET_RTS_MASK << 8) | 2)
+#define FTDI_SIO_SET_RTS_LOW  ((FTDI_SIO_SET_RTS_MASK << 8) | 0)
 
 /*
  * ControlValue
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 06/14] USB: serial: garmin_gps: move constants to right

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/garmin_gps.c:1195:3-4: Move constant to right.
drivers/usb/serial/garmin_gps.c:1206:6-7: Move constant to right.
drivers/usb/serial/garmin_gps.c:1252:5-6: Move constant to right.
drivers/usb/serial/garmin_gps.c:1257:6-7: Move constant to right.
drivers/usb/serial/garmin_gps.c:1279:7-8: Move constant to right.
drivers/usb/serial/garmin_gps.c:1359:5-6: Move constant to right.
drivers/usb/serial/garmin_gps.c:1081:9-31: Move constant to right.
drivers/usb/serial/garmin_gps.c:1028:5-24: Move constant to right.
drivers/usb/serial/garmin_gps.c:973:6-25: Move constant to right.
drivers/usb/serial/garmin_gps.c:426:6-10: Move constant to right.
drivers/usb/serial/garmin_gps.c:428:13-17: Move constant to right.
drivers/usb/serial/garmin_gps.c:428:28-32: Move constant to right.
drivers/usb/serial/garmin_gps.c:531:6-10: Move constant to right.
drivers/usb/serial/garmin_gps.c:639:5-24: Move constant to right.
drivers/usb/serial/garmin_gps.c:691:9-13: Move constant to right.
drivers/usb/serial/garmin_gps.c:353:2-6: Move constant to right.
drivers/usb/serial/garmin_gps.c:369:10-14: Move constant to right.
drivers/usb/serial/garmin_gps.c:240:5-6: Move constant to right.
drivers/usb/serial/garmin_gps.c:242:5-6: Move constant to right.

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/garmin_gps.c | 48 -
 1 file changed, 24 insertions(+), 24 deletions(-)

diff --git a/drivers/usb/serial/garmin_gps.c b/drivers/usb/serial/garmin_gps.c
index db591d1..c0bbe44 100644
--- a/drivers/usb/serial/garmin_gps.c
+++ b/drivers/usb/serial/garmin_gps.c
@@ -237,10 +237,10 @@ static inline int getDataLength(const __u8 *usbPacket)
  */
 static inline int isAbortTrfCmnd(const unsigned char *buf)
 {
-   if (0 == memcmp(buf, GARMIN_STOP_TRANSFER_REQ,
-   sizeof(GARMIN_STOP_TRANSFER_REQ)) ||
-   0 == memcmp(buf, GARMIN_STOP_TRANSFER_REQ_V2,
-   sizeof(GARMIN_STOP_TRANSFER_REQ_V2)))
+   if (memcmp(buf, GARMIN_STOP_TRANSFER_REQ,
+   sizeof(GARMIN_STOP_TRANSFER_REQ)) == 0 ||
+   memcmp(buf, GARMIN_STOP_TRANSFER_REQ_V2,
+   sizeof(GARMIN_STOP_TRANSFER_REQ_V2)) == 0)
return 1;
else
return 0;
@@ -350,7 +350,7 @@ static int gsp_send_ack(struct garmin_data *garmin_data_p, 
__u8 pkt_id)
unsigned  l = 0;
 
dev_dbg(&garmin_data_p->port->dev, "%s - pkt-id: 0x%X.\n", __func__,
-   0xFF & pkt_id);
+   pkt_id & 0xFF);
 
*ptr++ = DLE;
*ptr++ = ACK;
@@ -366,7 +366,7 @@ static int gsp_send_ack(struct garmin_data *garmin_data_p, 
__u8 pkt_id)
*ptr++ = DLE;
 
*ptr++ = 0;
-   *ptr++ = 0xFF & (-cksum);
+   *ptr++ = (-cksum) & 0xFF;
*ptr++ = DLE;
*ptr++ = ETX;
 
@@ -423,9 +423,9 @@ static int gsp_rec_packet(struct garmin_data 
*garmin_data_p, int count)
n++;
}
 
-   if ((0xff & (cksum + *recpkt)) != 0) {
+   if (((cksum + *recpkt) & 0xff) != 0) {
dev_dbg(dev, "%s - invalid checksum, expected %02x, got %02x\n",
-   __func__, 0xff & -cksum, 0xff & *recpkt);
+   __func__, -cksum & 0xff, *recpkt & 0xff);
return -EINVPKT;
}
 
@@ -528,7 +528,7 @@ static int gsp_receive(struct garmin_data *garmin_data_p,
dev_dbg(dev, "NAK packet complete.\n");
} else {
dev_dbg(dev, "packet complete - 
id=0x%X.\n",
-   0xFF & data);
+   data & 0xFF);
gsp_rec_packet(garmin_data_p, size);
}
 
@@ -636,7 +636,7 @@ static int gsp_send(struct garmin_data *garmin_data_p,
 
garmin_data_p->outsize = 0;
 
-   if (GARMIN_LAYERID_APPL != getLayerId(garmin_data_p->outbuffer)) {
+   if (getLayerId(garmin_data_p->outbuffer) != GARMIN_LAYERID_APPL) {
dev_dbg(dev, "not an application packet (%d)\n",
getLayerId(garmin_data_p->outbuffer));
return -1;
@@ -688,7 +688,7 @@ static int gsp_send(struct garmin_data *garmin_data_p,
*dst++ = DLE;
}
 
-   cksum = 0xFF & -cksum;
+   cksum = -cksum & 0xFF;
*dst++ = cksum;
if (cksum == DLE)
*dst++ = DLE;
@@ -970,7 +970,7 @@ static void garmin_write_bulk_callback(struct urb *urb)
struct garmin_data *garmin_data_p =
usb_get_serial_port_data(port);
 
-   if (GARMIN_LAYERID_APPL == getLayerId(urb->transfer_buffer)) {
+   if (getLayerId(urb->transfer_buffer) == GARMIN_L

[PATCH 03/14] USB: serial: quatech2: remove comparison to bool

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/quatech2.c:976:5-26: WARNING: Comparison to bool

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/quatech2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/serial/quatech2.c b/drivers/usb/serial/quatech2.c
index 504f5bf..2df8ad5 100644
--- a/drivers/usb/serial/quatech2.c
+++ b/drivers/usb/serial/quatech2.c
@@ -973,7 +973,7 @@ static int qt2_write(struct tty_struct *tty,
 
data = write_urb->transfer_buffer;
spin_lock_irqsave(&port_priv->urb_lock, flags);
-   if (port_priv->urb_in_use == true) {
+   if (port_priv->urb_in_use) {
dev_err(&port->dev, "qt2_write - urb is in use\n");
goto write_out;
}
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 05/14] USB: serial: mos7840: remove comparison to bool

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/mos7840.c:1845:5-32: WARNING: Comparison to bool
drivers/usb/serial/mos7840.c:1909:5-32: WARNING: Comparison to bool

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/mos7840.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/serial/mos7840.c b/drivers/usb/serial/mos7840.c
index 2c69bfc..8ddc313 100644
--- a/drivers/usb/serial/mos7840.c
+++ b/drivers/usb/serial/mos7840.c
@@ -1842,7 +1842,7 @@ static void mos7840_change_port_settings(struct 
tty_struct *tty,
Data = 0x0c;
mos7840_set_uart_reg(port, INTERRUPT_ENABLE_REGISTER, Data);
 
-   if (mos7840_port->read_urb_busy == false) {
+   if (!mos7840_port->read_urb_busy) {
mos7840_port->read_urb_busy = true;
status = usb_submit_urb(mos7840_port->read_urb, GFP_KERNEL);
if (status) {
@@ -1906,7 +1906,7 @@ static void mos7840_set_termios(struct tty_struct *tty,
return;
}
 
-   if (mos7840_port->read_urb_busy == false) {
+   if (!mos7840_port->read_urb_busy) {
mos7840_port->read_urb_busy = true;
status = usb_submit_urb(mos7840_port->read_urb, GFP_KERNEL);
if (status) {
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 02/14] USB: serial: safe_serial: fix assignment of bool to non 0/1 constant

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle error:

drivers/usb/serial/safe_serial.c:85:12-18: ERROR: Assignment of bool to non-0/1 
constant

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/safe_serial.c | 7 +--
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/drivers/usb/serial/safe_serial.c b/drivers/usb/serial/safe_serial.c
index 5662df6..93c6c9b 100644
--- a/drivers/usb/serial/safe_serial.c
+++ b/drivers/usb/serial/safe_serial.c
@@ -76,13 +76,8 @@
 #include 
 #include 
 
-
-#ifndef CONFIG_USB_SERIAL_SAFE_PADDED
-#define CONFIG_USB_SERIAL_SAFE_PADDED 0
-#endif
-
 static bool safe = true;
-static bool padded = CONFIG_USB_SERIAL_SAFE_PADDED;
+static bool padded = IS_ENABLED(CONFIG_USB_SERIAL_SAFE_PADDED);
 
 #define DRIVER_AUTHOR "s...@lineo.com, t...@lineo.com, Johan Hovold 
"
 #define DRIVER_DESC "USB Safe Encapsulated Serial"
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 04/14] USB: serial: iuu_phoenix: remove comparison of bool

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warning:

drivers/usb/serial/iuu_phoenix.c:383:5-9: WARNING: Comparison of bool to 0/1
drivers/usb/serial/iuu_phoenix.c:363:5-9: WARNING: Comparison of bool to 0/1

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/iuu_phoenix.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/serial/iuu_phoenix.c b/drivers/usb/serial/iuu_phoenix.c
index 5ad4a0f..344b4ee 100644
--- a/drivers/usb/serial/iuu_phoenix.c
+++ b/drivers/usb/serial/iuu_phoenix.c
@@ -360,7 +360,7 @@ static void iuu_led_activity_on(struct urb *urb)
int result;
char *buf_ptr = port->write_urb->transfer_buffer;
*buf_ptr++ = IUU_SET_LED;
-   if (xmas == 1) {
+   if (xmas) {
get_random_bytes(buf_ptr, 6);
*(buf_ptr+7) = 1;
} else {
@@ -380,7 +380,7 @@ static void iuu_led_activity_off(struct urb *urb)
struct usb_serial_port *port = urb->context;
int result;
char *buf_ptr = port->write_urb->transfer_buffer;
-   if (xmas == 1) {
+   if (xmas) {
iuu_rxcmd(urb);
return;
} else {
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 01/14] USB: serial: safe_serial: fix assignment of bool to 0/1

2016-01-30 Thread Mathieu OTHACEHE
This patch fixes the following coccinelle warnings:

drivers/usb/serial/safe_serial.c:84:12-16: WARNING: Assignment of bool to 0/1
drivers/usb/serial/safe_serial.c:281:2-8: WARNING: Assignment of bool to 0/1

Signed-off-by: Mathieu OTHACEHE 
---
 drivers/usb/serial/safe_serial.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/serial/safe_serial.c b/drivers/usb/serial/safe_serial.c
index b2dff0f..5662df6 100644
--- a/drivers/usb/serial/safe_serial.c
+++ b/drivers/usb/serial/safe_serial.c
@@ -81,7 +81,7 @@
 #define CONFIG_USB_SERIAL_SAFE_PADDED 0
 #endif
 
-static bool safe = 1;
+static bool safe = true;
 static bool padded = CONFIG_USB_SERIAL_SAFE_PADDED;
 
 #define DRIVER_AUTHOR "s...@lineo.com, t...@lineo.com, Johan Hovold 
"
@@ -278,7 +278,7 @@ static int safe_startup(struct usb_serial *serial)
case LINEO_SAFESERIAL_CRC:
break;
case LINEO_SAFESERIAL_CRC_PADDED:
-   padded = 1;
+   padded = true;
break;
default:
return -EINVAL;
-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 00/14] USB: serial: Fix coccinelle warnings

2016-01-30 Thread Mathieu OTHACEHE
This series of patches fixes all coccinelle warnings in
USB serial subsystem

Mathieu OTHACEHE (14):
  USB: serial: safe_serial: fix assignment of bool to 0/1
  USB: serial: safe_serial: fix assignment of bool to non 0/1 constant
  USB: serial: quatech2: remove comparison to bool
  USB: serial: iuu_phoenix: remove comparison of bool
  USB: serial: mos7840: remove comparison to bool
  USB: serial: garmin_gps: move constants to right
  USB: serial: ftdi_sio: move constants to right
  USB: serial: keyspan: remove unused semicolon
  USB: serial: cyberjack: remove unneeded variable
  USB: serial: garmin_gps: remove unneeded variable
  USB: serial: mos7840: move constants to right
  USB: serial: ch341: move constants to right
  USB: serial: f81232: move constants to right
  USB: serial: kl5kusb105: remove unneeded semicolons

 drivers/usb/serial/ch341.c   |  2 +-
 drivers/usb/serial/cyberjack.c   |  3 +--
 drivers/usb/serial/f81232.c  |  2 +-
 drivers/usb/serial/ftdi_sio.c| 16 ++---
 drivers/usb/serial/ftdi_sio.h|  8 +++
 drivers/usb/serial/garmin_gps.c  | 51 
 drivers/usb/serial/iuu_phoenix.c |  4 ++--
 drivers/usb/serial/keyspan.c |  2 +-
 drivers/usb/serial/kl5kusb105.c  |  3 ---
 drivers/usb/serial/mos7840.c |  8 +++
 drivers/usb/serial/quatech2.c|  2 +-
 drivers/usb/serial/safe_serial.c | 11 +++--
 12 files changed, 51 insertions(+), 61 deletions(-)

-- 
2.6.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html