Date: Wed, 27 Jan 1999 17:06:56 -0800 (PST) From: Matthew Dillon <dillon@apollo.backplane.com> To: current@FreeBSD.ORG Subject: bug in i386/eisa/ahb.c Message-ID: <199901280106.RAA81012@apollo.backplane.com> References: <199901272244.OAA64912@apollo.backplane.com>
next in thread | previous in thread | raw e-mail | index | archive | help
static __inline void
ahbqueuembox(struct ahb_softc *ahb, u_int32_t mboxval, u_int attn_code)
{
u_int loopmax = 300;
while (--loopmax) {
u_int status;
status = ahb_inb(ahb, HOSTSTAT);
if ((status & HOSTSTAT_MBOX_EMPTY|HOSTSTAT_BUSY)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
!= HOSTSTAT_MBOX_EMPTY)
break;
DELAY(20);
}
if (loopmax == 0)
panic("ahb%ld: adapter not taking commands\n", ahb->unit);
ahb_outl(ahb, MBOXOUT0, mboxval);
ahb_outb(ahb, ATTN, attn_code);
}
& has higher precedence, so this is equivalently:
if (((status & HOSTSTAT_MBOX_EMPTY) | HOSTSTAT_BUSY) ...
Rather then:
if ((status & (HOSTSTAT_MBOX_EMPTYHOSTSTAT_BUSY)) ...
Fixed.
-Matt
Matthew Dillon
<dillon@backplane.com>
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901280106.RAA81012>
