From: David Woodhouse <dwmw2@infradead.org>
To: Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@ozlabs.org, linux-kernel@vger.kernel.org,
Alan Cox <alan@lxorguk.ukuu.org.uk>
Subject: [PATCH v3] Stop pmac_zilog from abusing 8250's device numbers; optionally.
Date: Wed, 04 Apr 2007 10:19:43 -0400 [thread overview]
Message-ID: <1175696383.2774.24.camel@shinybook.infradead.org> (raw)
In-Reply-To: <17939.17962.248566.886449@cargo.ozlabs.ibm.com>
On Wed, 2007-04-04 at 16:31 +1000, Paul Mackerras wrote:
> It seems Debian has both 8250 and pmac_zilog built in; not sure which
> one wins. Ubuntu has them both as modules and managed to get the
> right one (pmac_zilog) loaded on a colleague's powerbook.
So if you insert a PCMCIA card with an 8250-compatible port in it --
like a Bluetooth card or modem -- you won't get it to work, right?
> You'd know better than me what FC does.
Fedora has 8250 built in, which means pmac_zilog can never get loaded.
> In any case there definitely are people using pmac_zilog successfully
> on powermacs and we need to come up with a way to avoid breaking their
> setups. I'm prepared to accept that the Linux way is to be lame about
> serial port naming provided that we avoid breaking existing working
> setups.
OK, how about a config option to preserve the old behaviour...
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
diff --git a/drivers/serial/Kconfig b/drivers/serial/Kconfig
index ad9f321..09b2dd4 100644
--- a/drivers/serial/Kconfig
+++ b/drivers/serial/Kconfig
@@ -753,6 +753,25 @@ config SERIAL_PMACZILOG
PowerMac machines.
Say Y or M if you want to be able to these serial ports.
+config SERIAL_PMACZILOG_TTYS
+ bool "Use ttySn device nodes for Zilog z85c30"
+ depends on SERIAL_PMACZILOG
+ help
+ The z85C30 driver historically used the device nodes which
+ are registed to the 8250 serial port driver, which led to the
+ two drivers being unable to coexist; you could not use both
+ z85C30 and 8250 type ports at the same time.
+
+ The z83C30 driver was fixed to prevent this abuse by default,
+ but this configuration option remains in order to allow backward
+ compatibility by reverting to the old misbehaviour.
+
+ If you enable this option, any z85c30 ports in the system will
+ be registered as ttyS0 onwards, and you will be unable to use
+ the 8250 module for PCMCIA or other standard UARTs.
+
+ Say N.
+
config SERIAL_PMACZILOG_CONSOLE
bool "Console on PowerMac z85c30 serial port"
depends on SERIAL_PMACZILOG=y
diff --git a/drivers/serial/pmac_zilog.c b/drivers/serial/pmac_zilog.c
index 752ef07..28269bb 100644
--- a/drivers/serial/pmac_zilog.c
+++ b/drivers/serial/pmac_zilog.c
@@ -88,9 +88,19 @@ MODULE_LICENSE("GPL");
#define PWRDBG(fmt, arg...) printk(KERN_DEBUG fmt , ## arg)
+#ifdef CONFIG_SERIAL_PMACZILOG_TTYS
+#define PMACZILOG_MAJOR TTY_MAJOR
+#define PMACZILOG_MINOR 64
+#define PMACZILOG_NAME "ttyS"
+#else
+#define PMACZILOG_MAJOR 204
+#define PMACZILOG_MINOR 192
+#define PMACZILOG_NAME "ttyPZ"
+#endif
+
/*
- * For the sake of early serial console, we can do a pre-probe
+ * FOR the sake of early serial console, we can do a pre-probe
* (optional) of the ports at rather early boot time.
*/
static struct uart_pmac_port pmz_ports[MAX_ZS_PORTS];
@@ -99,9 +109,10 @@ static DEFINE_MUTEX(pmz_irq_mutex);
static struct uart_driver pmz_uart_reg = {
.owner = THIS_MODULE,
- .driver_name = "ttyS",
- .dev_name = "ttyS",
- .major = TTY_MAJOR,
+ .driver_name = PMACZILOG_NAME,
+ .dev_name = PMACZILOG_NAME,
+ .major = PMACZILOG_MAJOR,
+ .minor = PMACZILOG_MINOR,
};
@@ -1776,7 +1787,7 @@ static void pmz_console_write(struct console *con, const char *s, unsigned int c
static int __init pmz_console_setup(struct console *co, char *options);
static struct console pmz_console = {
- .name = "ttyS",
+ .name = PMACZILOG_NAME,
.write = pmz_console_write,
.device = uart_console_device,
.setup = pmz_console_setup,
@@ -1800,7 +1811,6 @@ static int __init pmz_register(void)
pmz_uart_reg.nr = pmz_ports_count;
pmz_uart_reg.cons = PMACZILOG_CONSOLE;
- pmz_uart_reg.minor = 64;
/*
* Register this driver with the serial core
--
dwmw2
next prev parent reply other threads:[~2007-04-04 14:20 UTC|newest]
Thread overview: 99+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-03 14:25 [PATCH] Stop pmac_zilog from abusing 8250's device numbers David Woodhouse
2007-04-03 20:37 ` Brad Boyer
2007-04-03 22:58 ` David Woodhouse
2007-04-03 23:14 ` Paul Mackerras
2007-04-03 23:28 ` David Woodhouse
2007-04-03 21:29 ` Brad Boyer
2007-04-03 23:57 ` David Woodhouse
[not found] ` <200704032210 02.GA13210@cynthia.pants.nu>
2007-04-03 22:10 ` Brad Boyer
2007-04-04 0:54 ` David Woodhouse
2007-04-03 23:09 ` Brad Boyer
2007-04-04 1:38 ` Alan Cox
2007-04-04 2:10 ` Valdis.Kletnieks
2007-04-04 1:57 ` David Lang
2007-04-04 8:51 ` Russell King
2007-04-04 9:48 ` Geert Uytterhoeven
2007-04-04 16:09 ` H. Peter Anvin
2007-04-04 16:22 ` Linas Vepstas
2007-04-04 16:34 ` David Woodhouse
2007-04-04 17:38 ` Linas Vepstas
2007-04-04 1:16 ` David Miller
2007-04-04 1:28 ` Alan Cox
2007-04-04 1:07 ` David Lang
2007-04-04 1:44 ` Alan Cox
2007-04-04 1:23 ` David Lang
2007-04-04 1:32 ` David Lang
2007-04-04 16:07 ` H. Peter Anvin
2007-04-04 17:50 ` Linas Vepstas
2007-04-04 1:50 ` David Miller
2007-04-04 11:14 ` Alan Cox
2007-04-04 12:20 ` Olivier Galibert
2007-04-04 1:48 ` David Miller
2007-04-04 3:07 ` Gerhard Mack
2007-04-11 16:30 ` Benny Amorsen
2007-04-12 15:34 ` Roland Dreier
2007-04-13 2:45 ` Gerhard Mack
2007-04-13 2:24 ` David Lang
2007-04-13 8:09 ` Geert Uytterhoeven
2007-04-04 0:02 ` David Miller
2007-04-04 0:12 ` David Woodhouse
2007-04-03 22:14 ` Brad Boyer
2007-04-04 1:13 ` Benjamin Herrenschmidt
2007-04-04 1:17 ` David Miller
2007-04-04 1:32 ` Benjamin Herrenschmidt
2007-04-04 0:01 ` [PATCH v2] " David Woodhouse
2007-04-04 1:25 ` [PATCH] " Alan Cox
2007-04-04 4:20 ` Paul Mackerras
2007-04-04 5:19 ` David Woodhouse
2007-04-04 5:50 ` David Miller
2007-04-04 7:04 ` Geert Uytterhoeven
2007-04-04 13:43 ` Maciej W. Rozycki
2007-04-04 7:52 ` Russell King
2007-04-04 8:41 ` David Miller
2007-04-04 5:53 ` Paul Mackerras
2007-04-04 6:03 ` David Woodhouse
2007-04-04 6:31 ` Paul Mackerras
2007-04-04 14:19 ` David Woodhouse [this message]
2007-04-04 23:48 ` [PATCH v3] Stop pmac_zilog from abusing 8250's device numbers; optionally Paul Mackerras
2007-04-05 12:45 ` David Woodhouse
2007-04-05 22:53 ` Paul Mackerras
2007-04-05 22:59 ` David Woodhouse
2007-04-05 14:31 ` Atsushi Nemoto
2007-04-05 14:47 ` David Woodhouse
2007-04-05 15:09 ` Atsushi Nemoto
2007-04-05 15:18 ` David Woodhouse
2007-04-05 15:49 ` Atsushi Nemoto
2007-04-05 15:56 ` Geert Uytterhoeven
2007-04-04 8:12 ` [PATCH] Stop pmac_zilog from abusing 8250's device numbers David Miller
2007-04-04 8:38 ` Russell King
2007-04-04 8:43 ` David Miller
2007-04-04 9:00 ` Russell King
2007-04-04 19:58 ` David Miller
2007-04-04 12:21 ` Theodore Tso
2007-04-04 16:10 ` Russell King
2007-04-04 16:16 ` H. Peter Anvin
2007-04-04 16:25 ` Alan Cox
2007-04-04 17:41 ` Theodore Tso
2007-04-04 18:15 ` Russell King
2007-04-04 19:50 ` David Woodhouse
2007-04-05 6:05 ` Paul Mackerras
2007-04-05 8:50 ` Russell King
2007-04-05 16:15 ` Olivier Galibert
2007-04-05 21:41 ` Pavel Machek
2007-04-03 23:56 ` David Miller
2007-04-04 1:13 ` Benjamin Herrenschmidt
2007-04-04 6:58 ` Paul Mackerras
2007-04-04 14:16 ` David Woodhouse
2007-04-03 23:55 ` David Miller
2007-04-04 1:19 ` Alan Cox
2007-04-04 1:21 ` David Miller
2007-04-04 1:36 ` Alan Cox
2007-04-04 1:47 ` David Miller
2007-04-04 7:47 ` Russell King
2007-04-04 9:55 ` Paul Mackerras
2007-04-04 16:06 ` Russell King
2007-04-04 6:58 ` Geert Uytterhoeven
2007-08-14 11:49 ` Olaf Hering
2007-08-14 11:53 ` David Woodhouse
2007-08-14 16:24 ` Olaf Hering
2007-04-04 7:55 ` Olaf Hering
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1175696383.2774.24.camel@shinybook.infradead.org \
--to=dwmw2@infradead.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).