Source-Changes-HG archive

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

[src/trunk]: src/sys/dev/ic AHCI 1.3.1 section 5.5.3 "Processing Completed Co...



details:   https://anonhg.NetBSD.org/src/rev/1603c6265a95
branches:  trunk
changeset: 958161:1603c6265a95
user:      jmcneill <jmcneill%NetBSD.org@localhost>
date:      Sun Dec 27 15:13:07 2020 +0000

description:
AHCI 1.3.1 section 5.5.3 "Processing Completed Commands" says that we
should clear PxIS before IS.IPS.

diffstat:

 sys/dev/ic/ahcisata_core.c |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (33 lines):

diff -r cf5c6224b300 -r 1603c6265a95 sys/dev/ic/ahcisata_core.c
--- a/sys/dev/ic/ahcisata_core.c        Sun Dec 27 14:41:25 2020 +0000
+++ b/sys/dev/ic/ahcisata_core.c        Sun Dec 27 15:13:07 2020 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ahcisata_core.c,v 1.89 2020/12/26 15:40:29 jmcneill Exp $      */
+/*     $NetBSD: ahcisata_core.c,v 1.90 2020/12/27 15:13:07 jmcneill Exp $      */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ahcisata_core.c,v 1.89 2020/12/26 15:40:29 jmcneill Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ahcisata_core.c,v 1.90 2020/12/27 15:13:07 jmcneill Exp $");
 
 #include <sys/types.h>
 #include <sys/malloc.h>
@@ -599,13 +599,13 @@
                AHCIDEBUG_PRINT(("%s ahci_intr 0x%x\n", AHCINAME(sc), is),
                    DEBUG_INTR);
                r = 1;
-               AHCI_WRITE(sc, AHCI_IS, is);
                ports = is;
                while ((bit = ffs(ports)) != 0) {
                        bit--;
                        ahci_intr_port(&sc->sc_channels[bit]);
                        ports &= ~(1U << bit);
                }
+               AHCI_WRITE(sc, AHCI_IS, is);
        }
 
        return r;



Home | Main Index | Thread Index | Old Index