From owner-freebsd-mobile Thu Jun 7 13:20: 5 2001 Delivered-To: freebsd-mobile@freebsd.org Received: from ambrisko.com (adsl-64-174-51-42.dsl.snfc21.pacbell.net [64.174.51.42]) by hub.freebsd.org (Postfix) with ESMTP id 3A65F37B401 for ; Thu, 7 Jun 2001 13:19:58 -0700 (PDT) (envelope-from ambrisko@ambrisko.com) Received: (from ambrisko@localhost) by ambrisko.com (8.11.3/8.11.3) id f57KJSk04448; Thu, 7 Jun 2001 13:19:28 -0700 (PDT) (envelope-from ambrisko) From: Doug Ambrisko Message-Id: <200106072019.f57KJSk04448@ambrisko.com> Subject: Re: Cisco 350 In-Reply-To: <15135.53743.221860.713885@kitab.cisco.com> "from Richard Johnson at Jun 7, 2001 12:11:43 pm" To: Richard Johnson Date: Thu, 7 Jun 2001 13:19:27 -0700 (PDT) Cc: Tom Gwilt , freebsd-mobile@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL82 (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII Sender: owner-freebsd-mobile@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org Richard Johnson writes: | I thought 4.3 had this fix, but maybe not. I think Doug Abrisko's | fixes (http://www.ambrisko.com:/doug/an/) include it, however. At any | rate, I think you need something like this: This fixes the "out of sync error" not the "status structure to big" ie. bump an_spare to: u_int16_t an_spare[5]; in the 2 .h files in /sys/dev/an or in my tree just the one that it is defined in. I just got rid of all the dumplicate stuff in the .h files. It should be in the next patch set. BTW Cisco is releasing a new update to their driver include a command line LEAP thing and other things. I'll see if it just works with my patch set. Doug A. | *** if_an.c.no-local-fixes Thu Nov 30 00:53:55 2000 | --- if_an.c Thu Nov 30 02:14:13 2000 | *************** | *** 470,475 **** | --- 470,476 ---- | { | struct ifnet *ifp; | int id; | + int i; | | /* TX DONE enable lan monitor DJA | an_enable_sniff(); | *************** | *** 487,498 **** | } else | ifp->if_opackets++; | | ! if (id != sc->an_rdata.an_tx_ring[sc->an_rdata.an_tx_cons]) | ! printf("an%d: id mismatch: expected %x, got %x\n", | ! sc->an_unit, | ! sc->an_rdata.an_tx_ring[sc->an_rdata.an_tx_cons], id); | | - sc->an_rdata.an_tx_ring[sc->an_rdata.an_tx_cons] = 0; | AN_INC(sc->an_rdata.an_tx_cons, AN_TX_RING_CNT); | | return; | --- 488,500 ---- | } else | ifp->if_opackets++; | | ! for (i = 0; i < AN_TX_RING_CNT; i++ ) { | ! if (id == sc->an_rdata.an_tx_ring[i]) { | ! sc->an_rdata.an_tx_ring[i] = 0; | ! break; | ! } | ! } | | AN_INC(sc->an_rdata.an_tx_cons, AN_TX_RING_CNT); | | return; | | | | To Unsubscribe: send mail to majordomo@FreeBSD.org | with "unsubscribe freebsd-mobile" in the body of the message | To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-mobile" in the body of the message