summaryrefslogtreecommitdiff
path: root/drivers/staging/dgnc/dgnc_cls.c
diff options
context:
space:
mode:
authorstalinsrinivasan.s <stalinsrinivasan.subramanian@in.bosch.com>2013-12-20 16:33:26 (GMT)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-12-20 16:54:46 (GMT)
commit9979ef7d736cb7ea5f7d1ec58c95ab9b651012e6 (patch)
tree35a2e64e495e542a9e45c1f5f3c29e0fc83b5b04 /drivers/staging/dgnc/dgnc_cls.c
parentcb3714a6b0b5fe1737b5138ddadce16cf4230a26 (diff)
downloadlinux-9979ef7d736cb7ea5f7d1ec58c95ab9b651012e6.tar.xz
staging: dgnc: fix checkpatch.pl usage of volatile.
This is a patch to the dgnc_cls.c file that fixes up volatile usage warning found by the checkpatch.pl tool Signed-off-by: S. Stalin Srinivasan <stalinsrinivasan.s@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/dgnc/dgnc_cls.c')
-rw-r--r--drivers/staging/dgnc/dgnc_cls.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/staging/dgnc/dgnc_cls.c b/drivers/staging/dgnc/dgnc_cls.c
index 3adf404..8697698 100644
--- a/drivers/staging/dgnc/dgnc_cls.c
+++ b/drivers/staging/dgnc/dgnc_cls.c
@@ -1151,7 +1151,8 @@ static void cls_copy_data_from_queue_to_uart(struct channel_t *ch)
static void cls_parse_modem(struct channel_t *ch, uchar signals)
{
- volatile uchar msignals = signals;
+ uchar msignals = signals;
+ ulong lock_flags;
if (!ch || ch->magic != DGNC_CHANNEL_MAGIC)
return;
@@ -1163,6 +1164,7 @@ static void cls_parse_modem(struct channel_t *ch, uchar signals)
* Do altpin switching. Altpin switches DCD and DSR.
* This prolly breaks DSRPACE, so we should be more clever here.
*/
+ DGNC_LOCK(ch->ch_lock, lock_flags);
if (ch->ch_digi.digi_flags & DIGI_ALTPIN) {
uchar mswap = signals;
if (mswap & UART_MSR_DDCD) {
@@ -1182,6 +1184,7 @@ static void cls_parse_modem(struct channel_t *ch, uchar signals)
msignals |= UART_MSR_DCD;
}
}
+ DGNC_UNLOCK(ch->ch_lock, lock_flags);
/*
* Scrub off lower bits. They signify delta's, which I don't
@@ -1189,6 +1192,7 @@ static void cls_parse_modem(struct channel_t *ch, uchar signals)
*/
signals &= 0xf0;
+ DGNC_LOCK(ch->ch_lock, lock_flags);
if (msignals & UART_MSR_DCD)
ch->ch_mistat |= UART_MSR_DCD;
else
@@ -1208,6 +1212,7 @@ static void cls_parse_modem(struct channel_t *ch, uchar signals)
ch->ch_mistat |= UART_MSR_CTS;
else
ch->ch_mistat &= ~UART_MSR_CTS;
+ DGNC_UNLOCK(ch->ch_lock, lock_flags);
DPR_MSIGS((