Bring our incarnation of John Wittowski's direct adb driver into compatible
authorgene <gene@openbsd.org>
Mon, 14 Apr 1997 18:47:48 +0000 (18:47 +0000)
committergene <gene@openbsd.org>
Mon, 14 Apr 1997 18:47:48 +0000 (18:47 +0000)
state with NetBSD's.  The direct-to-ADB code is now enabled by default.
Using 'options MRG_ADB' will cause the kernel to revert to the 'old standby'
code.

13 files changed:
sys/arch/mac68k/conf/GENERIC
sys/arch/mac68k/conf/GENERICSBC
sys/arch/mac68k/conf/files.mac68k
sys/arch/mac68k/dev/adb_direct.c
sys/arch/mac68k/dev/adbsys.c
sys/arch/mac68k/dev/adbvar.h
sys/arch/mac68k/mac68k/machdep.c
sys/arch/mac68k/mac68k/macrom.c
sys/arch/mac68k/mac68k/macrom.h
sys/arch/mac68k/mac68k/macromasm.s
sys/arch/mac68k/mac68k/pram.c
sys/arch/mac68k/mac68k/pram.h
sys/arch/mac68k/mac68k/pramasm.s

index df1b62b..5fd7c2f 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: GENERIC,v 1.19 1997/04/14 00:27:28 briggs Exp $
+#      $OpenBSD: GENERIC,v 1.20 1997/04/14 18:47:48 gene Exp $
 #      $NetBSD: GENERIC,v 1.52 1997/01/13 23:34:07 scottr Exp $
 #
 # GENERIC
@@ -61,7 +61,7 @@ options               COMPAT_SUNOS
 options                ZS_CONSOLE_ABORT
 options                DISABLE_EXT_CACHE # Don't use IIci external cache
 options                DISABLE_ADB_WITH_SERIAL_CONSOLE
-options                HWDIRECT
+#options       MRG_ADB           # Use ROM-based ADB driver
 
 config         bsd     swap generic
 options                GENERIC
index e42e528..47a9110 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: GENERICSBC,v 1.5 1997/04/14 00:27:29 briggs Exp $
+#      $OpenBSD: GENERICSBC,v 1.6 1997/04/14 18:47:50 gene Exp $
 #      $NetBSD: GENERIC,v 1.52 1997/01/13 23:34:07 scottr Exp $
 #
 # GENERIC
@@ -61,7 +61,7 @@ options               COMPAT_SUNOS
 options                ZS_CONSOLE_ABORT
 options                DISABLE_EXT_CACHE # Don't use IIci external cache
 options                DISABLE_ADB_WITH_SERIAL_CONSOLE
-options                HWDIRECT
+#options       MRG_ADB           # Use ROM-based ADB driver
 
 config         bsd     swap generic
 options                GENERIC
index e072f7c..2807060 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: files.mac68k,v 1.15 1997/03/28 12:38:57 briggs Exp $
+#      $OpenBSD: files.mac68k,v 1.16 1997/04/14 18:47:51 gene Exp $
 #      $NetBSD: files.mac68k,v 1.61 1997/03/01 20:22:16 scottr Exp $
 
 # mac68k-specific configuration info
@@ -26,8 +26,8 @@ attach        adb at obio_norm
 file   arch/mac68k/dev/adb.c           adb
 file   arch/mac68k/dev/adbsys.c
 file   arch/mac68k/dev/adbsysasm.s
-file   arch/mac68k/dev/adb_direct.c    hwdirect
-file   arch/mac68k/dev/pm_direct.c     hwdirect
+file   arch/mac68k/dev/adb_direct.c
+file   arch/mac68k/dev/pm_direct.c
 
 device asc
 attach asc at obio_norm
index 8850474..3d1d81f 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: adb_direct.c,v 1.4 1997/04/07 01:22:15 briggs Exp $   */
+/*     $OpenBSD: adb_direct.c,v 1.5 1997/04/14 18:47:53 gene Exp $     */
 /*  adb_direct.c 1.91 1/20/97 jpw */
 
 /*
@@ -1936,7 +1936,7 @@ set_adb_info(ADBSetInfoBlock * info, int adbAddr)
 
 }
 
-#ifdef HWDIRECT
+#ifndef MRG_ADB
 long
 mrg_adbintr(void)
 {
@@ -2163,7 +2163,7 @@ adb_prog_switch_disable(void)
         }
 }                               /* adb_prog_switch_disable */
 
-#ifdef HWDIRECT
+#ifndef MRG_ADB
 
 int 
 CountADBs(void)
index efe5c27..9536926 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: adbsys.c,v 1.8 1997/04/03 03:53:27 briggs Exp $       */
+/*     $OpenBSD: adbsys.c,v 1.9 1997/04/14 18:47:55 gene Exp $ */
 /*     $NetBSD: adbsys.c,v 1.24 1997/01/13 07:01:23 scottr Exp $       */
 
 /*-
@@ -183,8 +183,9 @@ adb_init()
        }
 #endif
 
-#ifndef HWDIRECT               /* We don't care about ADB ROM driver if we are
-                                * using the HWDIRECT method for ADB/PRAM/RTC. */
+#ifdef MRG_ADB                 /* We don't care about ADB ROM driver if we
+                                * aren't using the MRG_ADB method for
+                                * ADB/PRAM/RTC. */
        if (!mrg_romready()) {
                printf("adb: no ROM ADB driver in this kernel for this machine\n");
                return;
@@ -206,10 +207,10 @@ adb_init()
        /*
         * Initialize ADB
         *
-        * If using HWDIRECT method to access ADB, then call
+        * If not using MRG_ADB method to access ADB, then call
         * ADBReInit directly.  Otherwise use ADB AlternateInit()
         */
-#ifdef HWDIRECT
+#ifndef MRG_ADB
        printf("adb: calling ADBReInit\n");
        ADBReInit();
 #else
index 3070587..b6335ff 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: adbvar.h,v 1.5 1997/02/23 06:04:55 briggs Exp $       */
+/*     $OpenBSD: adbvar.h,v 1.6 1997/04/14 18:47:56 gene Exp $ */
 /*     $NetBSD: adbvar.h,v 1.5 1997/01/13 07:01:24 scottr Exp $        */
 
 /*-
@@ -67,7 +67,7 @@ void  extdms_complete __P((void));
 void   adb_complete __P((caddr_t buffer, caddr_t data_area, int adb_command));
 void   extdms_init __P((int));
 
-#ifdef HWDIRECT
+#ifndef MRG_ADB
 
 /* types of adb hardware that we (will eventually) support */
 #define ADB_HW_UNKNOWN         0x01    /* don't know */
index fac1e81..c3384b3 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: machdep.c,v 1.37 1997/04/07 03:23:35 briggs Exp $     */
+/*     $OpenBSD: machdep.c,v 1.38 1997/04/14 18:47:59 gene Exp $       */
 /*     $NetBSD: machdep.c,v 1.134 1997/02/14 06:15:30 scottr Exp $     */
 
 /*
@@ -587,8 +587,8 @@ boot(howto)
        if (howto & RB_HALT) {
                printf("halted\n\n");
                via_shutdown();
-#ifdef HWDIRECT                 /* adb_poweroff is available only when
-                                 * the HWDIRECT ADB method is used. */
+#ifndef MRG_ADB                 /* adb_poweroff is available only when
+                                 * the MRG_ADB method isn't used.       */
                 adb_poweroff(); /* Shut down machines whose power functions
                                  * are accessed via modified ADB calls. */
 #endif
index 298b572..cc24244 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: macrom.c,v 1.14 1997/04/14 02:10:21 briggs Exp $      */
+/*     $OpenBSD: macrom.c,v 1.15 1997/04/14 18:48:01 gene Exp $        */
 /*     $NetBSD: macrom.c,v 1.31 1997/03/01 17:20:34 scottr Exp $       */
 
 /*-
@@ -394,8 +394,8 @@ mrg_jkybdtaskpanic()        /* JKybdTask stopper */
        panic("Agh!  Called JKybdTask!\n");
 }
 
-#ifndef HWDIRECT       /* mrg_adbintr and mrg_pmintr are not defined
-                         * here if we are using the HWDIRECT method to
+#ifdef MRG_ADB         /* mrg_adbintr and mrg_pmintr are not defined
+                         * here if we are using the MRG_ADB method to
                         * access the ADB/PRAM/RTC. They are
                         * defined in adb_direct.c */
 long
@@ -454,7 +454,7 @@ mrg_pmintr()        /* Call ROM PM Interrupt */
        }
        return(1);
 }
-#endif /* ifndef HWDIRECT */
+#endif /* ifdef MRG_ADB */
 
 
 void
@@ -1098,7 +1098,7 @@ setup_egret(void)
 #endif
 }
 
-#ifndef HWDIRECT
+#ifdef MRG_ADB
 static void     setup_pm __P((void));
 
 static void
@@ -1146,8 +1146,8 @@ mrg_initadbintr()
                        HwCfgFlags, HwCfgFlags2, HwCfgFlags3);
        }
 
-#ifdef HWDIRECT                /* Extra Egret setup not required for the
-                        * HWDIRECT method. */
+#ifndef MRG_ADB                /* Extra Egret setup not required for the
+                        * MRG_ADB method. */
         printf("mrg: skipping egret setup\n");
 #else
        /*
@@ -1440,7 +1440,7 @@ mrg_fixupROMBase(obase, nbase)
 #endif
 }   
 
-#ifndef HWDIRECT
+#ifdef MRG_ADB
 void
 ADBAlternateInit(void)
 {
index 71314a6..04db780 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: macrom.h,v 1.7 1997/04/05 15:29:12 briggs Exp $       */
+/*     $OpenBSD: macrom.h,v 1.8 1997/04/14 18:48:03 gene Exp $ */
 /*     $NetBSD: macrom.h,v 1.9 1996/05/25 14:45:35 briggs Exp $        */
 
 /*-
@@ -111,8 +111,8 @@ int MyOwnTrap(
 void KnownRTS(
        void);
 
-#ifndef HWDIRECT       /* These routines are NOT defined here
-                        * if using the HWDIRECT method for accessing
+#ifdef MRG_ADB         /* These routines are defined here
+                        * if using the MRG_ADB method for accessing
                         * the ADB/PRAM/RTC. They are 
                         * defined in adb_direct.h */
 /* ADB Manager */
index 76e83a4..b465fb5 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: macromasm.s,v 1.7 1997/04/05 15:29:13 briggs Exp $    */
+/*     $OpenBSD: macromasm.s,v 1.8 1997/04/14 18:48:04 gene Exp $      */
 /*     $NetBSD: macromasm.s,v 1.11 1996/05/25 14:45:37 briggs Exp $    */
 
 /*-
        .global _panic
        .global _printf
 
-#ifndef HWDIRECT       /* These functions are NOT defined here if using the
-                        * HWDIRECT method of accessing the ADB/PRAM/RTC. 
+#ifdef MRG_ADB         /* These functions are defined here if using the
+                        * MRG_ADB method of accessing the ADB/PRAM/RTC. 
                         * They are in adb_direct.c. */
 /*
  * Most of the following glue just takes C function calls, converts
@@ -222,7 +222,7 @@ _ADBOp:
        movl    sp@(16), d0
        .word 0xa07c
        rts
-#endif /* ifndef HWDIRECT */
+#endif /* ifdef MRG_ADB */
 
 
 #if 0
index 8a22388..cff3c99 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: pram.c,v 1.5 1997/02/23 06:05:04 briggs Exp $ */
+/*     $OpenBSD: pram.c,v 1.6 1997/04/14 18:48:06 gene Exp $   */
 /*     $NetBSD: pram.c,v 1.11 1996/10/21 05:42:29 scottr Exp $ */
 
 /*-
@@ -46,7 +46,7 @@
 
 #include <arch/mac68k/mac68k/pram.h>
 #include <arch/mac68k/mac68k/macrom.h>
-#ifdef HWDIRECT
+#ifndef MRG_ADB
 #include <arch/mac68k/dev/adbvar.h>
 #endif
 
@@ -153,9 +153,9 @@ pram_settime(unsigned long time)
        return setPramTime(time);
 }
 
-#ifdef HWDIRECT         /* These routines are defined here only
-                         * when the HWDIRECT method for accessing
-                         * the ADB/PRAM/RTC is enabled. */
+#ifndef MRG_ADB         /* These routines are defined here only
+                         * when the MRG_ADB method for accessing
+                         * the ADB/PRAM/RTC isn't enabled. */
 
 extern int adbHardware;         /* from newadb.c */
 
@@ -219,4 +219,4 @@ setPramTime(unsigned long time)
 
 }
 
-#endif  /* ifdef HWDIRECT */
+#endif  /* ifndef MRG_ADB */
index 172f505..fc0e59e 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: pram.h,v 1.4 1997/02/23 06:05:05 briggs Exp $ */
+/*     $OpenBSD: pram.h,v 1.5 1997/04/14 18:48:07 gene Exp $   */
 /*     $NetBSD: pram.h,v 1.3 1996/05/05 06:18:53 briggs Exp $  */
 
 /*
@@ -73,8 +73,8 @@ void          setPramTime(unsigned long time);
 unsigned long  pram_readtime __P((void));
 void           pram_settime __P((unsigned long));
 
-#ifdef HWDIRECT                /* These functions exist only when ADB/PRAM/RTC
-                        * access is done via the HWDIRECT method. */
+#ifndef MRG_ADB                /* These functions exist only when ADB/PRAM/RTC
+                        * access isn't done via the MRG_ADB method. */
 
 unsigned long getPramTimeII(void);
 void setPramTimeII(unsigned long);
index 11b1e0d..62f3615 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: pramasm.s,v 1.3 1997/02/23 06:05:05 briggs Exp $      */
+/*     $OpenBSD: pramasm.s,v 1.4 1997/04/14 18:48:08 gene Exp $        */
 /*     $NetBSD: pramasm.s,v 1.4 1995/09/28 03:15:54 briggs Exp $       */
 
 /*
@@ -47,8 +47,8 @@
  * that are defined later in this file.
  */
 
-#ifndef HWDIRECT       /* These routines are NOT defined at all
-                         * if using the HWDIRECT method for accessing
+#ifdef MRG_ADB         /* These routines are defined at all
+                         * if using the MRG_ADB method for accessing
                          * the ADB/PRAM/RTC. */
 
        .text
@@ -147,8 +147,8 @@ _setPramTime:
 #else                          /* The following routines are the hardware
                                 * specific routines for the machines that
                                 * use the II-like method to access the PRAM,
-                                * and are only defined when the HWDIRECT method
-                                * is used to access the PRAM. */
+                                * and are only defined when the MRG_ADB method
+                                * isn't used to access the PRAM. */
 
 /*
  *  The following are the C interface functions to RTC access functions
@@ -420,5 +420,5 @@ ragain:
        bset    #0,a1@(0x0400)  | and return RTC data line to output
        rts                     | return to caller
 
-#endif                                 /* ifdef HWDIRECT */
+#endif                                 /* ifndef MRG_ADB */