]> git.karo-electronics.de Git - linux-beck.git/commitdiff
staging: dgnc: fix checkpatch.pl usage of volatile.
authorstalinsrinivasan.s <stalinsrinivasan.subramanian@in.bosch.com>
Fri, 20 Dec 2013 16:33:26 +0000 (22:03 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 20 Dec 2013 16:54:46 +0000 (08:54 -0800)
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>
drivers/staging/dgnc/dgnc_cls.c

index 3adf40434bee32c61fd04fde5742a16220623fe0..8697698921aa93d8df8916eb4daf240be92d83e1 100644 (file)
@@ -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((