Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-1-5]: src/sys/arch/mac68k/dev Pull up rev 1.15 from scottr (appro...



details:   https://anonhg.NetBSD.org/src/rev/482f87c91c99
branches:  netbsd-1-5
changeset: 489564:482f87c91c99
user:      scottr <scottr%NetBSD.org@localhost>
date:      Thu Sep 28 19:04:32 2000 +0000

description:
Pull up rev 1.15 from scottr (approved by thorpej):
  On the Duo, poll the Power Manager directly rather than waiting
  for the VIA to indicate that the PM has data queued.

diffstat:

 sys/arch/mac68k/dev/pm_direct.c |  41 +++++++++++++++++------------------------
 1 files changed, 17 insertions(+), 24 deletions(-)

diffs (78 lines):

diff -r f7be1a795aed -r 482f87c91c99 sys/arch/mac68k/dev/pm_direct.c
--- a/sys/arch/mac68k/dev/pm_direct.c   Thu Sep 28 19:02:03 2000 +0000
+++ b/sys/arch/mac68k/dev/pm_direct.c   Thu Sep 28 19:04:32 2000 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: pm_direct.c,v 1.13.4.1 2000/09/21 13:06:32 scottr Exp $        */
+/*     $NetBSD: pm_direct.c,v 1.13.4.2 2000/09/28 19:04:32 scottr Exp $        */
 
 /*
  * Copyright (C) 1997 Takashi Hamada
@@ -221,13 +221,6 @@
 };
 extern void    adb_pass_up __P((struct adbCommand *));
 
-#if 0
-/*
- * Define the external functions
- */
-extern int     zshard __P((int));              /* from zs.c */
-#endif
-
 #ifdef ADB_DEBUG
 /*
  * This function dumps contents of the PMData
@@ -306,11 +299,7 @@
 {
        while (PM_IS_ON) {
 #ifdef PM_GRAB_SI
-#if 0
-               zshard(0);              /* grab any serial interrupts */
-#else
-               (void)intr_dispatch(0x70);
-#endif
+               (void)intr_dispatch(0x70);      /* grab any serial interrupts */
 #endif
                if ((--delay) < 0)
                        return 1;       /* timeout */
@@ -328,11 +317,7 @@
 {
        while (PM_IS_OFF) {
 #ifdef PM_GRAB_SI
-#if 0
-               zshard(0);              /* grab any serial interrupts */
-#else
-               (void)intr_dispatch(0x70);
-#endif
+               (void)intr_dispatch(0x70);      /* grab any serial interrupts */
 #endif
                if ((--delay) < 0)
                        return 0;       /* timeout */
@@ -1068,14 +1053,22 @@
        /* wait until the PM interrupt is occured */
        delay = 0x80000;
        while (adbWaiting == 1) {
-               if ((via_reg(VIA1, vIFR) & 0x10) == 0x10)
+               switch (mac68k_machine.machineid) {
+               case MACH_MACPB210:
+               case MACH_MACPB230:     /* daishi tested with Duo230 */
+               case MACH_MACPB250:
+               case MACH_MACPB270:
+               case MACH_MACPB280:
+               case MACH_MACPB280C:
                        pm_intr((void *)0);
+                       break;
+               default:
+                       if ((via_reg(VIA1, vIFR) & 0x10) == 0x10)
+                               pm_intr((void *)0);
+                       break;
+               }
 #ifdef PM_GRAB_SI
-#if 0
-                       zshard(0);              /* grab any serial interrupts */
-#else
-                       (void)intr_dispatch(0x70);
-#endif
+               (void)intr_dispatch(0x70);      /* grab any serial interrupts */
 #endif
                if ((--delay) < 0) {
                        splx(s);



Home | Main Index | Thread Index | Old Index