From 32b88f57a21158ff9af5474c8069844cea24d691 Mon Sep 17 00:00:00 2001 From: Frank Schaefer Date: Tue, 18 Aug 2009 20:31:11 +0200 Subject: [PATCH] --- yaml --- r: 165018 b: refs/heads/master c: 6dd81b45fd7628f3eb308f387aee696366718f25 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/usb/serial/pl2303.c | 18 ++++++++++++++---- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 5b53320f7e37..a3c5cf9f2c90 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 25b8286805e856c8c7fda127018e31032c918015 +refs/heads/master: 6dd81b45fd7628f3eb308f387aee696366718f25 diff --git a/trunk/drivers/usb/serial/pl2303.c b/trunk/drivers/usb/serial/pl2303.c index 82055b07e02c..6ed33c7e53e2 100644 --- a/trunk/drivers/usb/serial/pl2303.c +++ b/trunk/drivers/usb/serial/pl2303.c @@ -636,11 +636,21 @@ static void pl2303_set_termios(struct tty_struct *tty, /* For reference buf[5]=3 is mark parity */ /* For reference buf[5]=4 is space parity */ if (cflag & PARODD) { - buf[5] = 1; - dbg("%s - parity = odd", __func__); + if (cflag & CMSPAR) { + buf[5] = 3; + dbg("%s - parity = mark", __func__); + } else { + buf[5] = 1; + dbg("%s - parity = odd", __func__); + } } else { - buf[5] = 2; - dbg("%s - parity = even", __func__); + if (cflag & CMSPAR) { + buf[5] = 4; + dbg("%s - parity = space", __func__); + } else { + buf[5] = 2; + dbg("%s - parity = even", __func__); + } } } else { buf[5] = 0;