From owner-cvs-src@FreeBSD.ORG Wed Dec 13 02:02:36 2006 Return-Path: X-Original-To: cvs-src@freebsd.org Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1883416A40F; Wed, 13 Dec 2006 02:02:36 +0000 (UTC) (envelope-from scottl@samsco.org) Received: from pooker.samsco.org (pooker.samsco.org [168.103.85.57]) by mx1.FreeBSD.org (Postfix) with ESMTP id E3F4B43CA2; Wed, 13 Dec 2006 02:01:08 +0000 (GMT) (envelope-from scottl@samsco.org) Received: from pooker.samsco.home (pooker.samsco.home [192.168.254.1]) by pooker.samsco.org (8.13.4/8.13.4) with ESMTP id kBD22Rr3005225; Tue, 12 Dec 2006 19:02:33 -0700 (MST) (envelope-from scottl@samsco.org) Date: Tue, 12 Dec 2006 19:02:27 -0700 (MST) From: Scott Long To: Bruce Evans In-Reply-To: <20061213113025.O833@delplex.bde.org> Message-ID: <20061212185837.D20147@pooker.samsco.org> References: <200612120511.kBC5BCvi018697@repoman.freebsd.org> <20061212231257.M91892@maildrop.int.zabbadoz.net> <20061213113025.O833@delplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Spam-Status: No, score=-1.4 required=3.8 tests=ALL_TRUSTED autolearn=failed version=3.1.1 X-Spam-Checker-Version: SpamAssassin 3.1.1 (2006-03-10) on pooker.samsco.org Cc: cvs-src@freebsd.org, "Bjoern A. Zeeb" , Scott Long , src-committers@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/sys/dev/bge if_bge.c if_bgereg.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 13 Dec 2006 02:02:36 -0000 On Wed, 13 Dec 2006, Bruce Evans wrote: > On Tue, 12 Dec 2006, Bjoern A. Zeeb wrote: > >> On Tue, 12 Dec 2006, Scott Long wrote: >> >>> scottl 2006-12-12 05:11:12 UTC >>> >>> FreeBSD src repository >>> >>> Modified files: >>> sys/dev/bge if_bge.c if_bgereg.h >>> Log: >>> Fix support for certain 575x/578x chips. This consists of the following: >> ... >> this change makes my machine hang completely (even not able to break >> into kernel debugger) by the time the interfaces are setup (upon >> boot after hostnames gets set from rc scripts). >> >> it's a dual cpu amd64 with a tyan K8SE which has 2 bges onboard: >> Broadcom BCM5704 A3, ASIC rev. 0x2003 >> >> backing out this one makes it boot again without any problems. > > I use the following quick fix for a . > > %%% > Index: if_bge.c > =================================================================== > RCS file: /home/ncvs/src/sys/dev/bge/if_bge.c,v > retrieving revision 1.159 > diff -u -2 -r1.159 if_bge.c > --- if_bge.c 12 Dec 2006 05:11:12 -0000 1.159 > +++ if_bge.c 12 Dec 2006 17:17:21 -0000 > @@ -2542,5 +2631,4 @@ > __FUNCTION__); > CSR_WRITE_4(sc, BGE_FASTBOOT_PC, 0x0); > - } > > /* > @@ -2550,4 +2638,5 @@ > */ > bge_writemem_ind(sc, BGE_SOFTWARE_GENCOMM, BGE_MAGIC_NUMBER); > + } > > reset = BGE_MISCCFG_RESET_CORE_CLOCKS|(65<<1); > %%% > > This moves the bge_writemem() into a new new block of code that is > only executed for certain bge_asicrevs. (BTW, it is confusing that > bge_asicrev != ASIC rev. printed by dmesg.) The bge_writemem() is new > too and without the above it seems to be associated with nothing. The > above is in bge_reset(). The hang always occurred for initialization > from /etc/rc.d. bge_reset() somehow succeeded when called twice before > getting that far. > > The patch also some other details that I'm interested in and some style > bugs. I will report these in private mail. > interesting hack. Yes, I'm defintely interested in your details. Scott