Source-Changes-HG archive

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

[src/trunk]: src/sys/dev/ic Fix DMA status reading on big-endian systems. Fro...



details:   https://anonhg.NetBSD.org/src/rev/690c5d0e7c0a
branches:  trunk
changeset: 486518:690c5d0e7c0a
user:      soren <soren%NetBSD.org@localhost>
date:      Wed May 24 07:49:13 2000 +0000

description:
Fix DMA status reading on big-endian systems. From Sanjay Lal on port-macppc.

diffstat:

 sys/dev/ic/i82557.c |  8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)

diffs (36 lines):

diff -r 8e531fe925b3 -r 690c5d0e7c0a sys/dev/ic/i82557.c
--- a/sys/dev/ic/i82557.c       Wed May 24 06:04:12 2000 +0000
+++ b/sys/dev/ic/i82557.c       Wed May 24 07:49:13 2000 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: i82557.c,v 1.28 2000/05/24 06:04:12 soren Exp $        */
+/*     $NetBSD: i82557.c,v 1.29 2000/05/24 07:49:13 soren Exp $        */
 
 /*-
  * Copyright (c) 1997, 1998, 1999 The NetBSD Foundation, Inc.
@@ -1375,7 +1375,7 @@
                FXP_CDCONFIGSYNC(sc,
                    BUS_DMASYNC_POSTREAD|BUS_DMASYNC_POSTWRITE);
                DELAY(1);
-       } while ((cbp->cb_status & FXP_CB_STATUS_C) == 0 && --i);
+       } while ((htole16(cbp->cb_status) & FXP_CB_STATUS_C) == 0 && --i);
        if (i == 0) {
                printf("%s at line %d: dmasync timeout\n",
                    sc->sc_dev.dv_xname, __LINE__);
@@ -1407,7 +1407,7 @@
                FXP_CDIASSYNC(sc,
                    BUS_DMASYNC_POSTREAD|BUS_DMASYNC_POSTWRITE);
                DELAY(1);
-       } while ((cb_ias->cb_status & FXP_CB_STATUS_C) == 0 && --i);
+       } while ((htole16(cb_ias->cb_status) & FXP_CB_STATUS_C) == 0 && --i);
        if (i == 0) {
                printf("%s at line %d: dmasync timeout\n",
                    sc->sc_dev.dv_xname, __LINE__);
@@ -1870,7 +1870,7 @@
                FXP_CDMCSSYNC(sc,
                    BUS_DMASYNC_POSTREAD|BUS_DMASYNC_POSTWRITE);
                DELAY(1);
-       } while ((mcsp->cb_status & FXP_CB_STATUS_C) == 0 && --count);
+       } while ((htole16(mcsp->cb_status) & FXP_CB_STATUS_C) == 0 && --count);
        if (count == 0) {
                printf("%s at line %d: dmasync timeout\n",
                    sc->sc_dev.dv_xname, __LINE__);



Home | Main Index | Thread Index | Old Index