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 pmac_zilog driver for the z85C30 chip on many powermacs
+         historically used the device numbers for /dev/ttySn.  The
+         8250 serial port driver also uses these numbers, which means
+         the two drivers being unable to coexist; you could not use
+         both z85C30 and 8250 type ports at the same time.
+
+         If this option is not selected, the pmac_zilog driver will
+         use the device numbers allocated for /dev/ttyPZn.  This allows
+         the pmac_zilog and 8250 drivers to co-exist, but may cause
+         existing userspace setups to break.  Programs that need to
+         access the built-in serial ports on powermacs will need to
+         be reconfigured to use /dev/ttyPZn instead of /dev/ttySn.
+
+         If you enable this option, any z85c30 ports in the system will
+         be registered as ttyS0 onwards as in the past, and you will be
+         unable to use the 8250 module for PCMCIA or other 16C550-style
+         UARTs.
+
+         Say N unless you need the z85c30 ports on your powermac
+         to appear as /dev/ttySn.
+
 config SERIAL_PMACZILOG_CONSOLE
        bool "Console on PowerMac z85c30 serial port"
        depends on SERIAL_PMACZILOG=y
 
 
 #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
 
 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,
 };
 
 
 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,
        
        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