From owner-freebsd-current@FreeBSD.ORG Thu Mar 27 08:58:17 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5D35B37B401 for ; Thu, 27 Mar 2003 08:58:17 -0800 (PST) Received: from web14802.mail.yahoo.com (web14802.mail.yahoo.com [216.136.224.218]) by mx1.FreeBSD.org (Postfix) with SMTP id A893843F3F for ; Thu, 27 Mar 2003 08:58:16 -0800 (PST) (envelope-from mccrobie2000@yahoo.com) Message-ID: <20030327165815.12195.qmail@web14802.mail.yahoo.com> Received: from [68.165.211.163] by web14802.mail.yahoo.com via HTTP; Thu, 27 Mar 2003 08:58:15 PST Date: Thu, 27 Mar 2003 08:58:15 -0800 (PST) From: Chuck McCrobie To: John Hay , Orion Hodson In-Reply-To: <20030327155324.GA85091@zibbi.icomtek.csir.co.za> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam-Status: No, hits=-7.2 required=5.0 tests=EMAIL_ATTRIBUTION,FROM_ENDS_IN_NUMS,IN_REP_TO, MAILTO_TO_SPAM_ADDR,RCVD_IN_OSIRUSOFT_COM autolearn=ham version=2.50 X-Spam-Level: X-Spam-Checker-Version: SpamAssassin 2.50 (1.173-2003-02-20-exp) cc: Scott Long cc: current@freebsd.org Subject: Re: AC97 sound problems with current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Mar 2003 16:58:18 -0000 --- John Hay wrote: > > > > | > There is a calibration step in the driver to > determine the clock rate of th > > | e > > | > AC97 link. What you are seeing is the > calibration step failing and setting > > | a > > | > bogus ac97 link rate. I took a cursory look a > couple of weeks back and it > > | > smelt like the timecounter initialization > point changed, but haven't gotten > > | > > | > around to looking closer and fixing the > driver. > > > > It's definitely nothing to do with the timecounter > - quick test on other h/w > > along similar lines. I don't access to an ich > board to test on - it's > > probably obvious, but I'm not seeing it just now > with visual inspection... > > It doesn't look like it is the timecounters. I just > added some printfs > and it looks like this: > > pcm0: measured ac97 link rate at 512000000 Hz > t1 1.098359, t2 1.098363 > ociv 0, nciv 1, bytes 8192 > tsc1 445813142, tsc2 445821922, diff 8780 > > The tsc values are just from rdtsc(), I added tsc1 = > rdtsc() just above > the first microtime() and tsc2 just after the last. > My machine is a 1.8G > P4 (ICH2), so the timecounter values seem correct. > > I have kernel around the middle of Feb that gets the > value right and one > from March 4 that gets it all wrong. > > John > -- > John Hay -- John.Hay@icomtek.csir.co.za / > jhay@FreeBSD.org > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" I also see this problem. On my machine, I dumped the t1 and t2 variables - there's only about 3 microsecond difference!. It seems the calibration loop is entered, but that CIV is immediately updated to the next index, thus getting out of the loop after about 3-4 microseconds. I thought something with the setup of the registers or maybe a blocksize issue, but I'm getting out of my element here. I can try various testing and debug code if needed. Chuck McCrobie mccrobie2000@yahoo.com __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com