summaryrefslogtreecommitdiff
path: root/sys/arch/mac68k/dev/adbvar.h
diff options
context:
space:
mode:
authorbriggs <briggs@cvs.openbsd.org>1997-02-23 06:05:06 +0000
committerbriggs <briggs@cvs.openbsd.org>1997-02-23 06:05:06 +0000
commit6348d3694adc43550a2da122c7c545688180f4b2 (patch)
tree2297077ac7ecabb78e91846ac5b13585191665f9 /sys/arch/mac68k/dev/adbvar.h
parent2cd5585c523ce43d9f0a358c93162be888c32779 (diff)
Integrate code from John P. Wittkoski <jpw@netwizards.net> and
Takashi Hamada <hamada@next.etron.kanazawa-it.ac.jp>. This code interfaces directly to the hardware to support the ADB on many macs. It is enabled by "options HWDIRECT" in the configuration file. At some point, this should probably become the default method as interfacing to the ADB through the ROMs has been painful and sometimes problematic. This code should have functioning ADB support for: II series (II, SE/30, IIx, IIcx) IIsi series (IIsi, IIci, IIvx, IIvi) LC II, LC III Performa 400, 405, 430, 460, 465, 467, 600 Classic II, Color Classic, Color Classic II PB 5XX series Duo series PB 140,145,145b,160,(160c?),165,165c,170,180,180c Quadra 700,900,950 There is an off-chance that it will work on: PB 150, PB 190 Quadra/Centris 605,610,630,650,660AV,800,840AV LC 475,550,575,630 Performa 475,476,575,577,578,630 Note that functioning ADB support does not mean that everything else will work. I obviously do not own all of the above machines (does anyone? ;-)... Any reports are welcome. Many thanks to John Wittkoski and Takashi Hamada!
Diffstat (limited to 'sys/arch/mac68k/dev/adbvar.h')
-rw-r--r--sys/arch/mac68k/dev/adbvar.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/sys/arch/mac68k/dev/adbvar.h b/sys/arch/mac68k/dev/adbvar.h
index 97e38867a5b..3070587e981 100644
--- a/sys/arch/mac68k/dev/adbvar.h
+++ b/sys/arch/mac68k/dev/adbvar.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: adbvar.h,v 1.4 1997/01/24 01:35:28 briggs Exp $ */
+/* $OpenBSD: adbvar.h,v 1.5 1997/02/23 06:04:55 briggs Exp $ */
/* $NetBSD: adbvar.h,v 1.5 1997/01/13 07:01:24 scottr Exp $ */
/*-
@@ -31,6 +31,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+#include <machine/adbsys.h>
+
#define ADB_MAXTRACE (NBPG / sizeof(int) - 1)
extern int adb_traceq[ADB_MAXTRACE];
extern int adb_traceq_tail;
@@ -64,3 +66,25 @@ void extdms_complete __P((void));
/* adbsys.c */
void adb_complete __P((caddr_t buffer, caddr_t data_area, int adb_command));
void extdms_init __P((int));
+
+#ifdef HWDIRECT
+
+/* types of adb hardware that we (will eventually) support */
+#define ADB_HW_UNKNOWN 0x01 /* don't know */
+#define ADB_HW_II 0x02 /* Mac II series */
+#define ADB_HW_IISI 0x03 /* Mac IIsi series */
+#define ADB_HW_PB 0x04 /* PowerBook series */
+#define ADB_HW_CUDA 0x05 /* Machines with a Cuda chip */
+
+/* adb_direct.c */
+int adb_poweroff __P((void));
+int CountADBs __P((void));
+void ADBReInit __P((void));
+int GetIndADB __P((ADBDataBlock * info, int index));
+int GetADBInfo __P((ADBDataBlock * info, int adbAddr));
+int SetADBInfo __P((ADBSetInfoBlock * info, int adbAddr));
+int ADBOp __P((Ptr buffer, Ptr compRout, Ptr data, short commandNum));
+int adb_read_date_time __P((unsigned long *t));
+int adb_set_date_time __P((unsigned long t));
+
+#endif