Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Aug 2006 05:35:35 +0400
From:      Oleg Bulyzhin <oleg@FreeBSD.org>
To:        David Christensen <davidch@broadcom.com>
Cc:        brad@openbsd.org, Gleb Smirnoff <glebius@FreeBSD.org>, net@FreeBSD.org
Subject:   Re: bge(4) one packet wedge
Message-ID:  <20060824013535.GD27699@lath.rinet.ru>
In-Reply-To: <09BFF2FA5EAB4A45B6655E151BBDD90301D43136@NT-IRVA-0750.brcm.ad.broadcom.com>
References:  <20060824010423.GA27699@lath.rinet.ru> <09BFF2FA5EAB4A45B6655E151BBDD90301D43136@NT-IRVA-0750.brcm.ad.broadcom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Aug 23, 2006 at 06:21:28PM -0700, David Christensen wrote:
> Here's how it's done in Linux:
> 
> static void tg3_disable_ints(struct tg3 *tp)
> {
> 	tw32(TG3PCI_MISC_HOST_CTRL,
> 	     (tp->misc_host_ctrl | MISC_HOST_CTRL_MASK_PCI_INT));
> 	tw32_mailbox_f(MAILBOX_INTERRUPT_0 + TG3_64BIT_REG_LOW,
> 0x00000001);
> }
> 
> static void tg3_enable_ints(struct tg3 *tp)
> {
> 	tp->irq_sync = 0;
> 	wmb();
> 
> 	tw32(TG3PCI_MISC_HOST_CTRL,
> 	     (tp->misc_host_ctrl & ~MISC_HOST_CTRL_MASK_PCI_INT));
> 	tw32_mailbox_f(MAILBOX_INTERRUPT_0 + TG3_64BIT_REG_LOW,
> 		       (tp->last_tag << 24));
> 	if (tp->tg3_flags2 & TG3_FLG2_1SHOT_MSI)
> 		tw32_mailbox_f(MAILBOX_INTERRUPT_0 + TG3_64BIT_REG_LOW,
> 			       (tp->last_tag << 24));
> 	tg3_cond_int(tp);
> }
> 
> > 
> > P.S. bcm5705 does not support tagged status mode, am i right?
> 
> No, the 5705 should support tagged status mode, only the 5788 doesn't
> support it.  The 5705 and 5788 are very closely related though.
> 

Thank you. I'll look what's wrong with my interrupt handler.

-- 
Oleg.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060824013535.GD27699>