summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Villalovos <jvillalo@redhat.com>2010-07-20 15:26:46 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2010-08-10 13:47:45 -0700
commit93e3d58284626ff6466f9c3dac8800cd6f8079c6 (patch)
tree4ac91dfa0fe4d485a81439dbb4118978d9cf3cb2
parente8dd4757a6cf0a8909148a61b89fa3a6d4f9b3ee (diff)
downloadop-kernel-dev-93e3d58284626ff6466f9c3dac8800cd6f8079c6.zip
op-kernel-dev-93e3d58284626ff6466f9c3dac8800cd6f8079c6.tar.gz
serial: fix missing bit coverage of ASYNC_FLAGS
It seems that currently ASYNC_FLAGS is one bit short of covering all the bits of the ASYNC user flags. In particular it does not cover the ASYNC_AUTOPROBE bit. ASYNCB_LAST_USER and ASYNCB_AUTOPROBE are both equal to 15. Therefore: ASYNC_AUTOPROBE = 1000 0000 0000 0000 ASYNC_FLAGS = 0111 1111 1111 1111 So ASYNC_FLAGS is not covering the ASYNC_AUTOPROBE bit. This patch fixes the issue and with the patch the values will be: ASYNC_AUTOPROBE = 1000 0000 0000 0000 ASYNC_FLAGS = 1111 1111 1111 1111 As a side note, doing a "git grep" I didn't find any use of ASYNC_AUTOPROBE or ASYNCB_AUTOPROBE in the kernel, besides this include file. Signed-off-by: John Villalovos <john.l.villalovos@intel.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--include/linux/serial.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/serial.h b/include/linux/serial.h
index c8613c3..c3b45ad 100644
--- a/include/linux/serial.h
+++ b/include/linux/serial.h
@@ -151,7 +151,7 @@ struct serial_uart_config {
#define ASYNC_BUGGY_UART (1U << ASYNCB_BUGGY_UART)
#define ASYNC_AUTOPROBE (1U << ASYNCB_AUTOPROBE)
-#define ASYNC_FLAGS ((1U << ASYNCB_LAST_USER) - 1)
+#define ASYNC_FLAGS ((1U << (ASYNCB_LAST_USER + 1)) - 1)
#define ASYNC_USR_MASK (ASYNC_SPD_HI|ASYNC_SPD_VHI| \
ASYNC_CALLOUT_NOHUP|ASYNC_SPD_SHI|ASYNC_LOW_LATENCY)
#define ASYNC_SPD_CUST (ASYNC_SPD_HI|ASYNC_SPD_VHI)
OpenPOWER on IntegriCloud