m68k/mac: Skip VIA port setup unless RTC is connected
authorFinn Thain <fthain@telegraphics.com.au>
Sat, 22 Dec 2018 02:18:01 +0000 (13:18 +1100)
committerGeert Uytterhoeven <geert@linux-m68k.org>
Mon, 21 Jan 2019 09:36:53 +0000 (10:36 +0100)
Those Mac models which don't connect their RTC to VIA1 port B probably
have something else connected to those pins. Just leave them the way we
found them. Make the port B setup conditional on via_type, to match the
RTC accessors in arch/m68k/mac/misc.c.

Signed-off-by: Finn Thain <fthain@telegraphics.com.au>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
arch/m68k/mac/via.c

index acdabbe..e6c8b71 100644 (file)
@@ -197,13 +197,18 @@ void __init via_init(void)
                via1[vBufB] |= 0x40;
        }
 
-       /*
-        * Set the RTC bits to a known state: all lines to outputs and
-        * RTC disabled (yes that's 0 to enable and 1 to disable).
-        */
-
-       via1[vDirB] |= (VIA1B_vRTCEnb | VIA1B_vRTCClk | VIA1B_vRTCData);
-       via1[vBufB] |= (VIA1B_vRTCEnb | VIA1B_vRTCClk);
+       switch (macintosh_config->adb_type) {
+       case MAC_ADB_IOP:
+       case MAC_ADB_II:
+       case MAC_ADB_PB1:
+               /*
+                * Set the RTC bits to a known state: all lines to outputs and
+                * RTC disabled (yes that's 0 to enable and 1 to disable).
+                */
+               via1[vDirB] |= VIA1B_vRTCEnb | VIA1B_vRTCClk | VIA1B_vRTCData;
+               via1[vBufB] |= VIA1B_vRTCEnb | VIA1B_vRTCClk;
+               break;
+       }
 
        /* Everything below this point is VIA2/RBV only... */