[PATCH 2.6.21-rc3] serial: Allocate minor device numbers forserial_txx9 driver

From: Atsushi Nemoto
Date: Tue Mar 13 2007 - 12:31:51 EST


The serial_txx9 driver have abused device numbers (major 4, minor 128)
if CONFIG_SERIAL_TXX9_STDSERIAL was not set. This patch makes the
driver allocate minor numbers from major 204 (Low-density serial
ports). I suppose a typical user of this driver set
CONFIG_SERIAL_TXX9_STDSERIAL to Y (i.e. use "ttyS0"), so this patch
would not cause big compatibility issue.

Signed-off-by: Atsushi Nemoto <anemo@xxxxxxxxxxxxx>
---
diff --git a/Documentation/devices.txt b/Documentation/devices.txt
index 8de132a..62f85c5 100644
--- a/Documentation/devices.txt
+++ b/Documentation/devices.txt
@@ -2808,6 +2808,9 @@ Your cooperation is appreciated.
...
190 = /dev/ttyUL3 Xilinx uartlite - port 3
191 = /dev/xvc0 Xen virtual console - port 0
+ 192 = /dev/ttyTX0 TX39/49 serial port 0
+ ...
+ 199 = /dev/ttyTX7 TX39/49 serial port 7

205 char Low-density serial ports (alternate device)
0 = /dev/culu0 Callout device for ttyLU0
diff --git a/drivers/serial/serial_txx9.c b/drivers/serial/serial_txx9.c
index 509ace7..c5607ac 100644
--- a/drivers/serial/serial_txx9.c
+++ b/drivers/serial/serial_txx9.c
@@ -40,6 +40,7 @@
* 1.07 Use CONFIG_SERIAL_TXX9_NR_UARTS. Cleanup.
* 1.08 Use platform_device.
* Fix and cleanup suspend/resume/initialization codes.
+ * 1.09 Use major 204 if CONFIG_SERIAL_TXX9_STDSERIAL was not set.
*/

#if defined(CONFIG_SERIAL_TXX9_CONSOLE) && defined(CONFIG_MAGIC_SYSRQ)
@@ -62,7 +63,7 @@

#include <asm/io.h>

-static char *serial_version = "1.08";
+static char *serial_version = "1.09";
static char *serial_name = "TX39/49 Serial driver";

#define PASS_LIMIT 256
@@ -70,13 +71,14 @@ static char *serial_name = "TX39/49 Serial driver";
#if !defined(CONFIG_SERIAL_TXX9_STDSERIAL)
/* "ttyS" is used for standard serial driver */
#define TXX9_TTY_NAME "ttyTX"
-#define TXX9_TTY_MINOR_START (64 + 64) /* ttyTX0(128), ttyTX1(129) */
+#define TXX9_TTY_MINOR_START 192
+#define TXX9_TTY_MAJOR 204
#else
/* acts like standard serial driver */
#define TXX9_TTY_NAME "ttyS"
#define TXX9_TTY_MINOR_START 64
-#endif
#define TXX9_TTY_MAJOR TTY_MAJOR
+#endif

/* flag aliases */
#define UPF_TXX9_HAVE_CTS_LINE UPF_BUGGY_UART


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/