]> err.no Git - linux-2.6/commitdiff
powerpc/powermac: Use sane default baudrate for SCC debugging
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 28 Jul 2008 02:06:19 +0000 (12:06 +1000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 28 Jul 2008 06:30:52 +0000 (16:30 +1000)
When using the "sccdbg" option to route early kernel messages and
xmon to the SCC serial port on PowerMacs, when this wasn't the
configured output port of Open Firmware, we initialize the baudrate
to 57600bps. This isn't a very good default on some powermacs where
both the FW and pmac_zilog will default to 38400. This fixes it to
use the same logic as pmac_zilog to pick a default speed.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/platforms/powermac/udbg_scc.c

index 47de4d3fc1674008f90dbf380e0971c6cb2417ac..572771fd84636aaaece971daa9a6648005b862ca 100644 (file)
@@ -125,13 +125,23 @@ void udbg_scc_init(int force_scc)
        out_8(sccc, 0xc0);
 
        /* If SCC was the OF output port, read the BRG value, else
-        * Setup for 57600 8N1
+        * Setup for 38400 or 57600 8N1 depending on the machine
         */
        if (ch_def != NULL) {
                out_8(sccc, 13);
                scc_inittab[1] = in_8(sccc);
                out_8(sccc, 12);
                scc_inittab[3] = in_8(sccc);
+       } else if (machine_is_compatible("RackMac1,1")
+                  || machine_is_compatible("RackMac1,2")
+                  || machine_is_compatible("MacRISC4")) {
+               /* Xserves and G5s default to 57600 */
+               scc_inittab[1] = 0;
+               scc_inittab[3] = 0;
+       } else {
+               /* Others default to 38400 */
+               scc_inittab[1] = 0;
+               scc_inittab[3] = 1;
        }
 
        for (i = 0; i < sizeof(scc_inittab); ++i)